Class CloseResourceAction
-
- All Implemented Interfaces:
EventListener
,IResourceChangeListener
,IAction
,ISelectionChangedListener
- Direct Known Subclasses:
CloseUnrelatedProjectsAction
public class CloseResourceAction extends WorkspaceAction implements IResourceChangeListener
Standard action for closing the currently selected project(s).This class may be instantiated; it is not intended to be subclassed.
- Restriction:
- This class is not intended to be subclassed by clients.
-
-
Field Summary
Fields Modifier and Type Field Description 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
-
Fields inherited from interface org.eclipse.core.resources.IResourceChangeListener
PROPERTY_EVENT_MASK
-
-
Constructor Summary
Constructors Modifier Constructor Description CloseResourceAction(IShellProvider provider)
Create the new action.protected
CloseResourceAction(IShellProvider provider, String text)
Provide text to the action.protected
CloseResourceAction(IShellProvider provider, String text, String tooltip, String textPlural, String tooltipPlural)
Provide text to the action.CloseResourceAction(Shell shell)
Deprecated.protected
CloseResourceAction(Shell shell, String text)
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String[]
getModelProviderIds()
Returns the model provider ids that are known to the client that instantiated this operation.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 List<?>
getSelectedNonResources()
Returns the elements in the current selection that are notIResource
s.protected List<? extends IResource>
getSelectedResources()
Returns the elements in the current selection that areIResource
s.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.void
resourceChanged(IResourceChangeEvent event)
Handles a resource changed event by updating the enablement if one of the selected projects is opened or closed.void
run()
The implementation of thisWorkspaceAction
method method saves and closes the resource's dirty editors before closing it.void
setModelProviderIds(String[] modelProviderIds)
Sets the model provider ids that are known to the client that instantiated this operation.protected boolean
shouldPerformResourcePruning()
Returns whether this action should attempt to optimize the resources being operated on.protected boolean
updateSelection(IStructuredSelection s)
TheCloseResourceAction
implementation of thisSelectionListenerAction
method ensures that this action is enabled only if one of the selections is an open project.-
Methods inherited from class org.eclipse.ui.actions.WorkspaceAction
createOperation, getActionResources, runInBackground, runInBackground, runInBackground
-
Methods inherited from class org.eclipse.ui.actions.SelectionListenerAction
clearCache, resourceIsType, selectionIsOfType
-
Methods inherited from class org.eclipse.ui.actions.BaseSelectionListenerAction
getStructuredSelection, runWithEvent, selectionChanged, selectionChanged
-
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, 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
-
-
-
-
Field Detail
-
ID
public static final String ID
The id of this action.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CloseResourceAction
@Deprecated public CloseResourceAction(Shell shell)
Deprecated.Creates a new action.- Parameters:
shell
- the shell for any dialogs
-
CloseResourceAction
@Deprecated protected CloseResourceAction(Shell shell, String text)
Deprecated.Override super constructor to allow subclass to override with unique text.
-
CloseResourceAction
public CloseResourceAction(IShellProvider provider)
Create the new action.- Parameters:
provider
- the shell provider for any dialogs- Since:
- 3.4
-
CloseResourceAction
protected CloseResourceAction(IShellProvider provider, String text)
Provide text to the action.- Parameters:
provider
- the shell provider for any dialogstext
- label for action when only a singular selection is made- Since:
- 3.4
-
CloseResourceAction
protected CloseResourceAction(IShellProvider provider, String text, String tooltip, String textPlural, String tooltipPlural)
Provide text to the action.- Parameters:
provider
- the shell provider for any dialogstext
- label for action when only a singular selection is madetooltip
- tooltip text for action when only a singular selection is madetextPlural
- label for action when selection contains multiple elementstooltipPlural
- tooltip text for action when selection contains multiple elements- Since:
- 3.14
-
-
Method Detail
-
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 classWorkspaceAction
- 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 classWorkspaceAction
- 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 classWorkspaceAction
- 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.
- Overrides:
invokeOperation
in classWorkspaceAction
- Parameters:
resource
- one of the selected resourcesmonitor
- a progress monitor- Throws:
CoreException
- if the operation fails
-
run
public void run()
The implementation of thisWorkspaceAction
method method saves and closes the resource's dirty editors before closing it.- Specified by:
run
in interfaceIAction
- Overrides:
run
in classWorkspaceAction
- See Also:
How radio buttons are handled
,How check boxes are handled
-
shouldPerformResourcePruning
protected boolean shouldPerformResourcePruning()
Description copied from class:WorkspaceAction
Returns whether this action should attempt to optimize the resources being operated on. This kind of pruning makes sense when the operation has depth infinity semantics (when the operation is applied explicitly to a resource then it is also applied implicitly to all the resource's descendents).The
WorkspaceAction
implementation of this method returnstrue
. Subclasses should reimplement to returnfalse
if pruning is not required.- Overrides:
shouldPerformResourcePruning
in classWorkspaceAction
- Returns:
true
if pruning should be performed, andfalse
if pruning is not desired
-
updateSelection
protected boolean updateSelection(IStructuredSelection s)
TheCloseResourceAction
implementation of thisSelectionListenerAction
method ensures that this action is enabled only if one of the selections is an open project.- Overrides:
updateSelection
in classWorkspaceAction
- Parameters:
s
- the new selection- Returns:
true
if the action should be enabled for this selection, andfalse
otherwise
-
resourceChanged
public void resourceChanged(IResourceChangeEvent event)
Handles a resource changed event by updating the enablement if one of the selected projects is opened or closed.- Specified by:
resourceChanged
in interfaceIResourceChangeListener
- Parameters:
event
- the resource change event- See Also:
IResourceDelta
-
getSelectedResources
protected List<? extends IResource> getSelectedResources()
Description copied from class:SelectionListenerAction
Returns the elements in the current selection that areIResource
s.- Overrides:
getSelectedResources
in classSelectionListenerAction
- Returns:
- list of resource elements (element type:
IResource
)
-
getSelectedNonResources
protected List<?> getSelectedNonResources()
Description copied from class:SelectionListenerAction
Returns the elements in the current selection that are notIResource
s.- Overrides:
getSelectedNonResources
in classSelectionListenerAction
- Returns:
- list of elements (element type:
Object
)
-
getModelProviderIds
public String[] getModelProviderIds()
Returns the model provider ids that are known to the client that instantiated this operation.- Returns:
- the model provider ids that are known to the client that instantiated this operation.
- Since:
- 3.2
-
setModelProviderIds
public void setModelProviderIds(String[] modelProviderIds)
Sets the model provider ids that are known to the client that instantiated this operation. Any potential side effects reported by these models during validation will be ignored.- Parameters:
modelProviderIds
- the model providers known to the client who is using this operation.- Since:
- 3.2
-
-