Package org.eclipse.compare.internal

# Class BaseCompareAction

java.lang.Object
org.eclipse.compare.internal.BaseCompareAction

All Implemented Interfaces:
  `IActionDelegate`

Direct Known Subclasses:
  `AddFromHistoryAction`, `CompareAction`, `EditionAction`

public abstract class BaseCompareAction extends Object implements IActionDelegate

## Constructor Summary

Constructors
Constructor
Description
`BaseCompareAction()`

## Method Summary

Modifier and Type
Method
Description
`protected boolean`
`isEnabled(ISelection selection)`
`final void`
`run(IAction action)`
Performs this action.
`protected abstract void`
`run(ISelection selection)`
`final void`
`selectionChanged(IAction action, ISelection selection)`
Notifies this action delegate that the selection in the workbench has changed.

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

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

## Constructor Details

### BaseCompareAction

public BaseCompareAction()

## Method Details

### run

public final void run(IAction action)
Description copied from interface: `IActionDelegate`
Performs this action.

This method is called by the proxy action when the action has been triggered. Implement this method to do the actual work.

Note: If the action delegate also implements `IActionDelegate2`, then this method is not invoked but instead the `runWithEvent(IAction, Event)` method is called.

Specified by:
  `run` in interface `IActionDelegate`
Parameters:
  `action` - the action proxy that handles the presentation portion of the action

### selectionChanged

public final void selectionChanged(IAction action, ISelection selection)
Description copied from interface: `IActionDelegate`
Notifies this action delegate that the selection in the workbench has changed.

Implementers can use this opportunity to change the availability of the action or to modify other presentation properties.

When the selection changes, the action enablement state is updated based on the criteria specified in the plugin.xml file. Then the delegate is notified of the selection change regardless of whether the enablement criteria in the plugin.xml file is met.

Specified by:
  `selectionChanged` in interface `IActionDelegate`
Parameters:
  `action` - the action proxy that handles presentation portion of the action
  `selection` - the current selection, or `null` if there is no selection.

### isEnabled

protected boolean isEnabled(ISelection selection)

### run

protected abstract void run(ISelection selection)