#include <RmUndo.h>
Inheritance diagram for RmUndoOp:

Public Member Functions | |
| RmUndoOp (const RM_TCHAR *strOpName) | |
| Constructor. | |
| virtual | ~RmUndoOp () |
| Destructor. | |
| RmStringT | GetOpName () const |
| Op name. | |
| virtual void | ExecuteUndo () |
| Execute undo. | |
| virtual void | ExecuteRedo () |
| Execute redo. | |
| bool | IsUndone () const |
| void | AddChild (RmUndoOp *pUndoOp) |
| Add child operation. | |
| void | RemoveChild (RmUndoOp *pUndoOp) |
| Remove child operation. | |
| void | RemoveAllChildren () |
| Remove all children. | |
| RmUndoOpListIterator | BeginChild () |
| Begin iterator for child ops. | |
| RmUndoOpListConstIterator | BeginChild () const |
| Begin iterator for child ops. | |
| RmUndoOpListIterator | EndChild () |
| End iterator for child ops. | |
| RmUndoOpListConstIterator | EndChild () const |
| End iterator for child ops. | |
| int | GetNumChildren () const |
| Number of children. | |
Protected Member Functions | |
| virtual void | Undo () |
| Undo execution. | |
| virtual void | Redo () |
| Redo execution. | |
| void | UndoChildren () |
| Handle undo of children. | |
| void | RedoChildren () |
| Handle Redo of children. | |
Protected Attributes | |
| RmUndoOpList | m_childList |
| List of children undo's. | |
| bool | m_isUndone |
| True, if Undo is executed and waiting to be redone. | |
| RmStringT | m_strOpName |
| Operation name. | |
To create new undo op, derive a class from this and override Undo/Redo to do any customized action.
Undo op can be hierarchical. Meaning one undo op may have one or more children. When Undo'ing the operation, all children's Undo get executed before parent's undo. When Redo'ing the operation, parent's Redo gets executed before children.
|
|
Constructor. Constructor |
|
|
Destructor. Destructor |
|
|
Add child operation. Add child op to this op pUndoOp Undo op to add as child
|
|
|
Begin iterator for child ops. Begin iterator for child ops
|
|
|
Begin iterator for child ops. Begin iterator for child ops
|
|
|
End iterator for child ops. End iterator for child ops
|
|
|
End iterator for child ops. End iterator for child ops
|
|
|
Execute redo. Execute undo. Handle this class's Redo then process alll children's redo
|
|
|
Execute undo. Execute undo. Handle alll undo of children then call Undo of this class
|
|
|
Number of children. Returns Number of child undo ops belong to this op.
|
|
|
Op name. Operation name
|
|
|
Redo execution. Override these to perform customized redo
Reimplemented in RmDeleteNodeUndoOp, RmAddNodeUndoOp, RmRenameNodeUndoOp, RmSemanticChangeUndoOp, RmModelOrientationChangeUndoOp, RmTextureOriginChangeUndoOp, RmUpdateNodeUndoOp, RmChangeActiveEffectUndoOp, RmBeginMessageBlockUndoOp, and RmEndMessageBlockUndoOp. |
|
|
Handle Redo of children. Handle redo of children
|
|
|
Remove all children. Remove all children operations
|
|
|
Remove child operation. Remove child op from this op
|
|
|
Undo execution. Override these to perform customized undo
Reimplemented in RmDeleteNodeUndoOp, RmAddNodeUndoOp, RmRenameNodeUndoOp, RmSemanticChangeUndoOp, RmModelOrientationChangeUndoOp, RmTextureOriginChangeUndoOp, RmUpdateNodeUndoOp, RmChangeActiveEffectUndoOp, RmBeginMessageBlockUndoOp, and RmEndMessageBlockUndoOp. |
|
|
Handle undo of children. Handle undo of children
|
1.3.6