Interface IMemoryRendering
- All Superinterfaces:
IAdaptable
- All Known Subinterfaces:
IRepositionableMemoryRendering
,IResettableMemoryRendering
- All Known Implementing Classes:
org.eclipse.debug.internal.ui.views.memory.renderings.AbstractBaseTableRendering
,AbstractMemoryRendering
,AbstractTableRendering
,AbstractTextRendering
memoryRenderings
extension point.
Following is an example definition of a memory renderings extension.
<extension point="org.eclipse.debug.ui.memoryRenderings"> <memoryRenderingType id="com.example.asciiRendering" name="ASCII" class="com.example.RenderingFactory"> </memoryRenderingType> </extension>The attributes are specified as follows:
id
specifies a unique identifier for a type of memory renderingname
specifies a human readable label for a rendering typeclass
specifies the fully qualified name of the Java class that implementsIMemoryRenderingTypeDelegate
. Renderings are created via this factory.
A rendering provides an image and label. To support dynamic labels and
images, property change notification is used with the following property
constants defined in IBasicPropertyConstants
:
P_TEXT
- indicates a label changeP_IMAGE
- indicates a image change
Renderings needing to synchronize with other renderings are intended to use property change notifications via its synchronization service. For example, when a rendering becomes visible, it can register for property change events with its rendering site's synchronization service, and when it becomes hidden it can unregister. When a rendering is activated, it should set itself as the synchrnoization provider in its rendering site and fire property change events to communicate information to interested listeners.
Clients contributing a memory rendering type are intended to implement this
interface and IMemoryRenderingTypeDelegate
. The factory will be
used to create instances of IMemoryRendering
.
- Since:
- 3.1
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Notification this rendering has become the active rendering.void
Adds a listener for property changes to this rendering.void
Notification this rendering has become hidden in its container.void
Notification this rendering has become visible in its container.createControl
(Composite parent) Creates the top level control for this rendering under the given parent composite.void
Notification this rendering is no longer the active rendering.void
dispose()
Disposes this rendering.Returns the top level control for this rendering.getImage()
Returns an image for this rendering.getLabel()
Returns a label for this rendering.Returns the memory block displayed by this rendering.Returns the identifier associated with this rendering's type.void
init
(IMemoryRenderingContainer container, IMemoryBlock block) Initializes this rendering to be hosted in the given container, displaying the given memory block.void
Removes the given property change listener from this rendering.Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
-
Method Details
-
init
Initializes this rendering to be hosted in the given container, displaying the given memory block. This method is called before this rendering's control has been created.- Parameters:
container
- container hosting this renderingblock
- the memory block to render
-
createControl
Creates the top level control for this rendering under the given parent composite. This method is called after this rendering'sinit
method has been called.Implementors are responsible for ensuring that the created control can be accessed via
getControl
- Parameters:
parent
- the parent composite- Returns:
- the new top level control
-
getControl
Control getControl()Returns the top level control for this rendering.May return
null
if the control has not been created yet.- Returns:
- the top level control or
null
-
dispose
void dispose()Disposes this rendering. -
activated
void activated()Notification this rendering has become the active rendering. Only one rendering can be active at once. Generally, the active rendering is visible and has focus. -
deactivated
void deactivated()Notification this rendering is no longer the active rendering. -
becomesVisible
void becomesVisible()Notification this rendering has become visible in its container. Note that a rendering does not have to be active to be visible. -
becomesHidden
void becomesHidden()Notification this rendering has become hidden in its container. -
getMemoryBlock
IMemoryBlock getMemoryBlock()Returns the memory block displayed by this rendering.- Returns:
- the memory block displayed by this rendering
-
getRenderingId
String getRenderingId()Returns the identifier associated with this rendering's type.- Returns:
- the identifier associated with this rendering's type
- See Also:
-
addPropertyChangeListener
Adds a listener for property changes to this rendering. Has no effect if an identical listener is already registered.- Parameters:
listener
- a property change listener
-
removePropertyChangeListener
Removes the given property change listener from this rendering. Has no effect if the identical listener is not registered.- Parameters:
listener
- a property change listener
-
getImage
Image getImage()Returns an image for this rendering. Clients should not dispose this image. This rendering will dispose the image if required when this rendering is disposed.- Returns:
- an image for this rendering
-
getLabel
String getLabel()Returns a label for this rendering.- Returns:
- a label for this rendering
-