org.eclipse.debug.ui
Interface IInstructionPointerPresentation
-
All Superinterfaces:
-
IBaseLabelProvider,
IDebugModelPresentation,
ILabelProvider,
ISourcePresentation
-
public interface IInstructionPointerPresentation
- extends
IDebugModelPresentation
A debug model presentation may implement this interface to override
standard annotations used to display instruction pointers for stack frames.
A client has several options when overriding default instruction pointer
annotations, and the debug platform uses the following prioritized order
when computing an annotation for a stack frame.
- Specify the annotation object to use. This is done by returning a non-
null
value from getInstructionPointerAnnotation(..)
.
- Specify an
annotationType
extension to use.
This is done by returning a non-null
value from
getInstructionPointerAnnotationType(..)
. When specified, the annotation
type controls the image displayed via its associated
markerAnnotationSpecification
.
- Specify the image to use. This is done by returning a non-
null
value from getInstructionPointerImage(..)
.
Additionally, when specifying an annotation type or image the text
for the instruction pointer may be specified by returning a non-
null
value from
getInstructionPointerText(..)
.
These methods are called when the debugger has opened an editor to display
source for the given stack frame. The image will be positioned based on stack frame
line number and character ranges.
By default, the debug platform uses different annotations for top stack
frames and non-top stack frames in a thread. The default platform annotations
are contributed as annotationType
extensions with
the identifiers IDebugUIConstants.ANNOTATION_INSTRUCTION_POINTER_CURRENT
and IDebugUIConstants.ANNOTAION_INSTRUCTION_POINTER_SECONDARY
.
Clients implementing a debug model presentation may also implement this interface.
-
Since:
- 3.2
getInstructionPointerAnnotation
Annotation getInstructionPointerAnnotation(
IEditorPart editorPart,
IStackFrame frame)
- Returns an annotation used for the specified stack frame in the specified
editor, or
null
if a default annotation should be used.
-
-
-
Parameters:
-
editorPart
- the editor the debugger has opened -
frame
- the stack frame for which the debugger is displaying
source
-
Returns:
- annotation or
null
getInstructionPointerAnnotationType
String getInstructionPointerAnnotationType(
IEditorPart editorPart,
IStackFrame frame)
- Returns an identifier of a
org.eclipse.ui.editors.annotationTypes
extension used for
the specified stack frame in the specified editor, or null
if a default annotation
should be used.
-
-
-
Parameters:
-
editorPart
- the editor the debugger has opened -
frame
- the stack frame for which the debugger is displaying
source
-
Returns:
- annotation type identifier or
null
getInstructionPointerImage
Image getInstructionPointerImage(
IEditorPart editorPart,
IStackFrame frame)
- Returns the instruction pointer image used for the specified stack frame in the specified
editor, or
null
if a default image should be used.
By default, the debug platform uses different images for top stack
frames and non-top stack frames in a thread.
-
-
-
Parameters:
-
editorPart
- the editor the debugger has opened -
frame
- the stack frame for which the debugger is displaying
source
-
Returns:
- image or
null
getInstructionPointerText
String getInstructionPointerText(
IEditorPart editorPart,
IStackFrame frame)
- Returns the text to associate with the instruction pointer annotation used for the
specified stack frame in the specified editor, or
null
if a default
message should be used.
By default, the debug platform uses different images for top stack
frames and non-top stack frames in a thread.
-
-
-
Parameters:
-
editorPart
- the editor the debugger has opened -
frame
- the stack frame for which the debugger is displaying
source
-
Returns:
- message or
null
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.