All Known Subinterfaces:
public interface IActionFilter
An adapter which performs action filtering.
Within the workbench a plugin may extend the actions which appear in the
context menu for any object. The visibility of each action extension is controlled
by action filtering. By default, the workbench will filter each action extension using
objectClass and optional
nameFilter attributes defined
in xml. If the action extension passes this test the action will be added to the
context menu for the object.
In some situations the object class and name are not enough to describe the intended
target action. In those situations an action extension may define one or more
filter sub-elements. Each one of these elements describes one attribute of
the action target using a
name value pair. The attributes for an object
are type specific and beyond the domain of the workbench itself, so the workbench
will delegate filtering at this level to an
IActionFilter. This is a
filtering strategy which is provided by the selection itself and may perform type
The workbench will retrieve the filter from the selected object by testing to see
if it implements
IActionFilter. If that fails, the workbench will ask for
a filter through through the
IAdaptable mechanism. If a filter is
found the workbench will pass each name value pair to the filter to determine if it
matches the state of the selected object. If so, or there is no filter, the action
will be added to the context menu for the object.
Clients that implement this filter mechanism are strongly encouraged to extend this
interface to provide a list of attribute names and possible values that are
considered public for other clients to reference.
Returns whether the specific attribute matches the state of the target
- Returns whether the specific attribute matches the state of the target
target - the target object
name - the attribute name
value - the attribute value
true if the attribute matches;
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.