Package org.eclipse.ui.navigator
Interface IPipelinedTreeContentProvider
- All Superinterfaces:
ICommonContentProvider
,IContentProvider
,IMementoAware
,IStructuredContentProvider
,ITreeContentProvider
- All Known Subinterfaces:
IPipelinedTreeContentProvider2
To correctly implement pipelining you should implement
IPipelinedTreeContentProvider2
which provides the
additional
ITreeContentProvider.hasChildren(Object)
method.
This allows the calculation of hasChildren to match what will be provided in
calculating the children. If you don't implement the hasChildren, you may get
"false positive" hasChildrens which will result in a "+" indication in the
tree in the event that the pipelined children calculation.
The only reason these are two separate interfaces is historical.- Since:
- 3.2
-
Method Summary
Modifier and TypeMethodDescriptionvoid
getPipelinedChildren
(Object aParent, Set theCurrentChildren) Intercept the children that would be contributed to the viewer and determine how to change the shape of those children.void
getPipelinedElements
(Object anInput, Set theCurrentElements) Intercept the elements that would be contributed to the root of the viewer and determine how to change the shape of those children.getPipelinedParent
(Object anObject, Object aSuggestedParent) Intercept requests for a parent of the given object.interceptAdd
(PipelinedShapeModification anAddModification) Intercept attempts to add elements directly to the viewer.boolean
interceptRefresh
(PipelinedViewerUpdate aRefreshSynchronization) Intercept calls to viewerrefresh()
methods.interceptRemove
(PipelinedShapeModification aRemoveModification) Intercept attempts to remove elements directly from the viewer.boolean
interceptUpdate
(PipelinedViewerUpdate anUpdateSynchronization) Intercept calls to viewerupdate()
methods.Methods inherited from interface org.eclipse.ui.navigator.ICommonContentProvider
init
Methods inherited from interface org.eclipse.jface.viewers.IContentProvider
dispose, inputChanged
Methods inherited from interface org.eclipse.ui.navigator.IMementoAware
restoreState, saveState
Methods inherited from interface org.eclipse.jface.viewers.ITreeContentProvider
getChildren, getElements, getParent, hasChildren
-
Method Details
-
getPipelinedChildren
Intercept the children that would be contributed to the viewer and determine how to change the shape of those children. The set of children should be modified to contain the correct children to return to the viewer.- Parameters:
aParent
- A parent from the viewertheCurrentChildren
- The set of children contributed thus far from upstream content providers.
-
getPipelinedElements
Intercept the elements that would be contributed to the root of the viewer and determine how to change the shape of those children. The given set of elements should be modified to contain the correct elements to return to the viewer.- Parameters:
anInput
- An input from the viewertheCurrentElements
- The set of children contributed thus far from upstream content providers.
-
getPipelinedParent
Intercept requests for a parent of the given object.- Parameters:
anObject
- The object being queried for a parent.aSuggestedParent
- The parent already suggested from upstream extensions.- Returns:
- The intended parent from this pipelined content provider. If you wish to not influence the parent, then return the aSuggestedParent value.
-