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 aPosition
which 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 boolean
canEvaluate(Template template)
Tests if the specified template can be evaluated in this context.TemplateBuffer
evaluate(Template template)
Evaluates the template in this context and returns a template buffer.int
getCompletionLength()
Returns the completion length within the string of the context.int
getCompletionOffset()
Returns the completion offset within the string of the context.IDocument
getDocument()
Returns the document.int
getEnd()
Returns the end offset of the keyword.String
getKey()
Returns the keyword which triggered template insertion.int
getStart()
Returns the beginning offset of the keyword.protected void
setCompletionLength(int newLength)
Sets the completion length.protected void
setCompletionOffset(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 suppliedPosition
will be queried to compute thegetStart
andgetEnd
methods, 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: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 classTemplateContext
- Parameters:
template
- theTemplate
to check- Returns:
true
iftemplate
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 classTemplateContext
- 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
-
-