Interface ITextViewerExtension

All Known Implementing Classes:
ProjectionViewer, SourceViewer, TextConsoleViewer, TextViewer

public interface ITextViewerExtension
Extension interface for ITextViewer.

This extension interface replaces the event consumer mechanism ( ITextViewer.setEventConsumer(IEventConsumer)) with a set of methods that allow to manage a sequence of VerifyKeyListenerobjects. It also adds

  • access to the control of this viewer
  • marked region support as in emacs
  • control of the viewer's redraw behavior by introducing setRedraw(boolean)
  • access to the viewer's rewrite target.
A rewrite target (IRewriteTarget) represents an facade offering the necessary methods to manipulate a document that is the input document of a text viewer.
Since:
2.0
  • Method Details

    • prependVerifyKeyListener

      void prependVerifyKeyListener(VerifyKeyListener listener)
      Inserts the verify key listener at the beginning of the viewer's list of verify key listeners. If the listener is already registered with the viewer this call moves the listener to the beginning of the list.
      Parameters:
      listener - the listener to be inserted
    • appendVerifyKeyListener

      void appendVerifyKeyListener(VerifyKeyListener listener)
      Appends a verify key listener to the viewer's list of verify key listeners. If the listener is already registered with the viewer this call moves the listener to the end of the list.
      Parameters:
      listener - the listener to be added
    • removeVerifyKeyListener

      void removeVerifyKeyListener(VerifyKeyListener listener)
      Removes the verify key listener from the viewer's list of verify key listeners. If the listener is not registered with this viewer, this call has no effect.
      Parameters:
      listener - the listener to be removed
    • getControl

      Control getControl()
      Returns the control of this viewer.
      Returns:
      the control of this viewer
    • setMark

      void setMark(int offset)
      Sets a mark at the given offset or clears the mark if the specified offset is -1. If a mark is set and the selection is empty, cut and copy actions performed on this text viewer work on the region described by the positions of the mark and the cursor.
      Parameters:
      offset - the offset of the mark
    • getMark

      int getMark()
      Returns the position of the mark, -1 if the mark is not set.
      Returns:
      the position of the mark or -1 if no mark is set
    • setRedraw

      void setRedraw(boolean redraw)
      Enables/disables the redrawing of this text viewer. This temporarily disconnects the viewer from its underlying StyledTextwidget. While being disconnected only the viewer's selection may be changed using setSelectedRange. Any direct manipulation of the widget as well as calls to methods that change the viewer's presentation state (such as enabling the segmented view) are not allowed. When redrawing is disabled the viewer does not send out any selection or view port change notification. When redrawing is enabled again, a selection change notification is sent out for the selected range and this range is revealed causing a view port changed notification.
      Parameters:
      redraw - true to enable redrawing, false otherwise
    • getRewriteTarget

      IRewriteTarget getRewriteTarget()
      Returns the viewer's rewrite target.
      Returns:
      the viewer's rewrite target