Class DrillDownAdapter
- All Implemented Interfaces:
ISelectionChangedListener
TreeViewer
. Home, back, and "drill into" functions are supported
for the viewer,
To use the DrillDownAdapter
:
- Create an instance of
TreeViewer
. - Create a
DrillDownAdapter
for the viewer. - Create a container for your viewer with a toolbar or a popup menu. Add
actions for "goBack", "goHome", and "goInto" to either one by calling
addNavigationActions
with the popup menu or toolbar.
If the input for the underlying viewer is changed by something other than the
adapter the reset
method should be called. This will clear the
drill stack and update the navigation buttons to reflect the new state of the
underlying viewer.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addNavigationActions
(IMenuManager manager) Adds actions for "go back", "go home", and "go into" to a menu manager.void
addNavigationActions
(IToolBarManager toolBar) Adds actions for "go back", "go home", and "go into" to a tool bar manager.boolean
Returns whether expansion is possible for the current selection.boolean
Returns whether "go back" is possible for child tree.boolean
Returns whether "go home" is possible for child tree.boolean
Returns whether "go into" is possible for child tree.void
goBack()
Reverts the input for the tree back to the state whengoInto
was last called.void
goHome()
Reverts the input for the tree back to the state when the adapter was created.void
goInto()
Sets the input for the tree to the current selection.void
Sets the input for the tree to a particular item in the tree.void
reset()
Resets the drill down adapter.void
Updates the navigation buttons when a selection change occurs in the tree.protected void
Updates the enabled state for each navigation button.
-
Constructor Details
-
DrillDownAdapter
Allocates a new DrillDownTreePart.- Parameters:
tree
- the target tree for refocusing
-
-
Method Details
-
canExpand
Returns whether expansion is possible for the current selection. This will only be true if it has children.- Parameters:
element
- the object to test for expansion- Returns:
true
if expansion is possible; otherwise returnfalse
-
canGoBack
public boolean canGoBack()Returns whether "go back" is possible for child tree. This is only possible if the client has performed one or more drilling operations.- Returns:
true
if "go back" is possible;false
otherwise
-
canGoHome
public boolean canGoHome()Returns whether "go home" is possible for child tree. This is only possible if the client has performed one or more drilling operations.- Returns:
true
if "go home" is possible;false
otherwise
-
canGoInto
public boolean canGoInto()Returns whether "go into" is possible for child tree. This is only possible if the current selection in the client has one item and it has children.- Returns:
true
if "go into" is possible;false
otherwise
-
goBack
public void goBack()Reverts the input for the tree back to the state whengoInto
was last called.A frame is removed from the drill stack. Then that frame is used to reset the input and expansion state for the child tree.
-
goHome
public void goHome()Reverts the input for the tree back to the state when the adapter was created.All of the frames are removed from the drill stack. Then the oldest frame is used to reset the input and expansion state for the child tree.
-
goInto
public void goInto()Sets the input for the tree to the current selection.The current input and expansion state are saved in a frame and added to the drill stack. Then the input for the tree is changed to be the current selection. The expansion state for the tree is maintained during the operation.
On return the client may revert back to the previous state by invoking
goBack
orgoHome
. -
goInto
Sets the input for the tree to a particular item in the tree.The current input and expansion state are saved in a frame and added to the drill stack. Then the input for the tree is changed to be
newInput
. The expansion state for the tree is maintained during the operation.On return the client may revert back to the previous state by invoking
goBack
orgoHome
.- Parameters:
newInput
- the new input element
-
reset
public void reset()Resets the drill down adapter.This method is typically called when the input for the underlying view is reset by something other than the adapter. On return the drill stack has been cleared and the navigation buttons reflect the new state of the underlying viewer.
-
selectionChanged
Updates the navigation buttons when a selection change occurs in the tree.- Specified by:
selectionChanged
in interfaceISelectionChangedListener
- Parameters:
event
- event object describing the change