Package org.eclipse.jface.text.templates
Class TemplateProposal
- java.lang.Object
-
- org.eclipse.jface.text.templates.TemplateProposal
-
- All Implemented Interfaces:
ICompletionProposal,ICompletionProposalExtension,ICompletionProposalExtension2,ICompletionProposalExtension3
public class TemplateProposal extends Object implements ICompletionProposal, ICompletionProposalExtension, ICompletionProposalExtension2, ICompletionProposalExtension3
A template completion proposal.Clients may subclass.
- Since:
- 3.0
-
-
Constructor Summary
Constructors Constructor Description TemplateProposal(Template template, TemplateContext context, IRegion region, Image image)Creates a template proposal with a template and its context.TemplateProposal(Template template, TemplateContext context, IRegion region, Image image, int relevance)Creates a template proposal with a template and its context.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidapply(IDocument document)Deprecated.This method is no longer called by the framework and clients should overwriteapply(ITextViewer, char, int, int)insteadvoidapply(IDocument document, char trigger, int offset)Deprecated.This method is no longer called by the framework and clients should overwriteapply(ITextViewer, char, int, int)insteadvoidapply(ITextViewer viewer, char trigger, int stateMask, int offset)Inserts the template offered by this proposal into the viewer's document and sets up aLinkedModeUIon the viewer to edit any of the template's unresolved variables.StringgetAdditionalProposalInfo()Returns optional additional information about the proposal.protected TemplateContextgetContext()Returns the context in which the template was requested.IContextInformationgetContextInformation()Returns optional context information associated with this proposal.intgetContextInformationPosition()Returns the position to which the computed context information refers to or-1if no context information can be provided by this completion proposal.StringgetDisplayString()Returns the string to be displayed in the list of completion proposals.ImagegetImage()Returns the image to be displayed in the list of completion proposals.IInformationControlCreatorgetInformationControlCreator()Returns the information control creator of this completion proposal.intgetPrefixCompletionStart(IDocument document, int completionOffset)Returns the document offset at which the receiver would insert its proposal.CharSequencegetPrefixCompletionText(IDocument document, int completionOffset)Returns the string that would be inserted at the position returned fromICompletionProposalExtension3.getPrefixCompletionStart(IDocument, int)if this proposal was applied.intgetRelevance()Returns the relevance.protected intgetReplaceEndOffset()Returns the end offset of the range in the document that will be replaced by applying this template.protected intgetReplaceOffset()Returns the offset of the range in the document that will be replaced by applying this template.PointgetSelection(IDocument document)Returns the new selection after the proposal has been applied to the given document in absolute document coordinates.protected TemplategetTemplate()Returns the template of this proposal.char[]getTriggerCharacters()Returns the characters which trigger the application of this completion proposal.booleanisValidFor(IDocument document, int offset)Returns whether this completion proposal is valid for the given position in the given document.voidselected(ITextViewer viewer, boolean smartToggle)Called when the proposal is selected.voidsetInformationControlCreator(IInformationControlCreator informationControlCreator)Sets the information control creator for this completion proposal.voidunselected(ITextViewer viewer)Called when the proposal is unselected.booleanvalidate(IDocument document, int offset, DocumentEvent event)Requests the proposal to be validated with respect to the document event.
-
-
-
Constructor Detail
-
TemplateProposal
public TemplateProposal(Template template, TemplateContext context, IRegion region, Image image)
Creates a template proposal with a template and its context.- Parameters:
template- the templatecontext- the context in which the template was requested.region- the region this proposal is applied toimage- the icon of the proposal.
-
TemplateProposal
public TemplateProposal(Template template, TemplateContext context, IRegion region, Image image, int relevance)
Creates a template proposal with a template and its context.- Parameters:
template- the templatecontext- the context in which the template was requested.image- the icon of the proposal.region- the region this proposal is applied torelevance- the relevance of the proposal
-
-
Method Detail
-
setInformationControlCreator
public final void setInformationControlCreator(IInformationControlCreator informationControlCreator)
Sets the information control creator for this completion proposal.- Parameters:
informationControlCreator- the information control creator- Since:
- 3.1
-
getTemplate
protected final Template getTemplate()
Returns the template of this proposal.- Returns:
- the template of this proposal
- Since:
- 3.1
-
getContext
protected final TemplateContext getContext()
Returns the context in which the template was requested.- Returns:
- the context in which the template was requested
- Since:
- 3.1
-
apply
@Deprecated public final void apply(IDocument document)
Deprecated.This method is no longer called by the framework and clients should overwriteapply(ITextViewer, char, int, int)insteadInserts the proposed completion into the given document.- Specified by:
applyin interfaceICompletionProposal- Parameters:
document- the document into which to insert the proposed completion
-
apply
public void apply(ITextViewer viewer, char trigger, int stateMask, int offset)
Inserts the template offered by this proposal into the viewer's document and sets up aLinkedModeUIon the viewer to edit any of the template's unresolved variables.- Specified by:
applyin interfaceICompletionProposalExtension2- Parameters:
viewer- the text viewer into which to insert the proposed completiontrigger- the trigger to apply the completionstateMask- the state mask of the modifiersoffset- the offset at which the trigger has been activated
-
getReplaceOffset
protected final int getReplaceOffset()
Returns the offset of the range in the document that will be replaced by applying this template.- Returns:
- the offset of the range in the document that will be replaced by applying this template
- Since:
- 3.1
-
getReplaceEndOffset
protected final int getReplaceEndOffset()
Returns the end offset of the range in the document that will be replaced by applying this template.- Returns:
- the end offset of the range in the document that will be replaced by applying this template
- Since:
- 3.1
-
getSelection
public Point getSelection(IDocument document)
Description copied from interface:ICompletionProposalReturns the new selection after the proposal has been applied to the given document in absolute document coordinates. If it returnsnull, no new selection is set. A document change can trigger other document changes, which have to be taken into account when calculating the new selection. Typically, this would be done by installing a document listener or by using a document position duringICompletionProposal.apply(IDocument).- Specified by:
getSelectionin interfaceICompletionProposal- Parameters:
document- the document into which the proposed completion has been inserted- Returns:
- the new selection in absolute document coordinates
-
getAdditionalProposalInfo
public String getAdditionalProposalInfo()
Description copied from interface:ICompletionProposalReturns optional additional information about the proposal. The additional information will be presented to assist the user in deciding if the selected proposal is the desired choice.If
ICompletionProposalExtension5is implemented, this method should not be called any longer. This method may be deprecated in a future release.- Specified by:
getAdditionalProposalInfoin interfaceICompletionProposal- Returns:
- the additional information or
null
-
getDisplayString
public String getDisplayString()
Description copied from interface:ICompletionProposalReturns the string to be displayed in the list of completion proposals.- Specified by:
getDisplayStringin interfaceICompletionProposal- Returns:
- the string to be displayed
- See Also:
ICompletionProposalExtension6.getStyledDisplayString(),ICompletionProposalExtension7.getStyledDisplayString(IDocument, int, BoldStylerProvider)
-
getImage
public Image getImage()
Description copied from interface:ICompletionProposalReturns the image to be displayed in the list of completion proposals. The image would typically be shown to the left of the display string.- Specified by:
getImagein interfaceICompletionProposal- Returns:
- the image to be shown or
nullif no image is desired
-
getContextInformation
public IContextInformation getContextInformation()
Description copied from interface:ICompletionProposalReturns optional context information associated with this proposal. The context information will automatically be shown if the proposal has been applied.- Specified by:
getContextInformationin interfaceICompletionProposal- Returns:
- the context information for this proposal or
null
-
getRelevance
public int getRelevance()
Returns the relevance.- Returns:
- the relevance
-
getInformationControlCreator
public IInformationControlCreator getInformationControlCreator()
Description copied from interface:ICompletionProposalExtension3Returns the information control creator of this completion proposal.- Specified by:
getInformationControlCreatorin interfaceICompletionProposalExtension3- Returns:
- the information control creator, or
nullif no custom control creator is available
-
selected
public void selected(ITextViewer viewer, boolean smartToggle)
Description copied from interface:ICompletionProposalExtension2Called when the proposal is selected.- Specified by:
selectedin interfaceICompletionProposalExtension2- Parameters:
viewer- the text viewer.smartToggle- the smart toggle key was pressed
-
unselected
public void unselected(ITextViewer viewer)
Description copied from interface:ICompletionProposalExtension2Called when the proposal is unselected.- Specified by:
unselectedin interfaceICompletionProposalExtension2- Parameters:
viewer- the text viewer.
-
validate
public boolean validate(IDocument document, int offset, DocumentEvent event)
Description copied from interface:ICompletionProposalExtension2Requests the proposal to be validated with respect to the document event. If the proposal cannot be validated, the methods returnsfalse. If the document event wasnull, only the caret offset was changed, but not the document. This method replacesICompletionProposalExtension.isValidFor(IDocument, int)- Specified by:
validatein interfaceICompletionProposalExtension2- Parameters:
document- the documentoffset- the caret offsetevent- the document event, may benull- Returns:
- boolean
-
getPrefixCompletionText
public CharSequence getPrefixCompletionText(IDocument document, int completionOffset)
Description copied from interface:ICompletionProposalExtension3Returns the string that would be inserted at the position returned fromICompletionProposalExtension3.getPrefixCompletionStart(IDocument, int)if this proposal was applied. If the replacement string cannot be determined,nullmay be returned.- Specified by:
getPrefixCompletionTextin interfaceICompletionProposalExtension3- Parameters:
document- the document that the receiver applies tocompletionOffset- the offset intodocumentwhere the completion takes place- Returns:
- the replacement string or
nullif it cannot be determined
-
getPrefixCompletionStart
public int getPrefixCompletionStart(IDocument document, int completionOffset)
Description copied from interface:ICompletionProposalExtension3Returns the document offset at which the receiver would insert its proposal.- Specified by:
getPrefixCompletionStartin interfaceICompletionProposalExtension3- Parameters:
document- the document that the receiver applies tocompletionOffset- the offset intodocumentwhere the completion takes place- Returns:
- the offset at which the proposal would insert its proposal
-
apply
@Deprecated public void apply(IDocument document, char trigger, int offset)
Deprecated.This method is no longer called by the framework and clients should overwriteapply(ITextViewer, char, int, int)insteadApplies the proposed completion to the given document. The insertion has been triggered by entering the given character at the given offset. This method assumes thatICompletionProposalExtension.isValidFor(IDocument, int)returnstrueif called foroffset.- Specified by:
applyin interfaceICompletionProposalExtension- Parameters:
document- the document into which to insert the proposed completiontrigger- the trigger to apply the completionoffset- the offset at which the trigger has been activated
-
isValidFor
public boolean isValidFor(IDocument document, int offset)
Description copied from interface:ICompletionProposalExtensionReturns whether this completion proposal is valid for the given position in the given document.- Specified by:
isValidForin interfaceICompletionProposalExtension- Parameters:
document- the document for which the proposal is testedoffset- the offset for which the proposal is tested- Returns:
trueiff valid
-
getTriggerCharacters
public char[] getTriggerCharacters()
Description copied from interface:ICompletionProposalExtensionReturns the characters which trigger the application of this completion proposal.- Specified by:
getTriggerCharactersin interfaceICompletionProposalExtension- Returns:
- the completion characters for this completion proposal or
nullif no completion other than the new line character is possible
-
getContextInformationPosition
public int getContextInformationPosition()
Description copied from interface:ICompletionProposalExtensionReturns the position to which the computed context information refers to or-1if no context information can be provided by this completion proposal.- Specified by:
getContextInformationPositionin interfaceICompletionProposalExtension- Returns:
- the position to which the context information refers to or
-1for no information
-
-