Package org.eclipse.ui.actions
Class SelectionListenerAction
java.lang.Object
org.eclipse.core.commands.common.EventManager
org.eclipse.jface.action.AbstractAction
org.eclipse.jface.action.Action
org.eclipse.ui.actions.BaseSelectionListenerAction
org.eclipse.ui.actions.SelectionListenerAction
- All Implemented Interfaces:
IAction
,ISelectionChangedListener
- Direct Known Subclasses:
AddBookmarkAction
,AddTaskAction
,CopyProjectAction
,CopyResourceAction
,CreateFileAction
,CreateFolderAction
,DeleteResourceAction
,OpenSystemEditorAction
,WorkspaceAction
The abstract superclass for resource-based actions that listen to selection
change events. This implementation tracks the current selection (see
getStructuredSelection
) and provides a convenient place to
monitor selection changes that could affect the availability of the action.
Subclasses must implement the following IAction
method:
run
- to do the action's work
Subclasses may extend the updateSelection
method to update the
action determine its availability based on the current selection.
The object instantiating the subclass is responsible for registering the instance with a selection provider. Alternatively, the object can notify the subclass instance directly of a selection change using the methods:
selectionChanged(IStructuredSelection)
- passing the selectionselectionChanged(ISelectionChangedEvent)
- passing the selection change event
-
Field Summary
Fields inherited from interface org.eclipse.jface.action.IAction
AS_CHECK_BOX, AS_DROP_DOWN_MENU, AS_PUSH_BUTTON, AS_RADIO_BUTTON, AS_UNSPECIFIED, CHECKED, DESCRIPTION, ENABLED, HANDLED, IMAGE, RESULT, TEXT, TOOL_TIP_TEXT
-
Constructor Summary
ModifierConstructorDescriptionprotected
Creates a new action with the given text. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
TheSelectionListenerAction
implementation of thisBaseSelectionListenerAction
method clears the cached resources and non-resources.protected List<?>
Returns the elements in the current selection that are notIResource
s.Returns the elements in the current selection that areIResource
s.protected boolean
resourceIsType
(IResource resource, int resourceMask) Returns whether the type of the given resource is among those in the given resource type mask.protected boolean
selectionIsOfType
(int resourceMask) Returns whether the current selection consists entirely of resources whose types are among those in the given resource type mask.Methods inherited from class org.eclipse.ui.actions.BaseSelectionListenerAction
getStructuredSelection, runWithEvent, selectionChanged, selectionChanged, updateSelection
Methods inherited from class org.eclipse.jface.action.Action
convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, isHandled, notifyResult, removeAcceleratorText, removeMnemonics, run, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText
Methods inherited from class org.eclipse.jface.action.AbstractAction
addPropertyChangeListener, firePropertyChange, firePropertyChange, removePropertyChangeListener
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
-
Constructor Details
-
SelectionListenerAction
Creates a new action with the given text.- Parameters:
text
- the string used as the text for the action, ornull
if there is no text
-
-
Method Details
-
clearCache
protected void clearCache()TheSelectionListenerAction
implementation of thisBaseSelectionListenerAction
method clears the cached resources and non-resources.- Overrides:
clearCache
in classBaseSelectionListenerAction
-
getSelectedNonResources
Returns the elements in the current selection that are notIResource
s.- Returns:
- list of elements (element type:
Object
)
-
getSelectedResources
Returns the elements in the current selection that areIResource
s.- Returns:
- list of resource elements (element type:
IResource
)
-
resourceIsType
Returns whether the type of the given resource is among those in the given resource type mask.- Parameters:
resource
- the resourceresourceMask
- a bitwise OR of resource types:IResource
.{FILE
,FOLDER
,PROJECT
,ROOT
}- Returns:
true
if the resource type matches, andfalse
otherwise- See Also:
-
selectionIsOfType
protected boolean selectionIsOfType(int resourceMask) Returns whether the current selection consists entirely of resources whose types are among those in the given resource type mask.- Parameters:
resourceMask
- a bitwise OR of resource types:IResource
.{FILE
,FOLDER
,PROJECT
,ROOT
}- Returns:
true
if all resources in the current selection are of the specified types or if the current selection is empty, andfalse
if some elements are resources of a different type or not resources- See Also:
-