# com.bea.ide.actions
IAction Interface

public interface IAction
extends `ActionListener`, `PropertyChangeListener`

Fundamental action interface used by the IDE. This is a fairly simple extension of Swing's own ActionListener interface. The interface also implements PropertyChangeListener to allow the action to respond to property changes and update its state. This interface does not handle anything related to user interface. For the user interface an `IActionProxy``` is necessary. The `ActionSvc``` automatically creates an IActionProxy for each IAction that extensions register in their extension.xml.

All Known Implementing Classes
  `DefaultAction`, `DefaultPaletteAction`, `DefaultToggleAction`

All Superinterfaces
  `ActionListener`, `EventListener`, `PropertyChangeListener`

All Known Subinterfaces
  `IPaletteAction`, `IPopupAction`, `IToggleAction`

## Method Summary

`public void` | `actionPerformed`(`ActionEvent` e) Invoked when an action occurs.
`public void` | `propertyChange`(`PropertyChangeEvent` e) Updates the state of this action using the given property change event.

## Method Detail

### actionPerformed(ActionEvent) Method

    public void actionPerformed(ActionEvent e)

Invoked when an action occurs.

#### Parameters

e
  AWT action event associated with this invocation.

### propertyChange(PropertyChangeEvent) Method

    public void propertyChange(PropertyChangeEvent e)

Updates the state of this action using the given property change event. The action service automatically propagates the following change events to all actions: `Application.PROP_ActiveWorkspace```, `Application.PROP_ActiveProject```, and `Application.PROP_ActiveDocumentView```.

#### Parameters

e
  Property change event to respond to. This may be `null` if a refresh is forced. Actions may choose to simply ignore this case. They are guaranteed to receive notification for each of the events listed above. If their state depends solely on those, `null` may be ignored (as long as the initial state is properly set).