Package org.eclipse.jface.text.source
Interface IAnnotationAccessExtension
- All Known Implementing Classes:
DefaultMarkerAnnotationAccess
public interface IAnnotationAccessExtension
Extension interface for
IAnnotationAccess
.
This interface replaces the methods of IAnnotationAccess
.
This interface provides
- a label for the annotation type of a given annotation
- the paint layer of a given annotation
- means to paint a given annotation
- information about the type hierarchy of the annotation type of a given annotation
- Since:
- 3.0
- See Also:
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
getLayer
(Annotation annotation) Returns the layer for given annotation.Object[]
getSupertypes
(Object annotationType) Returns the list of super types for the given annotation type.getTypeLabel
(Annotation annotation) Returns the label for the given annotation's type.boolean
isPaintable
(Annotation annotation) Returnstrue
if paintingannotation
will produce something meaningful,false
if not.boolean
Returnstrue
if the given annotation is of the given type orfalse
otherwise.void
paint
(Annotation annotation, GC gc, Canvas canvas, Rectangle bounds) Draws a graphical representation of the given annotation within the given bounds.
-
Field Details
-
DEFAULT_LAYER
static final int DEFAULT_LAYERThe default annotation layer.- See Also:
-
-
Method Details
-
getTypeLabel
Returns the label for the given annotation's type.- Parameters:
annotation
- the annotation- Returns:
- the label the given annotation's type or
null
if no such label exists
-
getLayer
Returns the layer for given annotation. Annotations are considered being located at layers and are considered being painted starting with layer 0 upwards. Thus an annotation at layer 5 will be drawn on top of all co-located annotations at the layers 4 - 0.- Parameters:
annotation
- the annotation- Returns:
- the layer of the given annotation
-
paint
Draws a graphical representation of the given annotation within the given bounds.Note that this method is not used when drawing annotations on the editor's text widget. This is handled trough a
AnnotationPainter.IDrawingStrategy
.- Parameters:
annotation
- the given annotationgc
- the drawing GCcanvas
- the canvas to draw onbounds
- the bounds inside the canvas to draw on
-
isPaintable
Returnstrue
if paintingannotation
will produce something meaningful,false
if not. E.g. if no image is available.Note that this method is not used when drawing annotations on the editor's text widget. This is handled trough a
AnnotationPainter.IDrawingStrategy
.- Parameters:
annotation
- the annotation to check whether it can be painted- Returns:
true
if paintingannotation
will succeed
-
isSubtype
Returnstrue
if the given annotation is of the given type orfalse
otherwise.- Parameters:
annotationType
- the annotation typepotentialSupertype
- the potential super annotation type- Returns:
true
if annotation type is a sub-type of the potential annotation super type
-
getSupertypes
Returns the list of super types for the given annotation type. This does not include the type itself. The index in the array of super types indicates the length of the path in the hierarchy graph to the given annotation type.- Parameters:
annotationType
- the annotation type to check- Returns:
- the super types for the given annotation type
-