# Package org.eclipse.jface.action

package org.eclipse.jface.action
Provides support for shared UI resources such as menus, tool bars, and status lines.

## Package Specification

Contribution managers coordinate contributions to shared UI resources such as menus, menu bars, tool bars, and status lines. `ContributionManager` maintains the contributions as a dynamic list of contribution items (`IContributionItems`). Separators (`Separator`) can be included in contribution lists to break up the list's visual representation. Internally, contribution lists can be organized into named groups via special group markers (`GroupMarker`) to facilitate programatic insertion at specific positions within the list.

Three specific contribution managers are provided: a status line manager (`StatusLineManager`), a tool bar manager (`ToolBarManager`), and a hierarchical menu manager (`MenuManager`).

Actions (`IAction`) are commands which can be triggered from the UI, like the ones found in menus, toolbars, and buttons. Menus and tools bars are typically populated with contribution items that delegate to actions (`ActionContributionItem`).

Note: None of the classes in this package maintain global state.

Class
Description
AbstractAction
Some common functionality to share between implementations of `IAction`.
AbstractGroupMarker
Abstract superclass for group marker classes.
Action
The standard abstract implementation of an action.
ActionContributionItem
A contribution item which delegates to an action.
ContributionItem
An abstract base implementation for contribution items.
ContributionManager
Abstract base class for all contribution managers, and standard implementation of `IContributionManager`.
ControlContribution
An abstract contribution item implementation for adding an arbitrary SWT control to a tool bar.
CoolBarManager
A cool bar manager is a contribution manager which realizes itself and its items in a cool bar control.
ExternalActionManager
A manager for a callback facility which is capable of querying external interfaces for additional information about actions and action contribution items.
ExternalActionManager.CommandCallback
A simple implementation of the `ICallback` mechanism that simply takes a `BindingManager` and a `CommandManager`.
ExternalActionManager.IActiveChecker
Defines a callback mechanism for developer who wish to further control the visibility of legacy action-based contribution items.
ExternalActionManager.IBindingManagerCallback
A callback which communicates with the applications binding manager.
ExternalActionManager.ICallback
A callback mechanism for some external tool to communicate extra information to actions and action contribution items.
ExternalActionManager.IExecuteApplicable
An overridable mechanism to filter certain IActions from the execution bridge.
ExternalActionManager.IExecuteCallback
A callback for executing execution events.
GroupMarker
A group marker is a special kind of contribution item denoting the beginning of a group.
IAction
An action represents the non-UI side of a command which can be triggered by the end user.
IContributionItem
A contribution item represents a contribution to a shared UI resource such as a menu or tool bar.
IContributionManager
A contribution manager organizes contributions to such UI components as menus, toolbars and status lines.
IContributionManagerOverrides
This interface is used by instances of `IContributionItem` to determine if the values for certain properties have been overriden by their manager.
ICoolBarManager
The `ICoolBarManager` interface provides protocol for managing contributions to a cool bar.
IMenuCreator
Interface for something that creates and disposes of SWT menus.
IMenuListener
A menu listener that gets informed when a menu is about to show.
IMenuListener2
A menu listener that gets informed when a menu is about to hide.
IMenuManager
The `IMenuManager` interface provides protocol for managing contributions to a menu bar and its sub menus.
IStatusLineManager
The `IStatusLineManager` interface provides protocol for displaying messages on a status line, for monitoring progress, and for managing contributions to the status line.
IToolBarManager
The `IToolBarManager` interface provides protocol for managing contributions to a tool bar.
LegacyActionTools
Some static utility methods for handling labels on actions.
MenuManager
A menu manager is a contribution manager which realizes itself and its items in a menu control; either as a menu bar, a sub-menu, or a context menu.
Separator
A separator is a special kind of contribution item which acts as a visual separator and, optionally, acts as a group marker.
StatusLineContributionItem
A contribution item to be used with status line managers.
StatusLineLayoutData
Represents the layout data object for `Control` within the status line.
StatusLineManager
A status line manager is a contribution manager which realizes itself and its items in a status line control.
SubContributionItem
A `SubContributionItem` is a wrapper for an `IContributionItem`.
SubContributionManager
A `SubContributionManager` is used to define a set of contribution items within a parent manager.
SubCoolBarManager
A `SubCoolBarManager` monitors the additional and removal of items from a parent manager so that visibility of the entire set can be changed as a unit.
SubMenuManager
A `SubMenuManager` is used to define a set of contribution items within a parent manager.
SubStatusLineManager
A `SubStatusLineManager` is used to define a set of contribution items within a parent manager.
SubToolBarManager
A `SubToolBarManager` monitors the additional and removal of items from a parent manager so that visibility of the entire set can be changed as a unit.
ToolBarContributionItem
The `ToolBarContributionItem` class provides a wrapper for tool bar managers when used in cool bar managers.
ToolBarManager
A tool bar manager is a contribution manager which realizes itself and its items in a tool bar control.