Package org.eclipse.jdt.ui.actions
Class SelectionDispatchAction
- java.lang.Object
-
- org.eclipse.core.commands.common.EventManager
-
- org.eclipse.jface.action.AbstractAction
-
- org.eclipse.jface.action.Action
-
- org.eclipse.jdt.ui.actions.SelectionDispatchAction
-
- All Implemented Interfaces:
IAction
,ISelectionChangedListener
- Direct Known Subclasses:
AddDelegateMethodsAction
,AddGetterSetterAction
,AddJavaDocStubAction
,AddToClasspathAction
,AddUnimplementedConstructorsAction
,ChangeTypeAction
,ConvertAnonymousToNestedAction
,ConvertLocalToFieldAction
,ConvertNestedToTopAction
,ExternalizeStringsAction
,ExtractClassAction
,ExtractConstantAction
,ExtractInterfaceAction
,ExtractMethodAction
,ExtractTempAction
,FindAction
,FindBreakContinueTargetOccurrencesAction
,FindExceptionOccurrencesAction
,FindImplementOccurrencesAction
,FindMethodExitOccurrencesAction
,FindOccurrencesInFileAction
,FindStringsToExternalizeAction
,FormatAllAction
,GenerateHashCodeEqualsAction
,GenerateNewConstructorUsingFieldsAction
,GenerateToStringAction
,InferTypeArgumentsAction
,InlineAction
,InlineTempAction
,IntroduceFactoryAction
,IntroduceIndirectionAction
,IntroduceParameterAction
,ModifyParametersAction
,MoveAction
,OpenAction
,OpenAttachedJavadocAction
,OpenImplementationAction
,OpenProjectAction
,OpenSuperImplementationAction
,OpenTypeHierarchyAction
,OrganizeImportsAction
,OverrideMethodsAction
,PullUpAction
,PushDownAction
,RefreshAction
,RemoveFromClasspathAction
,RenameAction
,ReplaceInvocationsAction
,SelfEncapsulateFieldAction
,ShowInNavigatorViewAction
,ShowInPackageViewAction
,SortMembersAction
,SurroundWithTryCatchAction
,SurroundWithTryWithResourcesAction
,UseSupertypeAction
public abstract class SelectionDispatchAction extends Action implements ISelectionChangedListener
Action that dispatches theIAction#run()
and theISelectionChangedListener#selectionChanged
according to the type of the selection.- if selection is of type
ITextSelection
thenrun(ITextSelection)
andselectionChanged(ITextSelection)
is called. - if selection is of type
IStructuredSelection
thenrun(IStructuredSelection)
andselectionChanged(IStructuredSelection)
is called. - default is to call
run(ISelection)
andselectionChanged(ISelection)
.
Note: This class is not intended to be subclassed outside the JDT UI plug-in.
- Since:
- 2.0
- Restriction:
- This class is not intended to be subclassed by clients.
-
-
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
Constructors Modifier Constructor Description protected
SelectionDispatchAction(IWorkbenchSite site)
Creates a new action with no text and no image.protected
SelectionDispatchAction(IWorkbenchSite site, ISelectionProvider provider)
Deprecated.UsesetSpecialSelectionProvider(ISelectionProvider)
instead.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ISelection
getSelection()
Returns the selection provided by the site owning this action.ISelectionProvider
getSelectionProvider()
Returns the selection provider managed by the site owning this action or the selection provider explicitly set insetSpecialSelectionProvider(ISelectionProvider)
.Shell
getShell()
Returns the shell provided by the site owning this action.IWorkbenchSite
getSite()
Returns the site owning this action.void
run()
void
run(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
Note: This method is for internal use only.void
run(ITextSelection selection)
Executes this actions with the given text selection.void
run(ISelection selection)
Executes this actions with the given selection.void
run(IStructuredSelection selection)
Executes this actions with the given structured selection.void
selectionChanged(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
Note: This method is for internal use only.void
selectionChanged(ITextSelection selection)
Notifies this action that the given text selection has changed.void
selectionChanged(ISelection selection)
Notifies this action that the given selection has changed.void
selectionChanged(IStructuredSelection selection)
Notifies this action that the given structured selection has changed.void
selectionChanged(SelectionChangedEvent event)
void
setSpecialSelectionProvider(ISelectionProvider provider)
Sets a special selection provider which will be used instead of the site's selection provider.void
update(ISelection selection)
Updates the action's enablement state according to the given selection.-
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, runWithEvent, 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 Detail
-
SelectionDispatchAction
protected SelectionDispatchAction(IWorkbenchSite site)
Creates a new action with no text and no image.Configure the action later using the set methods.
- Parameters:
site
- the site this action is working on
-
SelectionDispatchAction
@Deprecated protected SelectionDispatchAction(IWorkbenchSite site, ISelectionProvider provider)
Deprecated.UsesetSpecialSelectionProvider(ISelectionProvider)
instead. This constructor will be removed after 3.2 M5.Creates a new action with no text and no imageConfigure the action later using the set methods.
- Parameters:
site
- the site this action is working onprovider
- a special selection provider which is used instead of the site's selection provider ornull
to use the site's selection provider. Clients can for example use aConvertingSelectionProvider
to first convert a selection before passing it to the action.- Since:
- 3.2
-
-
Method Detail
-
getSite
public IWorkbenchSite getSite()
Returns the site owning this action.- Returns:
- the site owning this action
-
getSelection
public ISelection getSelection()
Returns the selection provided by the site owning this action.- Returns:
- the site's selection
-
getShell
public Shell getShell()
Returns the shell provided by the site owning this action.- Returns:
- the site's shell
-
getSelectionProvider
public ISelectionProvider getSelectionProvider()
Returns the selection provider managed by the site owning this action or the selection provider explicitly set insetSpecialSelectionProvider(ISelectionProvider)
.- Returns:
- the site's selection provider
-
setSpecialSelectionProvider
public void setSpecialSelectionProvider(ISelectionProvider provider)
Sets a special selection provider which will be used instead of the site's selection provider. This method should be used directly after constructing the action and before the action is registered as a selection listener. The invocation will not a perform a selection change notification.- Parameters:
provider
- a special selection provider which is used instead of the site's selection provider ornull
to use the site's selection provider. Clients can for example use aConvertingSelectionProvider
to first convert a selection before passing it to the action.- Since:
- 3.2
-
update
public void update(ISelection selection)
Updates the action's enablement state according to the given selection. This default implementation calls one of theselectionChanged
methods depending on the type of the passed selection.- Parameters:
selection
- the selection this action is working on
-
selectionChanged
public void selectionChanged(IStructuredSelection selection)
Notifies this action that the given structured selection has changed. This default implementation callsselectionChanged(ISelection selection)
.- Parameters:
selection
- the new selection
-
run
public void run(IStructuredSelection selection)
Executes this actions with the given structured selection. This default implementation callsrun(ISelection selection)
.- Parameters:
selection
- the selection
-
selectionChanged
public void selectionChanged(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
Note: This method is for internal use only. Clients should not call this method.- Parameters:
selection
- the selection- Restriction:
- This method is not intended to be referenced by clients.
-
run
public void run(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
Note: This method is for internal use only. Clients should not call this method.- Parameters:
selection
- the selection- Restriction:
- This method is not intended to be referenced by clients.
-
selectionChanged
public void selectionChanged(ITextSelection selection)
Notifies this action that the given text selection has changed. This default implementation callsselectionChanged(ISelection selection)
.- Parameters:
selection
- the new selection
-
run
public void run(ITextSelection selection)
Executes this actions with the given text selection. This default implementation callsrun(ISelection selection)
.- Parameters:
selection
- the selection
-
selectionChanged
public void selectionChanged(ISelection selection)
Notifies this action that the given selection has changed. This default implementation sets the action's enablement state tofalse
.- Parameters:
selection
- the new selection
-
run
public void run(ISelection selection)
Executes this actions with the given selection. This default implementation does nothing.- Parameters:
selection
- the selection
-
selectionChanged
public void selectionChanged(SelectionChangedEvent event)
- Specified by:
selectionChanged
in interfaceISelectionChangedListener
-
-