Package org.eclipse.jface.text.templates
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 aPositionwhich may or may not be registered with the document.Clients may instantiate and extend this class.
- Since:
- 3.0
-
-
Constructor Summary
Constructors Constructor Description DocumentTemplateContext(TemplateContextType type, IDocument document, int offset, int length)Creates a document template context.DocumentTemplateContext(TemplateContextType type, IDocument document, Position position)Creates a document template context.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanEvaluate(Template template)Tests if the specified template can be evaluated in this context.TemplateBufferevaluate(Template template)Evaluates the template in this context and returns a template buffer.intgetCompletionLength()Returns the completion length within the string of the context.intgetCompletionOffset()Returns the completion offset within the string of the context.IDocumentgetDocument()Returns the document.intgetEnd()Returns the end offset of the keyword.StringgetKey()Returns the keyword which triggered template insertion.intgetStart()Returns the beginning offset of the keyword.protected voidsetCompletionLength(int newLength)Sets the completion length.protected voidsetCompletionOffset(int newOffset)Sets the completion offset.-
Methods inherited from class org.eclipse.jface.text.templates.TemplateContext
getAdapter, getContextType, getVariable, isReadOnly, setReadOnly, setVariable
-
-
-
-
Constructor Detail
-
DocumentTemplateContext
public DocumentTemplateContext(TemplateContextType type, IDocument document, int offset, int length)
Creates a document template context.- Parameters:
type- the context typedocument- the document this context applies tooffset- the offset of the document regionlength- the length of the document region
-
DocumentTemplateContext
public DocumentTemplateContext(TemplateContextType type, IDocument document, Position position)
Creates a document template context. The suppliedPositionwill be queried to compute thegetStartandgetEndmethods, which will therefore answer updated position data if it is registered with the document.- Parameters:
type- the context typedocument- the document this context applies toposition- the position describing the area of the document which forms the template context- Since:
- 3.1
-
-
Method Detail
-
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:TemplateContextTests 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:
canEvaluatein classTemplateContext- Parameters:
template- theTemplateto check- Returns:
trueiftemplatecan be evaluated in this context,falseotherwise
-
evaluate
public TemplateBuffer evaluate(Template template) throws BadLocationException, TemplateException
Description copied from class:TemplateContextEvaluates 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:
evaluatein classTemplateContext- Parameters:
template- the template to evaluate- Returns:
- returns the buffer with the evaluated template or
nullif 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
-
-