org.eclipse.ui.navigator
Interface ICommonViewerMapper
-
public interface ICommonViewerMapper
Allows improved performance by optimizing label updates of the CommonViewer.
Often label updates come in the form of resource updates, and the resources
themselves are not directly stored in the
CommonViewer
; instead other model
objects are stored. In addition, it may be the case where the objects that
have changed are not present in the Tree associated with the CommonViewer
because they have not been opened or expanded.
You can use an instance of this class to define a mapping between the current
Tree Items associated with the CommonViewer and the (typically resource) objects
where a change is notified. The change is notified to the
CommonViewer.handleLabelProviderChanged(org.eclipse.jface.viewers.LabelProviderChangedEvent)
.
The mapper object (implementing this interface) is associated with the CommonViewer using
the
CommonViewer.setMapper(ICommonViewerMapper)
method.
When this mapper wishes to update the CommonViewer, the
CommonViewer.doUpdateItem(org.eclipse.swt.widgets.Widget)
method is used.
-
Since:
- 3.4
-
Restriction:
- This interface is not intended to be extended by clients.
addToMap
void addToMap(
Object element,
Item item)
- Adds a new item to the map. Called by the
CommonViewer
when the element is
added to the Tree.
-
-
Parameters:
-
element
- Element to map -
item
- The item used for the element
removeFromMap
void removeFromMap(
Object element,
Item item)
- Removes an element from the map. Called by the
CommonViewer
when the element is
removed from the Tree.
-
-
Parameters:
-
element
- The data element -
item
- The table or tree item
clearMap
void clearMap()
- Clears the map.
-
isEmpty
boolean isEmpty()
- Tests if the map is empty
-
-
Returns:
- Returns if there are mappings
handlesObject
boolean handlesObject(
Object object)
- Tests if this mapper handles the specified object. This is used only
by the viewer to determine if the object should be looked up in the mapper.
This is not to be used when the object is being added to the mapper, as
the mapper may adapt to the desired object to be mapped (like adapting
from a Java model object to a resource object for example).
-
-
Parameters:
-
object
- the object that the mapper can handle
-
Returns:
- true if it does
objectChanged
void objectChanged(
Object object)
- Indicates the specified object has changed. If the object
has a corresponding Item in the map, the associated
CommonViewer
is notified of the change using the
CommonViewer.doUpdateItem(org.eclipse.swt.widgets.Widget)
method so that it can update its state.
-
-
Parameters:
-
object
- the object that changed
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.