Provides a set of classes to help in evaluating expressions for Eclipse plug-in action enablement and visibility. The {@link org.eclipse.gmf.runtime.common.ui.services.action.filter.ActionFilterService} allows clients to extend the action filters supported by objects selected in workbench. It also permits the entire workbench selection to be considered so that an action can be enabled if it is supported on one or more elements in the selection.
To add a new attribute to an object for action filtering, the object
must implement the IAdaptable
interface and an adapter
factory must be registered that returns the
{@link org.eclipse.gmf.runtime.common.ui.services.action.filter.ActionFilterService}
when the object is adapted to IActionFilter
. An
{@link org.eclipse.gmf.runtime.common.ui.services.action.filter.IActionFilterProvider}
can then be registered to provide the test for the attribute using the
org.eclipse.gmf.runtime.common.ui.services.action.actionFilterProviders
extension point.
Such attributes are named in objectState
elements which
evaluate the attribute state of each object in the current selection for
enablement or visibility criteria (see the org.eclipse.ui.popupMenus extension point for details).
Eclipse documentation states that if each object in the selection has
the specified attribute state, the expression is evaluated as true. However, this is
not necessarily the case for attributes defined by an action filter provider, which can
optionally evaluate the expression to true if one or more of the objects in the selection
has the specified attribute state. The meaning of the value of the attribute (the objectState
value)
is defined by the action filter provider.
Action filter providers should be implemented by extending the {@link org.eclipse.gmf.runtime.common.ui.services.action.filter.AbstractActionFilterProvider} class in this package.
@canBeSeenBy %partners