org.fife.ui.autocomplete
Interface Completion

All Superinterfaces:
java.lang.Comparable<Completion>
All Known Subinterfaces:
ParameterizedCompletion
All Known Implementing Classes:
AbstractCompletion, BasicCompletion, FunctionCompletion, MarkupTagCompletion, ShorthandCompletion, TemplateCompletion, VariableCompletion

public interface Completion
extends java.lang.Comparable<Completion>

Represents a completion choice. A CompletionProvider returns lists of objects implementing this interface. A Completion contains the following information:

Version:
1.0
Author:
Robert Futrell
See Also:
AbstractCompletion

Method Summary
 int compareTo(Completion other)
          Compares this completion to another one lexicographically, ignoring case.
 java.lang.String getAlreadyEntered(javax.swing.text.JTextComponent comp)
          Returns the portion of this completion that has already been entered into the text component.
 javax.swing.Icon getIcon()
          Returns the icon to use for this completion.
 java.lang.String getInputText()
          Returns the text that the user has to (start) typing for this completion to be offered.
 CompletionProvider getProvider()
          Returns the provider that returned this completion.
 int getRelevance()
          Returns the "relevance" of this completion.
 java.lang.String getReplacementText()
          Returns the text to insert as the result of this auto-completion.
 java.lang.String getSummary()
          Returns the description of this auto-complete choice.
 java.lang.String getToolTipText()
          Returns the tool tip text to display for mouse hovers over this completion.
 

Method Detail

compareTo

int compareTo(Completion other)
Compares this completion to another one lexicographically, ignoring case.

Specified by:
compareTo in interface java.lang.Comparable<Completion>
Parameters:
other - Another completion instance.
Returns:
How this completion compares to the other one.

getAlreadyEntered

java.lang.String getAlreadyEntered(javax.swing.text.JTextComponent comp)
Returns the portion of this completion that has already been entered into the text component. The match is case-insensitive.

This is a convenience method for: getProvider().getAlreadyEnteredText(comp).

Parameters:
comp - The text component.
Returns:
The already-entered portion of this completion.

getIcon

javax.swing.Icon getIcon()
Returns the icon to use for this completion.

Returns:
The icon, or null for none.

getInputText

java.lang.String getInputText()
Returns the text that the user has to (start) typing for this completion to be offered. Note that this will usually be the same value as getReplacementText(), but not always (a completion could be a way to implement shorthand, for example, "sysout" mapping to "System.out.println(").

Returns:
The text the user has to (start) typing for this completion to be offered.
See Also:
getReplacementText()

getProvider

CompletionProvider getProvider()
Returns the provider that returned this completion.

Returns:
The provider.

getRelevance

int getRelevance()
Returns the "relevance" of this completion. This is used when sorting completions by their relevance. It is an abstract concept that may mean different things to different languages, and may depend on the context of the completion.

By default, all completions have a relevance of 0. The higher the value returned by this method, the higher up in the list this completion will be; the lower the value returned, the lower it will be. Completions with equal relevance values will be sorted alphabetically.

Returns:
The relevance of this completion.

getReplacementText

java.lang.String getReplacementText()
Returns the text to insert as the result of this auto-completion. This is the "complete" text, including any text that replaces what the user has already typed.

Returns:
The replacement text.
See Also:
getInputText()

getSummary

java.lang.String getSummary()
Returns the description of this auto-complete choice. This can be used in a popup "description window."

Returns:
This item's description. This should be HTML. It may be null if there is no description for this completion.

getToolTipText

java.lang.String getToolTipText()
Returns the tool tip text to display for mouse hovers over this completion.

Note that for this functionality to be enabled, a JTextComponent must be registered with the ToolTipManager, and the text component must know to search for this value. In the case of an RSyntaxTextArea, this can be done with a org.fife.ui.rtextarea.ToolTipSupplier that calls into CompletionProvider.getCompletionsAt(JTextComponent, java.awt.Point).

Returns:
The tool tip text for this completion, or null if none.