Class DocumentTemplateContext

java.lang.Object
org.eclipse.jface.text.templates.TemplateContext
org.eclipse.jface.text.templates.DocumentTemplateContext
All Implemented Interfaces:
IAdaptable

public class DocumentTemplateContext extends TemplateContext
Instances of this class describe the context of a template as a region of a document. That region may be either specified by its offset and length, or by a Position which may or may not be registered with the document.

Clients may instantiate and extend this class.

Since:
3.0
  • Constructor Details

    • DocumentTemplateContext

      public DocumentTemplateContext(TemplateContextType type, IDocument document, int offset, int length)
      Creates a document template context.
      Parameters:
      type - the context type
      document - the document this context applies to
      offset - the offset of the document region
      length - the length of the document region
    • DocumentTemplateContext

      public DocumentTemplateContext(TemplateContextType type, IDocument document, Position position)
      Creates a document template context. The supplied Position will be queried to compute the getStart and getEnd methods, which will therefore answer updated position data if it is registered with the document.
      Parameters:
      type - the context type
      document - the document this context applies to
      position - the position describing the area of the document which forms the template context
      Since:
      3.1
  • Method Details

    • getDocument

      public IDocument getDocument()
      Returns the document.
      Returns:
      the document
    • getCompletionOffset

      public int getCompletionOffset()
      Returns the completion offset within the string of the context.
      Returns:
      the completion offset within the string of the context
    • setCompletionOffset

      protected void setCompletionOffset(int newOffset)
      Sets the completion offset.
      Parameters:
      newOffset - the new completion offset
    • getCompletionLength

      public int getCompletionLength()
      Returns the completion length within the string of the context.
      Returns:
      the completion length within the string of the context
    • setCompletionLength

      protected void setCompletionLength(int newLength)
      Sets the completion length.
      Parameters:
      newLength - the new completion length
    • getKey

      public String getKey()
      Returns the keyword which triggered template insertion.
      Returns:
      the keyword which triggered template insertion
    • getStart

      public int getStart()
      Returns the beginning offset of the keyword.
      Returns:
      the beginning offset of the keyword
    • getEnd

      public int getEnd()
      Returns the end offset of the keyword.
      Returns:
      the end offset of the keyword
    • canEvaluate

      public boolean canEvaluate(Template template)
      Description copied from class: TemplateContext
      Tests if the specified template can be evaluated in this context.

      Examples are templates defined for a different context (e.g. a javadoc template cannot be evaluated in Java context).

      Specified by:
      canEvaluate in class TemplateContext
      Parameters:
      template - the Template to check
      Returns:
      true if template can be evaluated in this context, false otherwise
    • evaluate

      public TemplateBuffer evaluate(Template template) throws BadLocationException, TemplateException
      Description copied from class: TemplateContext
      Evaluates the template in this context and returns a template buffer.

      Evaluation means translating the template into a TemplateBuffer, resolving the defined variables in this context and possibly formatting the resolved buffer.

      Specified by:
      evaluate in class TemplateContext
      Parameters:
      template - the template to evaluate
      Returns:
      returns the buffer with the evaluated template or null if the buffer could not be created
      Throws:
      BadLocationException - if evaluation fails due to concurrently changed documents etc.
      TemplateException - if the template specification is not valid