Class BaseWorkbenchContentProvider
- All Implemented Interfaces:
IContentProvider
,IStructuredContentProvider
,ITreeContentProvider
- Direct Known Subclasses:
WorkbenchContentProvider
IWorkbenchAdapter
.
This class may be instantiated, or subclassed.
- Since:
- 3.0
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
dispose()
Disposes of this content provider.protected IWorkbenchAdapter
getAdapter
(Object element) Returns the implementation of IWorkbenchAdapter for the given object.Object[]
getChildren
(Object element) Returns the child elements of the given parent element.Object[]
getElements
(Object element) Returns the elements to display in the viewer when its input is set to the given element.Returns the parent for the given element, ornull
indicating that the parent can't be computed.boolean
hasChildren
(Object element) Returns whether the given element has children.void
inputChanged
(Viewer viewer, Object oldInput, Object newInput) Notifies this content provider that the given viewer's input has been switched to a different element.
-
Constructor Details
-
BaseWorkbenchContentProvider
public BaseWorkbenchContentProvider()Creates a new workbench content provider.
-
-
Method Details
-
dispose
public void dispose()Description copied from interface:IContentProvider
Disposes of this content provider. This is called by the viewer when it is disposed.The viewer should not be updated during this call, as it is in the process of being disposed.
The default implementation does nothing.
- Specified by:
dispose
in interfaceIContentProvider
-
getAdapter
Returns the implementation of IWorkbenchAdapter for the given object. Returns null if the adapter is not defined or the object is not adaptable.- Parameters:
element
- the element- Returns:
- the corresponding workbench adapter object
-
getChildren
Description copied from interface:ITreeContentProvider
Returns the child elements of the given parent element.The difference between this method and
The result is not modified by the viewer.IStructuredContentProvider.getElements
is thatgetElements
is called to obtain the tree viewer's root elements, whereasgetChildren
is used to obtain the children of a given parent element in the tree (including a root).- Specified by:
getChildren
in interfaceITreeContentProvider
- Parameters:
element
- the parent element- Returns:
- an array of child elements
-
getElements
Description copied from interface:ITreeContentProvider
Returns the elements to display in the viewer when its input is set to the given element. These elements can be presented as rows in a table, items in a list, etc. The result is not modified by the viewer.NOTE: The returned array must not contain the given
inputElement
, since this leads to recursion issues inAbstractTreeViewer
(see bug 9262).- Specified by:
getElements
in interfaceIStructuredContentProvider
- Specified by:
getElements
in interfaceITreeContentProvider
- Parameters:
element
- the input element- Returns:
- the array of elements to display in the viewer
-
getParent
Description copied from interface:ITreeContentProvider
Returns the parent for the given element, ornull
indicating that the parent can't be computed. In this case the tree-structured viewer can't expand a given node correctly if requested.- Specified by:
getParent
in interfaceITreeContentProvider
- Parameters:
element
- the element- Returns:
- the parent element, or
null
if it has none or if the parent cannot be computed
-
hasChildren
Description copied from interface:ITreeContentProvider
Returns whether the given element has children.Intended as an optimization for when the viewer does not need the actual children. Clients may be able to implement this more efficiently than
getChildren
.- Specified by:
hasChildren
in interfaceITreeContentProvider
- Parameters:
element
- the element- Returns:
true
if the given element has children, andfalse
if it has no children
-
inputChanged
Description copied from interface:IContentProvider
Notifies this content provider that the given viewer's input has been switched to a different element.A typical use for this method is registering the content provider as a listener to changes on the new input (using model-specific means), and deregistering the viewer from the old input. In response to these change notifications, the content provider should update the viewer (see the add, remove, update and refresh methods on the viewers).
The viewer should not be updated during this call, as it might be in the process of being disposed.
The default implementation does nothing.
- Specified by:
inputChanged
in interfaceIContentProvider
- Parameters:
viewer
- the vieweroldInput
- the old input element, ornull
if the viewer did not previously have an inputnewInput
- the new input element, ornull
if the viewer does not have an input
-