org.eclipse.ui.texteditor
Class SourceViewerDecorationSupport
java.lang.Object
org.eclipse.ui.texteditor.SourceViewerDecorationSupport
-
public class SourceViewerDecorationSupport
- extends
Object
Support class used by text editors to draw and update decorations on the
source viewer and its rulers. An instance of this class is independent of a
certain editor and must be configured with the needed preference keys and
helper objects before it can be used.
Once configured, an instance may be installed (see
install
) on a preference store, from then
on monitoring the configured preference settings and changing the respective
decorations. Calling
uninstall
will unregister the
listeners with the preferences store and must be called before changing the
preference store by another call to install
.
dispose
will uninstall the support and remove any
decorations from the viewer. It is okay to reuse a
SourceViewerDecorationSupport
instance after disposing it.
SourceViewerDecorationSupport
can draw the following
decorations:
- matching character highlighting,
- current line highlighting,
- print margin, and
- annotations.
Annotations are managed for the overview ruler and also drawn onto the text
widget by an
AnnotationPainter
instance.
Subclasses may add decorations but should adhere to the lifecyle described
above.
-
Since:
- 2.1
-
See Also:
-
AnnotationPainter
Methods inherited from class java.lang.
Object
|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
|
SourceViewerDecorationSupport
public SourceViewerDecorationSupport(
ISourceViewer sourceViewer,
IOverviewRuler overviewRuler,
IAnnotationAccess annotationAccess,
ISharedTextColors sharedTextColors)
- Creates a new decoration support for the given viewer.
-
Parameters:
-
sourceViewer
- the source viewer -
overviewRuler
- the viewer's overview ruler -
annotationAccess
- the annotation access -
sharedTextColors
- the shared text color manager
install
public void install(
IPreferenceStore store)
- Installs this decoration support on the given preference store. It assumes
that this support has completely been configured.
-
-
Parameters:
-
store
- the preference store
updateOverviewDecorations
public void updateOverviewDecorations()
- Updates the annotation overview for all configured annotation types.
-
uninstall
public void uninstall()
- Uninstalls this support from the preference store it has previously been
installed on. If there is no such preference store, this call is without
effect.
-
dispose
public void dispose()
- Disposes this decoration support. Internally calls
uninstall
.
-
setCharacterPairMatcher
public void setCharacterPairMatcher(
ICharacterPairMatcher pairMatcher)
- Sets the character pair matcher for the matching character painter.
-
-
Parameters:
-
pairMatcher
- the character pair matcher
setAnnotationPainterPreferenceKeys
public void setAnnotationPainterPreferenceKeys(
Object type,
String colorKey,
String editorKey,
String overviewRulerKey,
int layer)
- Sets the preference keys for the annotation painter.
-
-
Parameters:
-
type
- the annotation type -
colorKey
- the preference key for the color -
editorKey
- the preference key for the presentation in the text area -
overviewRulerKey
- the preference key for the presentation in the overview ruler -
layer
- the layer
setAnnotationPreference
public void setAnnotationPreference(
AnnotationPreference info)
- Sets the preference info for the annotation painter.
-
-
Parameters:
-
info
- the preference info to be set
setCursorLinePainterPreferenceKeys
public void setCursorLinePainterPreferenceKeys(
String enableKey,
String colorKey)
- Sets the preference keys for the cursor line painter.
-
-
Parameters:
-
enableKey
- the preference key for the cursor line painter -
colorKey
- the preference key for the color used by the cursor line
painter
setMarginPainterPreferenceKeys
public void setMarginPainterPreferenceKeys(
String enableKey,
String colorKey,
String columnKey)
- Sets the preference keys for the margin painter.
-
-
Parameters:
-
enableKey
- the preference key for the margin painter -
colorKey
- the preference key for the color used by the margin
painter -
columnKey
- the preference key for the margin column
setMatchingCharacterPainterPreferenceKeys
public void setMatchingCharacterPainterPreferenceKeys(
String enableKey,
String colorKey)
- Sets the preference keys for the matching character painter.
-
-
Parameters:
-
enableKey
- the preference key for the matching character painter -
colorKey
- the preference key for the color used by the matching
character painter
setSymbolicFontName
public void setSymbolicFontName(
String symbolicFontName)
- Sets the symbolic font name that is used for computing the margin width.
-
-
Parameters:
-
symbolicFontName
- the symbolic font name
handlePreferenceStoreChanged
protected void handlePreferenceStoreChanged(
PropertyChangeEvent event)
-
createAnnotationPainter
protected
AnnotationPainter createAnnotationPainter()
- Creates and configures the annotation painter and configures.
-
-
Returns:
- an annotation painter
-
Since:
- 3.0
hideAnnotationOverview
public void hideAnnotationOverview()
- Hides the annotation overview.
-
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.