/* * (c) Copyright IBM Corp. 2000, 2001. * All Rights Reserved. */ package net.sourceforge.phpdt.internal.corext.template.php; // import net.sourceforge.phpdt.core.ICompilationUnit; import net.sourceforge.phpdt.core.ICompilationUnit; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.templates.GlobalTemplateVariables; import org.eclipse.jface.text.templates.TemplateException; import org.eclipse.jface.text.templates.TemplateVariable; /** * A context type for javadoc. */ public class HTMLContextType extends CompilationUnitContextType { /** * Creates a java context type. */ public HTMLContextType() { super("html"); //$NON-NLS-1$ // global addResolver(new GlobalTemplateVariables.Cursor()); addResolver(new GlobalTemplateVariables.WordSelection()); addResolver(new GlobalTemplateVariables.LineSelection()); addResolver(new GlobalTemplateVariables.Dollar()); addResolver(new GlobalTemplateVariables.Date()); addResolver(new GlobalTemplateVariables.Year()); addResolver(new GlobalTemplateVariables.Time()); addResolver(new GlobalTemplateVariables.User()); addResolver(new File()); } /* * @see ContextType#createContext() */ public CompilationUnitContext createContext(IDocument document, int offset, int length, ICompilationUnit compilationUnit) { return new HTMLUnitContext(this, document, offset, length, compilationUnit); } /* * (non-Javadoc) * * @see net.sourceforge.phpdt.internal.corext.template.java.CompilationUnitContextType#createContext(org.eclipse.jface.text.IDocument, * int, int, net.sourceforge.phpdt.core.ICompilationUnit) */ // public CompilationUnitContext createContext(IDocument document, int // offset, int length, ICompilationUnit compilationUnit) { // return new JavaDocContext(this, document, offset, length, // compilationUnit); // } /* * (non-Javadoc) * * @see net.sourceforge.phpdt.internal.corext.template.ContextType#validateVariables(net.sourceforge.phpdt.internal.corext.template.TemplateVariable[]) */ protected void validateVariables(TemplateVariable[] variables) throws TemplateException { // check for multiple cursor variables for (int i = 0; i < variables.length; i++) { TemplateVariable var = variables[i]; if (var.getType().equals(GlobalTemplateVariables.Cursor.NAME)) { if (var.getOffsets().length > 1) { throw new TemplateException( JavaTemplateMessages .getString("ContextType.error.multiple.cursor.variables")); //$NON-NLS-1$ } } } } }