Package org.eclipse.jface.text.source
Class AnnotationRulerColumn
java.lang.Object
org.eclipse.jface.text.source.AnnotationRulerColumn
- All Implemented Interfaces:
IVerticalRulerColumn
,IVerticalRulerInfo
,IVerticalRulerInfoExtension
- Direct Known Subclasses:
AnnotationColumn
public class AnnotationRulerColumn
extends Object
implements IVerticalRulerColumn, IVerticalRulerInfo, IVerticalRulerInfoExtension
A vertical ruler column showing graphical representations of annotations.
Will become final.
Do not subclass.
- Since:
- 2.0
-
Constructor Summary
ConstructorDescriptionAnnotationRulerColumn
(int width) Constructs this column with the given width.AnnotationRulerColumn
(int width, IAnnotationAccess annotationAccess) Constructs this column with the given arguments.AnnotationRulerColumn
(IAnnotationModel model, int width) Constructs this column with the given arguments.AnnotationRulerColumn
(IAnnotationModel model, int width, IAnnotationAccess annotationAccess) Constructs this column with the given arguments. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addAnnotationType
(Object annotationType) Adds the given annotation type to this annotation ruler column.void
Registers a vertical ruler listener to be informed if an annotation gets selected on the vertical ruler.createControl
(CompositeRuler parentRuler, Composite parentControl) Creates the column's SWT control.protected void
Draws the vertical ruler w/o drawing the Canvas background.protected void
Draws the vertical ruler w/o drawing the Canvas background.protected ITextViewer
Returns the cached text viewer.Returns the column's SWT control.getHover()
Returns the hover for this vertical ruler (column).protected int
Returns the document offset of the upper left corner of the source viewer's view port, possibly including partially visible lines.int
Returns the line number of the last mouse button activity.getModel()
Returns the model currently used by the receiver.int
getWidth()
Returns the width of this column's control.protected boolean
hasAnnotation
(int lineNumber) Tells whether the given line contains an annotation.protected boolean
Tells whether this ruler column propagates mouse listener events to its parent.protected void
mouseClicked
(int rulerLine) Hook method for a mouse click event on the given ruler line.protected void
mouseDoubleClicked
(int rulerLine) Hook method for a mouse double click event on the given ruler line.protected void
mouseDown
(int rulerLine) Hook method for a mouse down event on the given ruler line.void
redraw()
Redraws this column.void
removeAnnotationType
(Object annotationType) Removes the given annotation type from this annotation ruler column.void
Removes a previously registered listener.void
Sets the font of this ruler column.void
setHover
(IAnnotationHover hover) void
setModel
(IAnnotationModel model) Associates an annotation model with this ruler column.int
toDocumentLineNumber
(int y_coordinate) Translates a y-coordinate of the ruler's SWT control into the according line number of the document of the connected text viewer.
-
Constructor Details
-
AnnotationRulerColumn
Constructs this column with the given arguments.- Parameters:
model
- the annotation model to get the annotations fromwidth
- the width of the vertical rulerannotationAccess
- the annotation access- Since:
- 3.0
-
AnnotationRulerColumn
Constructs this column with the given arguments.- Parameters:
width
- the width of the vertical rulerannotationAccess
- the annotation access- Since:
- 3.0
-
AnnotationRulerColumn
Constructs this column with the given arguments.- Parameters:
model
- the annotation model to get the annotations fromwidth
- the width of the vertical ruler
-
AnnotationRulerColumn
public AnnotationRulerColumn(int width) Constructs this column with the given width.- Parameters:
width
- the width of the vertical ruler
-
-
Method Details
-
getControl
Description copied from interface:IVerticalRulerColumn
Returns the column's SWT control.- Specified by:
getControl
in interfaceIVerticalRulerColumn
- Specified by:
getControl
in interfaceIVerticalRulerInfo
- Returns:
- the column's SWT control
-
getWidth
public int getWidth()Description copied from interface:IVerticalRulerColumn
Returns the width of this column's control.- Specified by:
getWidth
in interfaceIVerticalRulerColumn
- Specified by:
getWidth
in interfaceIVerticalRulerInfo
- Returns:
- the width of this column's control
-
createControl
Description copied from interface:IVerticalRulerColumn
Creates the column's SWT control.- Specified by:
createControl
in interfaceIVerticalRulerColumn
- Parameters:
parentRuler
- the parent ruler of this columnparentControl
- the control of the parent ruler- Returns:
- the column's SWT control
-
isPropagatingMouseListener
protected boolean isPropagatingMouseListener()Tells whether this ruler column propagates mouse listener events to its parent.- Returns:
true
if propagating to parent- Since:
- 3.0
-
mouseDown
protected void mouseDown(int rulerLine) Hook method for a mouse down event on the given ruler line.- Parameters:
rulerLine
- the ruler line- Since:
- 3.5
-
mouseDoubleClicked
protected void mouseDoubleClicked(int rulerLine) Hook method for a mouse double click event on the given ruler line.- Parameters:
rulerLine
- the ruler line
-
mouseClicked
protected void mouseClicked(int rulerLine) Hook method for a mouse click event on the given ruler line.Note: The event is sent on mouse up.
- Parameters:
rulerLine
- the ruler line- Since:
- 3.0
-
hasAnnotation
protected boolean hasAnnotation(int lineNumber) Tells whether the given line contains an annotation.- Parameters:
lineNumber
- the line number- Returns:
true
if the given line contains an annotation
-
getInclusiveTopIndexStartOffset
protected int getInclusiveTopIndexStartOffset()Returns the document offset of the upper left corner of the source viewer's view port, possibly including partially visible lines.- Returns:
- document offset of the upper left corner including partially visible lines
-
doPaint
Draws the vertical ruler w/o drawing the Canvas background.- Parameters:
gc
- the GC to draw into
-
doPaint1
Draws the vertical ruler w/o drawing the Canvas background. Implementation based onITextViewerExtension5
. Will replacedoPaint(GC)
.- Parameters:
gc
- the GC to draw into
-
redraw
public void redraw()Description copied from interface:IVerticalRulerColumn
Redraws this column.- Specified by:
redraw
in interfaceIVerticalRulerColumn
-
setModel
Description copied from interface:IVerticalRulerColumn
Associates an annotation model with this ruler column. A valuenull
is acceptable and clears the ruler.- Specified by:
setModel
in interfaceIVerticalRulerColumn
- Parameters:
model
- the new annotation model, may benull
-
setFont
Description copied from interface:IVerticalRulerColumn
Sets the font of this ruler column.- Specified by:
setFont
in interfaceIVerticalRulerColumn
- Parameters:
font
- the new font of the ruler column
-
getCachedTextViewer
Returns the cached text viewer.- Returns:
- the cached text viewer
-
getModel
Description copied from interface:IVerticalRulerInfoExtension
Returns the model currently used by the receiver.- Specified by:
getModel
in interfaceIVerticalRulerInfoExtension
- Returns:
- the model of the receiver, or
null
if no model is installed.
-
addAnnotationType
Adds the given annotation type to this annotation ruler column. Starting with this call, annotations of the given type are shown in this annotation ruler column.- Parameters:
annotationType
- the annotation type- Since:
- 3.0
-
getLineOfLastMouseButtonActivity
public int getLineOfLastMouseButtonActivity()Description copied from interface:IVerticalRulerInfo
Returns the line number of the last mouse button activity. Based on the input document of the connected text viewer.- Specified by:
getLineOfLastMouseButtonActivity
in interfaceIVerticalRulerInfo
- Returns:
- the line number of the last mouse button activity or
-1
if the last mouse activity does not correspond to a valid document line
-
toDocumentLineNumber
public int toDocumentLineNumber(int y_coordinate) Description copied from interface:IVerticalRulerInfo
Translates a y-coordinate of the ruler's SWT control into the according line number of the document of the connected text viewer.- Specified by:
toDocumentLineNumber
in interfaceIVerticalRulerInfo
- Parameters:
y_coordinate
- a y-coordinate of the ruler's SWT control- Returns:
- the line number of that coordinate or
-1
if that coordinate does not correspond to a valid document line
-
removeAnnotationType
Removes the given annotation type from this annotation ruler column. Annotations of the given type are no longer shown in this annotation ruler column.- Parameters:
annotationType
- the annotation type- Since:
- 3.0
-
getHover
Description copied from interface:IVerticalRulerInfoExtension
Returns the hover for this vertical ruler (column).- Specified by:
getHover
in interfaceIVerticalRulerInfoExtension
- Returns:
- the hover for this column
-
setHover
- Parameters:
hover
- The hover to set.- Since:
- 3.0
-
addVerticalRulerListener
Description copied from interface:IVerticalRulerInfoExtension
Registers a vertical ruler listener to be informed if an annotation gets selected on the vertical ruler.- Specified by:
addVerticalRulerListener
in interfaceIVerticalRulerInfoExtension
- Parameters:
listener
- the listener to be informed
-
removeVerticalRulerListener
Description copied from interface:IVerticalRulerInfoExtension
Removes a previously registered listener. Iflistener
is not registered with the receiver, calling this method has no effect.- Specified by:
removeVerticalRulerListener
in interfaceIVerticalRulerInfoExtension
- Parameters:
listener
- the listener to be removed
-