home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12otk1.exe / include / ODTypesB.idl < prev    next >
Text File  |  1997-04-02  |  7KB  |  291 lines

  1. /* @(#)Z 1.8 com/src/include/idl/ODTypesB.idl, odcore, od96os2, odos29712d 97/03/21 17:18:31 (96/08/26 14:20:09) */
  2. //#====START_GENERATED_PROLOG======================================
  3. //#
  4. //#
  5. //#   COMPONENT_NAME: odcore
  6. //#
  7. //#   CLASSES: none
  8. //#
  9. //#   ORIGINS: 82,27
  10. //#
  11. //#
  12. //#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
  13. //#   All Rights Reserved
  14. //#   Licensed Materials - Property of IBM
  15. //#   US Government Users Restricted Rights - Use, duplication or
  16. //#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  17. //#       
  18. //#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  19. //#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  20. //#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  21. //#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  22. //#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  23. //#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  24. //#   OR PERFORMANCE OF THIS SOFTWARE.
  25. //#
  26. //#====END_GENERATED_PROLOG========================================
  27. //#
  28. //#    Copyright:    (r) 1993 - 1995 by Apple Computer, Inc., all rights reserved.
  29.  
  30. //# Primitive and Platform-Independent Types
  31.  
  32. #ifndef _ODTYPESB_
  33. #define _ODTYPESB_
  34.  
  35. #if defined(__SOMIDL__) && defined(EMIT_GLOBAL_TYPESB)
  36. #pragma somemittypes on
  37. #endif
  38.  
  39. //==============================================================================
  40. // Constants
  41. //==============================================================================
  42.  
  43. // for Undo protocol
  44. enum ODDoneState
  45. {
  46.   kODDone,
  47.   kODUndone,
  48.   kODRedone
  49. };
  50.  
  51. //==============================================================================
  52. // Scalar Types
  53. //==============================================================================
  54.  
  55. // Common OD Types
  56.  
  57. typedef boolean        ODBoolean;    // boolean value. Do not count on its size.
  58. typedef octet          ODUByte;    // unsigned >= 8-bit value
  59. typedef char           ODSByte;    // signed >= 8-bit value
  60. typedef unsigned short ODUShort;    // unsigned >= 16-bit value
  61. typedef short          ODSShort;    // signed >= 16-bit value
  62. typedef unsigned long  ODULong;    // unsigned >= 32-bit value
  63. typedef long           ODSLong;    // signed >= 32-bit value
  64. typedef float          ODFloat;    // floating-point value
  65.  
  66. typedef void*          ODPtr;      // OD pointer
  67.  
  68. typedef string  ODISOStr;      // 7 bit ascii. No embedded NULLs. NULL
  69.                     //  terminated.
  70.  
  71. typedef ODISOStr  ODType;      // Used for storage types, focus types,
  72.                     //  data types, etc.
  73.  
  74. typedef ODULong   ODTypeToken;    // Tokenized form of ODType
  75.  
  76. typedef ODULong  ODID;        // Storage Unit IDs
  77.  
  78. typedef ODULong    ODPersistentObjectID;    // Persistent Object ID used for scripting
  79.  
  80. typedef ODType    ODValueType;    // Used to identify the type of the value, e.g., TEXT, PICT and so
  81.                     //  on. Obviously, the type doesn't need to be an OSType.
  82.  
  83. typedef ODSLong  ODError;      // >= 32-bit exception code
  84.  
  85. typedef ODULong  ODToken;      // >= 32-bit unsigned value for tokens
  86.  
  87. typedef ODULong  ODSize;      // >= 32-bit unsigned value for size
  88.  
  89. typedef ODULong   ODInfoType;    // The type for the part info stored in a frame
  90.  
  91. typedef ODULong  ODFlags;      // >= 32-bit unsigned value for flags
  92.  
  93. typedef sequence<octet> ODByteArray;    // ODByteArray should be used for foreign types larger than 4 bytes
  94.                                         // and for variable length data in general
  95.  
  96.  
  97. typedef ODByteArray ODContainerID;
  98. typedef ODISOStr ODContainerType;
  99.  
  100. typedef ODType   ODObjectType;
  101.  
  102. typedef ODType   ODFocusType;      // This is a string, which can be tokenized
  103.  
  104. typedef ODByteArray    ODActionData;      // Action data for undo/redo
  105.  
  106.  
  107. enum ODFramePosition
  108. {
  109.   kODFrameBehind,
  110.   kODFrameInFront
  111. };
  112.  
  113. enum ODTraversalType
  114. {
  115.   kODTopDown,
  116.   kODBottomUp,
  117.   kODChildrenOnly
  118. };
  119.  
  120. enum ODSiblingOrder
  121. {
  122.   kODFrontToBack,
  123.   kODBackToFront
  124. };
  125.  
  126. enum ODNSTypeSpec
  127. {
  128.   kODNSDataTypeODObject,
  129.   kODNSDataTypeODValue
  130. };
  131.  
  132. enum ODRespectMarksChoices
  133.   kODDontRespectMarks,
  134.   kODRespectMarks 
  135. };
  136.  
  137. enum ODActionType
  138. {
  139.   kODSingleAction,
  140.   kODBeginAction,
  141.   kODEndAction
  142. };
  143.  
  144.  
  145.  
  146. //==============================================================================
  147. // Imaging Types
  148. //==============================================================================
  149.  
  150. typedef ODSLong     ODFixed;        // 16.16 fixed-point value
  151. typedef ODSLong        ODFract;        //  2.30 fixed-point value
  152.  
  153. struct ODMatrix       // Transform matrix for translation, scaling,
  154. {                         // skewing, rotation or any combination.
  155.   ODFixed m[3][3];    // Same as "mapping" in QuickDraw GX.
  156. };
  157.  
  158. typedef ODSShort     ODGraphicsSystem;    // Type of graphics system
  159.        
  160. typedef ODSShort ODTransformType;
  161.  
  162. enum ODPlatformCanvasType
  163. {
  164.   kODNoPlatformCanvas,
  165.   kODPlatformStandardCanvas,
  166.   kODPlatformWindowCanvas
  167. };
  168.  
  169.  
  170. enum ODGeometryMode {
  171.     kODLoseGeometry,            // Toss out geometric info to save time or space.
  172.     kODPreserveGeometry,        // Preserve geometric info as long as possible
  173.     kODNeedsGeometry            // Must keep geometric info.
  174. };
  175.  
  176. enum ODLinkStatus
  177. {
  178.   kODInLinkDestination,
  179.   kODInLinkSource,
  180.   kODNotInLink
  181. };
  182.  
  183. enum ODHighlight{
  184.     kODNoHighlight,
  185.     kODFullHighlight,
  186.     kODDimHighlight
  187. };
  188.  
  189. //# For ODDragAndDrop
  190. enum  ODDropResult
  191. {
  192.     kODDropFail,
  193.     kODDropCopy,
  194.     kODDropMove,
  195. #ifdef _PLATFORM_OS2_
  196.     kODDropUnfinished,
  197.     kODDropLink
  198. #else  // _PLATFORM_OS2_
  199.     kODDropUnfinished
  200. #endif // not _PLATFORM_OS2_
  201. };
  202.  
  203.  
  204. //# For ODLink
  205.  
  206. typedef ODULong    ODLinkKey;
  207.  
  208.  
  209. //# For ODTranslation
  210.  
  211. enum ODTranslateResult {
  212.     kODCannotTranslate,
  213.     kODCanTranslate
  214. };
  215.  
  216. typedef ODULong ODPlatformTypeSpace;
  217.  
  218. //# For ODStorageUnit
  219.  
  220.  
  221.  
  222. typedef void*    ODValue;
  223. typedef ODID    ODValueIndex;
  224. typedef ODID    ODStorageUnitID;
  225.  
  226. const    ODULong kODStorageUnitRefSize = 4;
  227. typedef ODUByte ODStorageUnitRef[kODStorageUnitRefSize];
  228.  
  229. typedef ODULong ODStorageUnitKey;
  230.  
  231. typedef ODISOStr  ODPropertyName;
  232. typedef ODISOStr  ODStorageUnitName;
  233. typedef ODULong ODPositionCode;
  234.  
  235. //# For ODDocument
  236.  
  237. typedef  ODID        ODDocumentID;
  238.  
  239. //# For ODDraft
  240.  
  241. enum ODPurgePriority {
  242.     kODInvisibleBlocks,
  243.     kODAllBlocks,
  244.     kODVisibleBlocks
  245. }; 
  246.  
  247. enum ODCloneKind {
  248.     kODCloneCopy,
  249.     kODCloneCut,
  250.     kODClonePaste,
  251.     kODCloneDropCopy,
  252.     kODCloneDropMove,
  253.     kODCloneToLink,
  254.     kODCloneFromLink
  255. };
  256.  
  257. enum ODDraftPermissions {
  258.     kODDPNone,
  259.     kODDPTransient,
  260.     kODDPReadOnly,
  261.     kODDPSharedWrite,
  262.     kODDPExclusiveWrite
  263. };
  264.  
  265. typedef    ODID    ODDraftID;
  266. #ifdef _PLATFORM_OS2_
  267. typedef ODID    ODLinkID;
  268. #endif // _PLATFORM_OS2_
  269. typedef    ODISOStr    ODDraftName;
  270.  
  271.  
  272. //# moved from ErrorDef.idl (NO TYPES/STRUCTS/CLASSES SHOULD BE IN .DEF FILES)
  273.  
  274. exception ODException {
  275.     ODError    error;
  276.     char    message[256];        // $$$$$ Do we really need this field???
  277. };
  278.  
  279. #if defined(__SOMIDL__) && defined(EMIT_GLOBAL_TYPES)
  280. #pragma somemittypes off
  281. #endif
  282.  
  283. module OpenDoc_Global_TypesB 
  284. {
  285.     const string OpenDoc_Types_Version = "1.0.";
  286. };
  287.  
  288. #endif //# _ODTYPESB_
  289.  
  290.