Base class for undoable actions.
Gets a reference to the action's target object.
Applies a given state to the target object.
State to apply to the target object.
Closes the action by saving the new state. Returns true if the new state is different from the old state.
Redoes the action.
Undoes the action.