org.eclipse.ui
Interface IActionBars
-
All Known Subinterfaces:
-
IActionBars2
-
All Known Implementing Classes:
-
SubActionBars,
SubActionBars2
-
public interface IActionBars
Used by a part to access its menu, toolbar, and status line managers.
Within the workbench each part, editor or view, has a private set of action
bars. This set, which contains a menu, toolbar, and status line, appears
in the local toolbar for a view and in the window for an editor. The view
may provide an implementation for pre-existing actions or add new actions to
the action bars.
In a workbench window there are a number of actions which are applicable to
all parts. Some common examples are CUT
, COPY
and
PASTE
. These actions, known as "global actions", are contributed to
the workbench window by the window itself and shared by all parts. The
presentation is owned by the window. The implementation is delegated to the
active part.
To participate in the global action design an IWorkbenchPart
should
register a handler for each global action which is implemented by the part. This
can be done by calling setGlobalActionHandler
. For convenience, the
standard global actions are defined in
org.eclipse.ui.IWorkbenchActionConstants
.
Additional work is required for the Delete
global action. In
this case the accelerator is defined in the menu item text but is not hooked
on the window. This is to support text editors where the Delete
key is functional even when the Delete
action is disabled (no text
is selected). An implementation for this accelerator must be defined locally,
in each part, by listening for Delete
key events.
A part may also contribute new actions to the action bars as required. To do
this, call getMenuManager
, getToolBarManager
, or
getStatusLineManager
as appropriate to get the action target.
Add the action(s) to the target and call update
to commit
any changes to the underlying widgets.
This interface is not intended to be implemented by clients.
-
Restriction:
- This interface is not intended to be implemented by clients.
clearGlobalActionHandlers
void clearGlobalActionHandlers()
- Clears the global action handler list.
Note: Clients who manipulate the global action list are
responsible for calling updateActionBars
so that the changes
can be propagated throughout the workbench.
-
getGlobalActionHandler
IAction getGlobalActionHandler(
String actionId)
- Returns the global action handler for the action with the given id.
-
-
Parameters:
-
actionId
- an action id declared in the registry
-
Returns:
- an action handler which implements the action id, or
null
if none is registered -
See Also:
-
IWorkbenchActionConstants
,
setGlobalActionHandler(String, IAction)
getMenuManager
IMenuManager getMenuManager()
- Returns the menu manager.
Note: Clients who add or remove items from the returned menu manager are
responsible for calling updateActionBars
so that the changes
can be propagated throughout the workbench.
-
-
Returns:
- the menu manager
getServiceLocator
IServiceLocator getServiceLocator()
- Returns the service locator for these action bars. The locator is found
by looking locally, and then ascending the action bar hierarchy.
-
-
Returns:
- The service locator; never
null
. -
Since:
- 3.2
getStatusLineManager
IStatusLineManager getStatusLineManager()
- Returns the status line manager.
Note: Clients who add or remove items from the returned status line
manager are responsible for calling updateActionBars
so
that the changes can be propagated throughout the workbench.
-
-
Returns:
- the status line manager
getToolBarManager
IToolBarManager getToolBarManager()
- Returns the tool bar manager.
Note: Clients who add or remove items from the returned tool bar manager are
responsible for calling updateActionBars
so that the changes
can be propagated throughout the workbench.
-
-
Returns:
- the tool bar manager
setGlobalActionHandler
void setGlobalActionHandler(
String actionId,
IAction handler)
- Sets the global action handler for the action with the given id.
Note: Clients who manipulate the global action list are
responsible for calling updateActionBars
so that the changes
can be propagated throughout the workbench.
-
-
Parameters:
-
actionId
- an action id declared in the registry -
handler
- an action which implements the action id, or
null
to clear any existing handler -
See Also:
-
IWorkbenchActionConstants
updateActionBars
void updateActionBars()
- Updates the action bars.
Clients who add or remove items from the menu, tool bar, or status line
managers, or that update global action handlers, should call this method
to propagated the changes throughout the workbench.
-
-
See Also:
-
setGlobalActionHandler(String, IAction)
,
clearGlobalActionHandlers()
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.