Interface IQuickAssistAssistant

All Known Implementing Classes:
QuickAssistAssistant

public interface IQuickAssistAssistant
An IQuickAssistAssistant provides support for quick fixes and quick assists. The quick assist assistant is a ISourceViewer add-on. Its purpose is to propose, display, and insert quick assists and quick fixes available at the current source viewer's quick assist invocation context.

The quick assist assistant can be configured with a IQuickAssistProcessor which provides the possible quick assist and quick fix completions.

In order to provide backward compatibility for clients of IQuickAssistAssistant, extension interfaces are used to provide a means of evolution. The following extension interfaces exist:

  • IQuickAssistAssistantExtension since version 3.4 introducing the following function:
    • allows to get a handler for the given command identifier
    • allows to enable support for colored labels in the proposal popup

The interface can be implemented by clients. By default, clients use QuickAssistAssistant as the standard implementer of this interface.

Since:
3.2
See Also:
  • Method Details

    • install

      void install(ISourceViewer sourceViewer)
      Installs quick assist support on the given source viewer.

      Note: This quick assist assistant will only be able to query the invocation context if sourceViewer also implements ISourceViewerExtension3.

      Parameters:
      sourceViewer - the source viewer on which quick assist will work
    • setInformationControlCreator

      void setInformationControlCreator(IInformationControlCreator creator)
      Sets the information control creator for the additional information control.
      Parameters:
      creator - the information control creator for the additional information control
    • uninstall

      void uninstall()
      Uninstalls quick assist support from the source viewer it has previously be installed on.
    • showPossibleQuickAssists

      String showPossibleQuickAssists()
      Shows all possible quick fixes and quick assists at the viewer's cursor position.
      Returns:
      an optional error message if no proposals can be computed
    • setQuickAssistProcessor

      void setQuickAssistProcessor(IQuickAssistProcessor processor)
      Registers a given quick assist processor for a particular content type. If there is already a processor registered, the new processor is registered instead of the old one.
      Parameters:
      processor - the quick assist processor to register, or null to remove an existing one
    • getQuickAssistProcessor

      IQuickAssistProcessor getQuickAssistProcessor()
      Returns the quick assist processor to be used for the given content type.
      Returns:
      the quick assist processor or null if none exists
    • canFix

      boolean canFix(Annotation annotation)
      Tells whether this assistant has a fix for the given annotation.

      Note: This test must be fast and optimistic i.e. it is OK to return true even though there might be no quick fix.

      Parameters:
      annotation - the annotation
      Returns:
      true if the assistant has a fix for the given annotation
    • canAssist

      boolean canAssist(IQuickAssistInvocationContext invocationContext)
      Tells whether this assistant has assists for the given invocation context.
      Parameters:
      invocationContext - the invocation context
      Returns:
      true if the assistant has a fix for the given annotation
    • setProposalSelectorBackground

      void setProposalSelectorBackground(Color background)
      Sets the proposal selector's background color.

      Note: As of 3.4, you should only call this method if you want to override the JFacePreferences.CONTENT_ASSIST_BACKGROUND_COLOR.

      Parameters:
      background - the background color
    • setProposalSelectorForeground

      void setProposalSelectorForeground(Color foreground)
      Sets the proposal's foreground color.

      Note: As of 3.4, you should only call this method if you want to override the JFacePreferences.CONTENT_ASSIST_FOREGROUND_COLOR.

      Parameters:
      foreground - the foreground color
    • addCompletionListener

      void addCompletionListener(ICompletionListener listener)
      Adds a completion listener that will be informed before proposals are computed.
      Parameters:
      listener - the listener
    • removeCompletionListener

      void removeCompletionListener(ICompletionListener listener)
      Removes a completion listener.
      Parameters:
      listener - the listener to remove
    • setStatusLineVisible

      void setStatusLineVisible(boolean show)
      Enables displaying a status line below the proposal popup. The default is not to show the status line. The contents of the status line may be set via setStatusMessage(String).
      Parameters:
      show - true to show a message line, false to not show one.
    • setStatusMessage

      void setStatusMessage(String message)
      Sets the caption message displayed at the bottom of the completion proposal popup.
      Parameters:
      message - the message