|
Eclipse Platform Release 3.2 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.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
org.eclipse.ui.actions.WorkspaceAction
public abstract class WorkspaceAction
The abstract superclass for actions which invoke commands implemented in org.eclipse.core.* on a set of selected resources. 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:
invokeOperation - to perform the operation on one of the
selected resourcesgetOperationMessage - to furnish a title for the progress
dialogSubclasses may override the following methods:
shouldPerformResourcePruning - reimplement to turn offupdateSelection - extend to refine enablement criteriagetProblemsTitle - reimplement to furnish a title for the
problems dialoggetProblemsMessage - reimplement to furnish a message for
the problems dialogrun - extend to
| 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 | |
|---|---|
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. |
protected abstract String |
getOperationMessage()
Returns the string to display for this action's operation. |
protected String |
getProblemsMessage()
Returns the string to display for this action's problems dialog. |
protected String |
getProblemsTitle()
Returns the title for this action's problems dialog. |
protected abstract void |
invokeOperation(IResource resource,
IProgressMonitor monitor)
Performs this action's operation on each of the selected resources, reporting progress to, and fielding cancel requests from, the given progress monitor. |
void |
run()
The CoreWrapperAction implementation of this IAction
method uses a ProgressMonitorDialog to run the operation. |
void |
runInBackground(ISchedulingRule rule)
Run the action in the background rather than with the progress dialog. |
void |
runInBackground(ISchedulingRule rule,
Object jobFamily)
Run the action in the background rather than with the progress dialog. |
void |
runInBackground(ISchedulingRule rule,
Object[] jobFamilies)
Run the action in the background rather than with the progress dialog. |
protected boolean |
shouldPerformResourcePruning()
Returns whether this action should attempt to optimize the resources being operated on. |
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 |
|---|
clearCache, getSelectedNonResources, getSelectedResources, resourceIsType, selectionIsOfType |
| Methods inherited from class org.eclipse.ui.actions.BaseSelectionListenerAction |
|---|
getStructuredSelection, runWithEvent, selectionChanged, selectionChanged |
| 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 |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.eclipse.jface.action.IAction |
|---|
addPropertyChangeListener, removePropertyChangeListener |
| Constructor Detail |
|---|
protected WorkspaceAction(Shell shell,
String text)
shell - the shell (for the modal progress dialog and error messages)text - the string used as the text for the action,
or null if there is no text| Method Detail |
|---|
protected abstract String getOperationMessage()
Note that this hook method is invoked in a non-UI thread.
Subclasses must implement this method.
protected String getProblemsMessage()
The WorkspaceAction implementation of this method returns a
vague message (localized counterpart of something like "The following
problems occurred."). Subclasses may reimplement to provide something more
suited to the particular action.
protected String getProblemsTitle()
The WorkspaceAction implementation of this method returns a
generic title (localized counterpart of "Problems"). Subclasses may
reimplement to provide something more suited to the particular action.
protected abstract void invokeOperation(IResource resource,
IProgressMonitor monitor)
throws CoreException
Note that this method is invoked in a non-UI thread.
Subclasses must implement this method.
resource - one of the selected resourcesmonitor - a progress monitor
CoreException - if the operation failspublic void run()
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.
run in interface IActionrun in class Actionprotected boolean shouldPerformResourcePruning()
The WorkspaceAction implementation of this method returns
true. Subclasses should reimplement to return false
if pruning is not required.
true if pruning should be performed,
and false if pruning is not desiredprotected boolean updateSelection(IStructuredSelection selection)
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.
updateSelection in class BaseSelectionListenerActionselection - the new selection
true if the action should be enabled for this selection,
and false otherwiseprotected List getActionResources()
Subclasses may override this method.
IResource)public void runInBackground(ISchedulingRule rule)
rule - The rule to apply to the background job or
null if there isn't one.
public void runInBackground(ISchedulingRule rule,
Object jobFamily)
rule - The rule to apply to the background job or
null if there isn't one.jobFamily - a single family that the job should
belong to or null if none.
public void runInBackground(ISchedulingRule rule,
Object[] jobFamilies)
rule - The rule to apply to the background job or
null if there isn't one.jobFamilies - the families the job should belong
to or null if none.
|
Eclipse Platform Release 3.2 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Guidelines for using Eclipse APIs.
Copyright (c) IBM Corp. and others 2000, 2006. All rights reserved.