org.eclipse.jface.text

## Interface ITextViewerExtension4

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

    public interface ITextViewerExtension4

Extension interface for `ITextViewer`. Introduces the concept of text presentation listeners and improves focus handling among widget token keepers.

A `ITextPresentationListener`is a listener that is informed by the viewer that a text presentation is about to be applied. During this callback the listener is allowed to modify the presentation. Text presentation listeners are thus a mean to participate in the process of text presentation creation.

Since:
  3.0

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addTextPresentationListener(ITextPresentationListener listener)` Adds the given text presentation listener to this text viewer.
`boolean` `moveFocusToWidgetToken()` Instructs the receiver to request the `IWidgetTokenKeeper` currently holding the widget token to take the keyboard focus.
`void` `removeTextPresentationListener(ITextPresentationListener listener)` Removes the given text presentation listener from this text viewer.

### Method Detail

#### moveFocusToWidgetToken

    boolean moveFocusToWidgetToken()

Instructs the receiver to request the `IWidgetTokenKeeper` currently holding the widget token to take the keyboard focus.

Returns:
  `true` if there was any `IWidgetTokenKeeper` that was asked to take the focus, `false` otherwise

#### addTextPresentationListener

    void addTextPresentationListener(ITextPresentationListener listener)

Adds the given text presentation listener to this text viewer. This call has no effect if the listener is already registered with this text viewer.

Parameters:
  `listener` - the text presentation listener

#### removeTextPresentationListener

    void removeTextPresentationListener(ITextPresentationListener listener)

Removes the given text presentation listener from this text viewer. This call has no effect if the listener is not registered with this text viewer.

Parameters:
  `listener` - the text presentation listener