Package org.eclipse.ui.texteditor

## Class TextOperationAction

- java.lang.Object
- - org.eclipse.core.commands.common.EventManager
  - - org.eclipse.jface.action.AbstractAction
    - - org.eclipse.jface.action.Action
      - - org.eclipse.ui.texteditor.ResourceAction
        - - org.eclipse.ui.texteditor.TextEditorAction
          - - org.eclipse.ui.texteditor.TextOperationAction

All Implemented Interfaces:
  `IAction`, `IUpdate`

    public final class TextOperationAction
    extends TextEditorAction

An action which gets a text operation target from its text editor.

The action is initially associated with a text editor via the constructor, but can subsequently be changed using `setEditor`.

If this class is used as is, it works by asking the text editor for its text operation target adapter (using `getAdapter(ITextOperationTarget.class)`. The action runs this operation with the pre-configured opcode.

### 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
`TextOperationAction​(ResourceBundle bundle, String prefix, ITextEditor editor, int operationCode)` Creates and initializes the action for the given text editor and operation code.
`TextOperationAction​(ResourceBundle bundle, String prefix, ITextEditor editor, int operationCode, boolean runsOnReadOnly)` Creates and initializes the action for the given text editor and operation code.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `run()` The `TextOperationAction` implementation of this `IAction` method runs the operation with the current operation code.
`void` `setEditor​(ITextEditor editor)` Retargets this action to the given editor.
`void` `update()` The `TextOperationAction` implementation of this `IUpdate` method discovers the operation through the current editor's `ITextOperationTarget` adapter, and sets the enabled state accordingly.

### Methods inherited from class org.eclipse.ui.texteditor.TextEditorAction

`canModifyEditor, getTextEditor, validateEditorInputState`

### Methods inherited from class org.eclipse.ui.texteditor.ResourceAction

`getString, initialize, setHelpContextId`

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

#### TextOperationAction

    public TextOperationAction​(ResourceBundle bundle,
                               String prefix,
                               ITextEditor editor,
                               int operationCode)

Creates and initializes the action for the given text editor and operation code. The action configures its visual representation from the given resource bundle. The action works by asking the text editor at the time for its text operation target adapter (using `getAdapter(ITextOperationTarget.class)`. The action runs that operation with the given opcode.

Parameters:
  `bundle` - the resource bundle
  `prefix` - a prefix to be prepended to the various resource keys (described in `ResourceAction` constructor), or `null` if none
  `editor` - the text editor
  `operationCode` - the operation code
See Also:
  `TextEditorAction(ResourceBundle, String, ITextEditor)`

#### TextOperationAction

    public TextOperationAction​(ResourceBundle bundle,
                               String prefix,
                               ITextEditor editor,
                               int operationCode,
                               boolean runsOnReadOnly)

Creates and initializes the action for the given text editor and operation code. The action configures its visual representation from the given resource bundle. The action works by asking the text editor at the time for its text operation target adapter (using `getAdapter(ITextOperationTarget.class)`. The action runs that operation with the given opcode.

Parameters:
  `bundle` - the resource bundle
  `prefix` - a prefix to be prepended to the various resource keys (described in `ResourceAction` constructor), or `null` if none
  `editor` - the text editor
  `operationCode` - the operation code
  `runsOnReadOnly` - `true` if action can be executed on read-only files
Since:
  2.0
See Also:
  `TextEditorAction(ResourceBundle, String, ITextEditor)`

### Method Detail

#### run

    public void run()

The `TextOperationAction` implementation of this `IAction` method runs the operation with the current operation code.

Specified by:
  `run` in interface `IAction`
Overrides:
  `run` in class `Action`
See Also:
  `How radio buttons are handled`, `How check boxes are handled`

#### update

    public void update()

The `TextOperationAction` implementation of this `IUpdate` method discovers the operation through the current editor's `ITextOperationTarget` adapter, and sets the enabled state accordingly.

Specified by:
  `update` in interface `IUpdate`
Overrides:
  `update` in class `TextEditorAction`

#### setEditor

    public void setEditor​(ITextEditor editor)

Description copied from class: `TextEditorAction`
Retargets this action to the given editor.

Overrides:
  `setEditor` in class `TextEditorAction`
Parameters:
  `editor` - the new editor, or `null` if none