Eclipse Platform
2.0

org.eclipse.ui.actions
Class WorkspaceAction

java.lang.Object
  |
  +--org.eclipse.jface.action.Action
        |
        +--org.eclipse.ui.actions.SelectionListenerAction
              |
              +--org.eclipse.ui.actions.WorkspaceAction
All Implemented Interfaces:
IAction, ISelectionChangedListener
Direct Known Subclasses:
BuildAction, CloseResourceAction, OpenResourceAction, RefreshAction, RenameResourceAction, ScrubLocalAction

public abstract class WorkspaceAction
extends SelectionListenerAction

The abstract superclass for actions whose only role in life is to invoke core commands on a set of selected resources. When the action is run, all the work is done within a modal progress dialog. It iterates over all selected resources; errors are collected and displayed to the user via a problems dialog at the end of the operation. User requests to cancel the operation are passed along to the core.

Subclasses must implement the following methods:

Subclasses may override the following methods:


Field Summary
 
Fields inherited from interface org.eclipse.jface.action.IAction
AS_CHECK_BOX, AS_DROP_DOWN_MENU, AS_PUSH_BUTTON, CHECKED, DESCRIPTION, ENABLED, IMAGE, TEXT, TOOL_TIP_TEXT
 
Constructor Summary
protected WorkspaceAction(Shell shell, String text)
          Creates a new action with the given text.
 
Method Summary
protected  List getActionResources()
          Returns the elements that the action is to be performed on.
 void run()
          The CoreWrapperAction implementation of this IAction method uses a ProgressMonitorDialog to run the operation.
protected  boolean updateSelection(IStructuredSelection selection)
          The WorkspaceAction implementation of this SelectionListenerAction method ensures that this action is disabled if any of the selected resources are inaccessible.
 
Methods inherited from class org.eclipse.ui.actions.SelectionListenerAction
getSelectedNonResources, getSelectedResources, getStructuredSelection, resourceIsType, selectionChanged, selectionChanged, selectionIsOfType
 
Methods inherited from class org.eclipse.jface.action.Action
addPropertyChangeListener, convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, firePropertyChange, firePropertyChange, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, removeAcceleratorText, removePropertyChangeListener, runWithEvent, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WorkspaceAction

protected WorkspaceAction(Shell shell,
                          String text)
Creates a new action with the given text.

Parameters:
shell - the shell (for the modal progress dialog and error messages)
text - the string used as the text for the action, or null if these is no text
Method Detail

run

public void run()
The CoreWrapperAction implementation of this IAction method uses a ProgressMonitorDialog to run the operation. The operation calls execute (which, in turn, calls invokeOperation). Afterwards, any CoreExceptions encountered while running the operation are reported to the user via a problems dialog.

Subclasses may extend this method.

Specified by:
run in interface IAction
Overrides:
run in class Action

updateSelection

protected boolean updateSelection(IStructuredSelection selection)
The WorkspaceAction implementation of this SelectionListenerAction method ensures that this action is disabled if any of the selected resources are inaccessible. Subclasses may extend to react to selection changes; however, if the super method returns false, the overriding method should also return false.

Overrides:
updateSelection in class SelectionListenerAction
Parameters:
selection - the new selection
Returns:
true if the action should be enabled for this selection, and false otherwise

getActionResources

protected List getActionResources()
Returns the elements that the action is to be performed on. By default return the selected resources.

Returns:
list of resource elements (element type: IResource)

Eclipse Platform
2.0

Copyright (c) IBM Corp. and others 2000, 2002. All Rights Reserved.