public abstract class SelectionDispatchAction extends Action implements ISelectionChangedListener
IAction#run()
and the
ISelectionChangedListener#selectionChanged
according to the type of the selection.
ITextSelection
then
run(ITextSelection)
and selectionChanged(ITextSelection)
is called.IStructuredSelection
then
run(IStructuredSelection)
and
selectionChanged(IStructuredSelection)
is called.run(ISelection)
and
selectionChanged(ISelection)
.Note: This class is not intended to be subclassed outside the JDT UI plug-in.
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
Modifier | Constructor and Description |
---|---|
protected |
SelectionDispatchAction(IWorkbenchSite site)
Creates a new action with no text and no image.
|
protected |
SelectionDispatchAction(IWorkbenchSite site,
ISelectionProvider provider)
Deprecated.
Use
setSpecialSelectionProvider(ISelectionProvider) instead. This constructor will be
removed after 3.2 M5. |
Modifier and Type | Method and 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 in
setSpecialSelectionProvider(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(ISelection selection)
Executes this actions with the given selection.
|
void |
run(IStructuredSelection selection)
Executes this actions with the given structured selection.
|
void |
run(ITextSelection selection)
Executes this actions with the given text selection.
|
void |
run(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
Note: This method is for internal use only.
|
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(ITextSelection selection)
Notifies this action that the given text selection has changed.
|
void |
selectionChanged(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
Note: This method is for internal use only.
|
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.
|
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
addPropertyChangeListener, firePropertyChange, firePropertyChange, removePropertyChangeListener
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addPropertyChangeListener, removePropertyChangeListener
protected SelectionDispatchAction(IWorkbenchSite site)
Configure the action later using the set methods.
site
- the site this action is working onprotected SelectionDispatchAction(IWorkbenchSite site, ISelectionProvider provider)
setSpecialSelectionProvider(ISelectionProvider)
instead. This constructor will be
removed after 3.2 M5.Configure the action later using the set methods.
site
- the site this action is working onprovider
- a special selection provider which is used
instead of the site's selection provider or null
to use the site's
selection provider. Clients can for example use a ConvertingSelectionProvider
to first convert a selection before passing it to the action.public IWorkbenchSite getSite()
public ISelection getSelection()
public Shell getShell()
public ISelectionProvider getSelectionProvider()
setSpecialSelectionProvider(ISelectionProvider)
.public void setSpecialSelectionProvider(ISelectionProvider provider)
provider
- a special selection provider which is used
instead of the site's selection provider or null
to use the site's
selection provider. Clients can for example use a ConvertingSelectionProvider
to first convert a selection before passing it to the action.public void update(ISelection selection)
selectionChanged
methods depending on the type of the passed selection.selection
- the selection this action is working onpublic void selectionChanged(IStructuredSelection selection)
selectionChanged(ISelection selection)
.selection
- the new selectionpublic void run(IStructuredSelection selection)
run(ISelection selection)
.selection
- the selectionpublic void selectionChanged(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
selection
- the selectionpublic void run(org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection selection)
selection
- the selectionpublic void selectionChanged(ITextSelection selection)
selectionChanged(ISelection selection)
.selection
- the new selectionpublic void run(ITextSelection selection)
run(ISelection selection)
.selection
- the selectionpublic void selectionChanged(ISelection selection)
false
.selection
- the new selectionpublic void run(ISelection selection)
selection
- the selectionpublic void selectionChanged(SelectionChangedEvent event)
selectionChanged
in interface ISelectionChangedListener
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.