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
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
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.