Package org.eclipse.gef.commands

# Class CommandStackEvent

java.lang.Object
java.util.EventObject
org.eclipse.gef.commands.CommandStackEvent

All Implemented Interfaces:
  `Serializable`

public class CommandStackEvent extends EventObject
Instances of this class are sent whenever stack events occur. The type of event can be determined by calling `getDetail()`, and comparing the return value to constants defined by `CommandStack`.

Warning: this class is not intended to be subclassed.

Since:
  3.1
See Also:
  - Serialized Form

## Field Summary

### Fields inherited from class java.util.EventObject

`source`

## Constructor Summary

Constructors
Constructor
Description
`CommandStackEvent(CommandStack stack, Command c, int detail)`
Constructs a new event instance.

## Method Summary

Modifier and Type
Method
Description
`Command`
`getCommand()`
Returns `null` or a Command if a command is relevant to the current event.
`int`
`getDetail()`
Returns an integer identifying the type of event which has occurred.
`final boolean`
`isPostChangeEvent()`
Returns `true` if this event is fired after the stack having changed.
`final boolean`
`isPreChangeEvent()`
Returns `true` if this event is fired prior to the stack changing.

### Methods inherited from class java.util.EventObject

`getSource, toString`

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

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

## Constructor Details

### CommandStackEvent

public CommandStackEvent(CommandStack stack, Command c, int detail)
Constructs a new event instance. The stack specifies the source of the event. If a command is relevant to the event context, one should be specified. The detail indicates the type of event occurring.

Parameters:
  `stack` - the command stack
  `c` - a command or `null`
  `detail` - an integer identifier
Since:
  3.1

## Method Details

### getCommand

public Command getCommand()
Returns `null` or a Command if a command is relevant to the current event.

Returns:
  `null` or a command
Since:
  3.1

### isPreChangeEvent

public final boolean isPreChangeEvent()
Returns `true` if this event is fired prior to the stack changing.

Returns:
  `true` if pre-change event
Since:
  3.2

### isPostChangeEvent

public final boolean isPostChangeEvent()
Returns `true` if this event is fired after the stack having changed.

Returns:
  `true` if post-change event
Since:
  3.2

### getDetail

public int getDetail()
Returns an integer identifying the type of event which has occurred.

Returns:
  the detail of the event
Since:
  3.1