Eclipse Platform
Release 3.1

org.eclipse.ui.actions
Class RenameResourceAction

java.lang.Object
  extended byorg.eclipse.jface.action.Action
      extended byorg.eclipse.ui.actions.BaseSelectionListenerAction
          extended byorg.eclipse.ui.actions.SelectionListenerAction
              extended byorg.eclipse.ui.actions.WorkspaceAction
                  extended byorg.eclipse.ui.actions.RenameResourceAction
All Implemented Interfaces:
IAction, ISelectionChangedListener
Direct Known Subclasses:
ResourceNavigatorRenameAction

public class RenameResourceAction
extends WorkspaceAction

Standard action for renaming the selected resources.

This class may be instantiated; it is not intended to be subclassed.


Field Summary
static String ID
          The id of this action.
 
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
RenameResourceAction(Shell shell)
          Creates a new action.
RenameResourceAction(Shell shell, Tree tree)
          Creates a new action.
 
Method Summary
protected  List getActionResources()
          Returns the elements that the action is to be performed on.
protected  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  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.
protected  String queryNewResourceName(IResource resource)
          Return the new name to be given to the target resource.
 void run()
          The CoreWrapperAction implementation of this IAction method uses a ProgressMonitorDialog to run the operation.
protected  void runWithNewPath(IPath path, IResource resource)
           
 void setTextActionHandler(TextActionHandler actionHandler)
          Set the text action handler.
protected  boolean updateSelection(IStructuredSelection selection)
          The RenameResourceAction implementation of this SelectionListenerAction method ensures that this action is disabled if any of the selections are not resources or resources that are not local.
 
Methods inherited from class org.eclipse.ui.actions.WorkspaceAction
runInBackground, runInBackground, runInBackground, shouldPerformResourcePruning
 
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.Action
addPropertyChangeListener, convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, firePropertyChange, firePropertyChange, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, isHandled, notifyResult, removeAcceleratorText, removeMnemonics, removePropertyChangeListener, 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
 

Field Detail

ID

public static final String ID
The id of this action.

See Also:
Constant Field Values
Constructor Detail

RenameResourceAction

public RenameResourceAction(Shell shell)
Creates a new action. Using this constructor directly will rename using a dialog rather than the inline editor of a ResourceNavigator.

Parameters:
shell - the shell for any dialogs

RenameResourceAction

public RenameResourceAction(Shell shell,
                            Tree tree)
Creates a new action.

Parameters:
shell - the shell for any dialogs
tree - the tree
Method Detail

getActionResources

protected List getActionResources()
Returns the elements that the action is to be performed on. Return the resource cached by the action as we cannot rely on the selection being correct for inlined text.

Overrides:
getActionResources in class WorkspaceAction
Returns:
list of resource elements (element type: IResource)

getOperationMessage

protected String getOperationMessage()
Description copied from class: WorkspaceAction
Returns the string to display for this action's operation.

Note that this hook method is invoked in a non-UI thread.

Subclasses must implement this method.

Specified by:
getOperationMessage in class WorkspaceAction
Returns:
the message

getProblemsMessage

protected String getProblemsMessage()
Description copied from class: WorkspaceAction
Returns the string to display for this action's problems dialog.

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.

Overrides:
getProblemsMessage in class WorkspaceAction
Returns:
the problems message

getProblemsTitle

protected String getProblemsTitle()
Description copied from class: WorkspaceAction
Returns the title for this action's problems dialog.

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.

Overrides:
getProblemsTitle in class WorkspaceAction
Returns:
the problems dialog title

invokeOperation

protected void invokeOperation(IResource resource,
                               IProgressMonitor monitor)
                        throws CoreException
Description copied from class: WorkspaceAction
Performs this action's operation on each of the selected resources, reporting progress to, and fielding cancel requests from, the given progress monitor.

Note that this method is invoked in a non-UI thread.

Subclasses must implement this method.

Specified by:
invokeOperation in class WorkspaceAction
Parameters:
resource - one of the selected resources
monitor - a progress monitor
Throws:
CoreException - if the operation fails

queryNewResourceName

protected String queryNewResourceName(IResource resource)
Return the new name to be given to the target resource.

Parameters:
resource - the resource to query status on
Returns:
java.lang.String

run

public void run()
Description copied from class: WorkspaceAction
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 WorkspaceAction

runWithNewPath

protected void runWithNewPath(IPath path,
                              IResource resource)
Parameters:
path - the path
resource - the resource

updateSelection

protected boolean updateSelection(IStructuredSelection selection)
The RenameResourceAction implementation of this SelectionListenerAction method ensures that this action is disabled if any of the selections are not resources or resources that are not local.

Overrides:
updateSelection in class WorkspaceAction

setTextActionHandler

public void setTextActionHandler(TextActionHandler actionHandler)
Set the text action handler.

Parameters:
actionHandler - the action handler

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.