public interface IMemoryRendering extends IAdaptable
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 implements IMemoryRenderingTypeDelegate
. 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 changeRenderings 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
.
Modifier and Type | Method and Description |
---|---|
void |
activated()
Notification this rendering has become the active rendering.
|
void |
addPropertyChangeListener(IPropertyChangeListener listener)
Adds a listener for property changes to this rendering.
|
void |
becomesHidden()
Notification this rendering has become hidden in its container.
|
void |
becomesVisible()
Notification this rendering has become visible in its container.
|
Control |
createControl(Composite parent)
Creates the top level control for this rendering under the given parent composite.
|
void |
deactivated()
Notification this rendering is no longer the active rendering.
|
void |
dispose()
Disposes this rendering.
|
Control |
getControl()
Returns the top level control for this rendering.
|
Image |
getImage()
Returns an image for this rendering.
|
String |
getLabel()
Returns a label for this rendering.
|
IMemoryBlock |
getMemoryBlock()
Returns the memory block displayed by this rendering.
|
String |
getRenderingId()
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 |
removePropertyChangeListener(IPropertyChangeListener listener)
Removes the given property change listener from this rendering.
|
getAdapter
void init(IMemoryRenderingContainer container, IMemoryBlock block)
container
- container hosting this renderingblock
- the memory block to renderControl createControl(Composite parent)
init
method has been
called.
Implementors are responsible for ensuring that
the created control can be accessed via getControl
parent
- the parent compositeControl getControl()
May return null
if the control
has not been created yet.
null
void dispose()
void activated()
void deactivated()
void becomesVisible()
void becomesHidden()
IMemoryBlock getMemoryBlock()
String getRenderingId()
IMemoryRenderingType
void addPropertyChangeListener(IPropertyChangeListener listener)
listener
- a property change listenervoid removePropertyChangeListener(IPropertyChangeListener listener)
listener
- a property change listenerImage getImage()
String getLabel()
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.