home *** CD-ROM | disk | FTP | other *** search
- /*
- File: Undo.h
-
- Contains: Class definition for XMPAbsUndo
-
- Written by: Vincent Lo, Nick Pilch
-
- Copyright: ⌐ 1993-94 by Apple Computer, Inc., all rights reserved.
-
- Change History (most recent first):
-
- <11> 2/9/94 NP Tiger Team cleanup.
- <10> 2/7/94 NP Tiger Team doings.
- <9> 1/14/94 NP Init changes.
- <8> 1/13/94 NP API Changes.
- <7> 1/10/94 NP Small parameter change.
- <6> 12/15/93 NP Abs/Mac breakout. Also, PeekUndoHistory and
- PeekRedoHistory return booleans.
- <5> 11/19/93 NP Changed XMPName to XMPName* for all
- functions.
- <4> 8/9/93 NP Added class id string.
- <3> 4/23/93 RCR Rename Includes.
- <2> 4/23/93 VL Added Initialize and Purge.
- <1> 4/9/93 VL first checked in
-
- To Do:
- */
-
- #ifndef _UNDO_
- #define _UNDO_
-
- #ifndef _XMPOBJ_
- #include "XMPObj.h"
- #endif
-
- #ifndef _XMPTYPES_
- #include "XMPTypes.h"
- #endif
-
- //==============================================================================
- // Constants
- //==============================================================================
-
- enum XMPRespectMarksChoices
- {
- kXMPDontRespectMarks,
- kXMPRespectMarks
- };
-
- enum XMPActionType
- {
- kXMPSingleAction,
- kXMPBeginAction,
- kXMPEndAction
- };
-
- //==============================================================================
- // Classes defined in this interface
- //==============================================================================
-
- class XMPAbsUndo;
-
- //==============================================================================
- // Classes used by this interface
- //==============================================================================
-
- class XMPPart;
-
- //==============================================================================
- // XMPUndo
- //==============================================================================
-
- class XMPAbsUndo : public XMPObject
- {
- public:
-
- XMPAbsUndo() {}
- XMPVMethod ~XMPAbsUndo() {}
-
- XMPVMethod XMPSize Purge(XMPSize size)
- = 0;
-
- XMPVMethod void AddActionToHistory(XMPPart* whichPart,
- XMPActionData actionData,
- XMPActionType actionType,
- XMPName* undoActionLabel,
- XMPName* redoActionLabel)
- = 0;
-
- XMPVMethod void Undo()
- = 0;
-
- XMPVMethod void Redo()
- = 0;
-
- XMPVMethod void MarkActionHistory()
- = 0;
-
- XMPVMethod void ClearActionHistory(XMPRespectMarksChoices respectMarks)
- = 0;
-
- XMPVMethod void ClearRedoHistory()
- = 0;
-
- XMPVMethod XMPBoolean PeekUndoHistory(XMPPart** part,
- XMPActionData* actionData,
- XMPActionType* actionType,
- XMPName** actionLabel)
- = 0;
-
- XMPVMethod XMPBoolean PeekRedoHistory(XMPPart** part,
- XMPActionData* actionData,
- XMPActionType* actionType,
- XMPName** actionLabel)
- = 0;
- };
-
- #ifdef PLATFORM_MACINTOSH
- #ifndef _UNDOM_
- #include "UndoM.h"
- #endif
- #endif
-
- #endif // _UNDO_
-