home *** CD-ROM | disk | FTP | other *** search
- /*
- File: XMPTypes.h
-
- Contains: Type definition for XMP.
-
- Written by: Vincent Lo
-
- Copyright: ⌐ 1992-1993 by Apple Computer, Inc., all rights reserved.
-
- Change History (most recent first):
-
- <20> 12/7/93 NP Removed kXMPFalse, kXMPTrue and kXMPNULL.
- <19> 12/3/93 Té Moved definition of XMPIText to PlfmType.h
- <18> 11/15/93 CC Removed definition of struct XMPLinkSpec
- <17> 10/18/93 NP Changed error code to XMPSLong from
- XMPULong.
- <16> 10/12/93 PH Moved XMPDropResult to here from DragDrop.h
- <15> 9/3/93 JBS added XMPTraversalType and XMPSiblingOrder
- <14> 7/30/93 VL Changed XMPContainerName to be ISOStr.
- <13> 7/1/93 Té change XMPIText from IntlText* to IntlText
- <12> 6/29/93 RCR Added container type
- <11> 6/23/93 Té change XMPValueType from XMPName to XMPType
- <8> 6/23/93 RCR Added XMPTypeToken
- <8> 6/15/93 RCR Change XMPFocusType to XMPISOStr
- <7> 4/29/93 NP Tweaked type XMPName, XMPISOStr. Added
- XMPType, XMPIText.
- <6> 4/29/93 VL 8.3 Name Change.
- <5> 4/15/93 VL Replaced kXMPNull with kXMPNULL.
- <4> 4/12/93 VL Added kXMPNull.
- <3> 4/9/93 VL Added XMPDoneState enum and XMPActionData.
- <2> 4/8/93 RCR Renamed XMPExceptionCode->XMPError
- <1> 4/6/93 VL first checked in
- To Do:
- */
-
- #ifndef _XMPTYPES_
- #define _XMPTYPES_
-
- #ifndef _PLFMTYPE_
- #include "PlfmType.h"
- #endif
-
- //==============================================================================
- // Constants
- //==============================================================================
-
- typedef enum { // for Undo protocol
- kXMPDone,
- kXMPUndone,
- kXMPRedone
- } XMPDoneState;
-
- typedef enum {
- kXMPDropFail,
- kXMPDropSucceed,
- kXMPDropUnfinished // Used only when DragAndDrop::StartDrag returns immediately.
- } XMPDropResult;
-
- //==============================================================================
- // Scalar Types
- //==============================================================================
-
- // Common XMP Types
-
- typedef XMPIText XMPName; // Type used for usable visible names.
-
- typedef XMPSByte* XMPISOStr; // 7 bit ascii. No embedded NULLs. NULL
- // terminated.
-
- typedef XMPISOStr XMPType; // Used for storage types, focus types,
- // data types, etc.
-
- typedef XMPULong XMPTypeToken; // Tokenized form of XMPType
-
- typedef XMPULong XMPID; // Storage Unit IDs
-
- typedef XMPType XMPValueType; // Used to identify the type of the value, e.g., TEXT, PICT and so
- // on. Obviously, the type doesn't need to be an OSType.
-
- typedef XMPUByte* TValue; // Pointer to a stream of bytes.
-
- typedef XMPSLong XMPError; // >= 32-bit exception code
-
- typedef XMPULong XMPToken; // >= 32-bit unsigned value for tokens
-
- typedef XMPULong XMPSize; // >= 32-bit unsigned value for size
-
- typedef XMPULong XMPInfoType; // The type for the part info stored in a frame
-
- typedef XMPULong XMPFlags; // >= 32-bit unsigned value for flags
-
- typedef void* XMPContainerID;
- typedef XMPISOStr XMPContainerName;
- typedef XMPISOStr XMPContainerType;
-
- typedef XMPType XMPFocusType; // This is a string, which can be tokenized
-
- typedef XMPPtr XMPActionData; // Action data for undo/redo
-
- typedef enum {
- kXMPFrameBehind,
- kXMPFrameInFront
- } XMPFramePosition;
-
- typedef enum {
- kXMPTopDown,
- kXMPBottomUp,
- kXMPChildrenOnly
- } XMPTraversalType;
-
- typedef enum {
- kXMPFrontToBack,
- kXMPBackToFront
- } XMPSiblingOrder;
-
-
- #endif // _XMPTYPES_
-