public class RefactoringHistoryContentProvider extends Object implements ITreeContentProvider
RefactoringHistory
elements and returns model
elements suitable to be rendered using
RefactoringHistoryLabelProvider
.
Note: this class is not indented to be subclassed outside the refactoring framework.
IRefactoringHistoryControl
,
RefactoringHistoryControlConfiguration
Constructor and Description |
---|
RefactoringHistoryContentProvider(RefactoringHistoryControlConfiguration configuration)
Creates a new refactoring history content provider.
|
Modifier and Type | Method and Description |
---|---|
void |
dispose()
Disposes of this content provider.
|
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. |
Object[] |
getRootElements()
Returns the refactoring history root elements.
|
boolean |
hasChildren(Object element)
Returns whether the given element has children.
|
void |
inputChanged(Viewer viewer,
Object predecessor,
Object successor)
Notifies this content provider that the given viewer's input
has been switched to a different element.
|
public RefactoringHistoryContentProvider(RefactoringHistoryControlConfiguration configuration)
configuration
- the refactoring history control configurationpublic void dispose()
The viewer should not be updated during this call, as it is in the process of being disposed.
dispose
in interface IContentProvider
public Object[] getChildren(Object element)
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)
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)
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 Object[] getRootElements()
This method must only be called for refactoring histories with associated time information.
public boolean hasChildren(Object element)
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 predecessor, Object successor)
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 viewerpredecessor
- the old input element, or null
if the viewer
did not previously have an inputsuccessor
- 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.