Package org.eclipse.jdt.ui.actions

# Class IntroduceIndirectionAction

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
org.eclipse.jdt.ui.actions.IntroduceIndirectionAction

All Implemented Interfaces:
  `IAction`, `ISelectionChangedListener`

public class IntroduceIndirectionAction extends SelectionDispatchAction
Action that introduces an indirection for a certain method. This action may be invoked on source or binary methods or method invocations with or without attached source.

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

Since:
  3.2
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
Constructor
Description
`IntroduceIndirectionAction(org.eclipse.jdt.internal.ui.javaeditor.JavaEditor editor)`
Note: This constructor is for internal use only.
`IntroduceIndirectionAction(IWorkbenchSite site)`
Creates a new `IntroduceIndirectionAction`.

## Method Summary

Modifier and Type
Method
Description
`void`
`run(ITextSelection selection)`
Executes this actions with the given text 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(IStructuredSelection selection)`
Notifies this action that the given structured selection has changed.

### Methods inherited from class org.eclipse.jdt.ui.actions.SelectionDispatchAction

`getSelection, getSelectionProvider, getShell, getSite, run, run, run, selectionChanged, selectionChanged, setSpecialSelectionProvider, update`

### 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`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### IntroduceIndirectionAction

public IntroduceIndirectionAction(org.eclipse.jdt.internal.ui.javaeditor.JavaEditor editor)
Note: This constructor is for internal use only. Clients should not call this constructor.

Parameters:
  `editor` - the compilation unit editor
Restriction:
  This constructor is not intended to be referenced by clients.

### IntroduceIndirectionAction

public IntroduceIndirectionAction(IWorkbenchSite site)
Creates a new `IntroduceIndirectionAction`.

Parameters:
  `site` - the site providing context information for this action

## Method Details

### selectionChanged

public void selectionChanged(IStructuredSelection selection)
Description copied from class: `SelectionDispatchAction`
Notifies this action that the given structured selection has changed. This default implementation calls `selectionChanged(ISelection selection)`.

Overrides:
  `selectionChanged` in class `SelectionDispatchAction`
Parameters:
  `selection` - the new selection

### selectionChanged

public void selectionChanged(ITextSelection selection)
Description copied from class: `SelectionDispatchAction`
Notifies this action that the given text selection has changed. This default implementation calls `selectionChanged(ISelection selection)`.

Overrides:
  `selectionChanged` in class `SelectionDispatchAction`
Parameters:
  `selection` - the new 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.

Overrides:
  `selectionChanged` in class `SelectionDispatchAction`
Parameters:
  `selection` - the Java text selection
Restriction:
  This method is not intended to be referenced by clients.

### run

public void run(IStructuredSelection selection)
Description copied from class: `SelectionDispatchAction`
Executes this actions with the given structured selection. This default implementation calls `run(ISelection selection)`.

Overrides:
  `run` in class `SelectionDispatchAction`
Parameters:
  `selection` - the selection

### run

public void run(ITextSelection selection)
Description copied from class: `SelectionDispatchAction`
Executes this actions with the given text selection. This default implementation calls `run(ISelection selection)`.

Overrides:
  `run` in class `SelectionDispatchAction`
Parameters:
  `selection` - the selection