public class BaseWorkbenchContentProvider extends Object implements ITreeContentProvider
IWorkbenchAdapter
.
This class may be instantiated, or subclassed.
IWorkbenchAdapter
Constructor and Description |
---|
BaseWorkbenchContentProvider()
Creates a new workbench content provider.
|
Modifier and Type | Method and Description |
---|---|
void |
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.
|
Object |
getParent(Object element)
Returns the parent for the given element, or
null
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.
|
public BaseWorkbenchContentProvider()
public void dispose()
IContentProvider
The viewer should not be updated during this call, as it is in the process of being disposed.
dispose
in interface IContentProvider
protected IWorkbenchAdapter getAdapter(Object element)
element
- the elementpublic Object[] getChildren(Object element)
ITreeContentProvider
The difference between this method and IStructuredContentProvider.getElements
is that getElements
is called to obtain the
tree viewer's root elements, whereas getChildren
is used
to obtain the children of a given parent element in the tree (including a root).
getChildren
in interface ITreeContentProvider
element
- the parent elementpublic Object[] getElements(Object element)
ITreeContentProvider
NOTE: The returned array must not contain the given
inputElement
, since this leads to recursion issues in
AbstractTreeViewer
(see
bug 9262).
getElements
in interface IStructuredContentProvider
getElements
in interface ITreeContentProvider
element
- the input elementpublic Object getParent(Object element)
ITreeContentProvider
null
indicating that the parent can't be computed.
In this case the tree-structured viewer can't expand
a given node correctly if requested.getParent
in interface ITreeContentProvider
element
- the elementnull
if it
has none or if the parent cannot be computedpublic boolean hasChildren(Object element)
ITreeContentProvider
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
.
hasChildren
in interface ITreeContentProvider
element
- the elementtrue
if the given element has children,
and false
if it has no childrenpublic void inputChanged(Viewer viewer, Object oldInput, Object newInput)
IContentProvider
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.
inputChanged
in interface IContentProvider
viewer
- the vieweroldInput
- the old input element, or null
if the viewer
did not previously have an inputnewInput
- the new input element, or null
if the viewer
does not have an input
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.