FBUndoManager Class Reference


Detailed Description

Access to global undo and redo functionality.

Users have the possibility of undoing and redoing actions performed using the GUI, and interacting with the undo and redo stacks with custom actions.

All undo/redo related functions should only be called inside UI event callback. Users should call TransactionBegin()/TransactionEnd() in pairs, Transaction stack must be closed before UI event callback return.

This class cannot be used as a base class.

Examples
BasicOperations/IndividualUndoCalls.py

List of all members.

Public Member Functions

  __init__ ()
  Constructor.
bool  Clear ()
  Clear the undo and redo stacks.
  Redo ()
  Redo last undone action.
  Undo (bool pNoRedo=False)
  Undo last action.
bool  TransactionBegin (str pTransactionName)
  Open transaction stack for adding transactions.
bool  TransactionIsOpen ()
  Query if transaction stack is already open.
bool  TransactionAdd (HFBUndo pUndo, FBArrayPlug pDepdendPlugArray=None)
  Add Transaction if transaction stack is open.
bool  TransactionAddModelTRS (FBModel pModel)
  Add Transaction if transaction stack is open.
bool  TransactionAddProperty (FBProperty pProperty)
  Add Transaction if transaction stack is open.
bool  TransactionAddObjectDestroy (FBComponent pObject)
  Add Transaction if transaction stack is open.
bool  TransactionEnd ()
  Close transaction stack.
bool  ActiveOperation ()
  Determine if an undo operation is in action.

Member Function Documentation

bool Clear ( )

Clear the undo and redo stacks.

Returns:
A boolean value indicating success (true) or failure (false).
Redo ( )

Redo last undone action.

Undo ( bool  pNoRedo = False )

Undo last action.

Parameters:
pNoRedo If true, once the action is undone, it cannot be redone.
bool TransactionBegin ( str  pTransactionName )

Open transaction stack for adding transactions.

Users should call TransactionBegin()/TransactionEnd() in pairs, Transaction stack must be closed before UI event callback return.

Parameters:
pTransactionName Name of Transaction.
Returns:
true if open transaction stack successfully.
bool TransactionIsOpen ( )

Query if transaction stack is already open.

Returns:
true if transaction is already open.
bool TransactionAdd ( HFBUndo  pUndo,
FBArrayPlug  pDepdendPlugArray = None 
)

Add Transaction if transaction stack is open.

Multiple custom actions could be added into transaction stack by calling this function multiple times.

Parameters:
pUndo Custom undoable action to be added, FBUndoManager takes ownership of pUndo.
pDepdendPlugArray Usually you shold use the default value (NULL).
Returns:
true if add transaction successfully.
bool TransactionAddModelTRS ( FBModel  pModel )

Add Transaction if transaction stack is open.

Quick Function to add Model TRS in Undo Stack

Parameters:
pModel Model to backup TRS
Returns:
true if add transaction successfully.
bool TransactionAddProperty ( FBProperty  pProperty )

Add Transaction if transaction stack is open.

Quick Function to add property value in Undo Stack

Parameters:
pProperty Property to backup
Returns:
true if add transaction successfully.
bool TransactionAddObjectDestroy ( FBComponent  pObject )

Add Transaction if transaction stack is open.

Function to add object to destroy in Undo Stack

Parameters:
pObject Object to backup
Returns:
true if add transaction successfully.
bool TransactionEnd ( )

Close transaction stack.

Users should call TransactionBegin()/TransactionEnd() in pairs, Transaction stack must be closed before UI event callback return.

Returns:
true if transaction close successfully.
bool ActiveOperation ( )

Determine if an undo operation is in action.

Returns:
true the Undo Manager is performing an Undo or a Redo operation.

FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager
FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager FBUndoManager