home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d7xx / d752 / toolmanager.lha / ToolManager / Programmers / Programmers.lha / include / libraries / toolmanager.h
C/C++ Source or Header  |  1992-09-26  |  4KB  |  108 lines

  1. #ifndef LIBRARIES_TOOLMANAGER_H
  2. #define LIBRARIES_TOOLMANAGER_H 1
  3.  
  4. /*
  5.  * libraries/toolmanager.h  V2.0
  6.  *
  7.  * shared library include file
  8.  *
  9.  * (c) 1990-1992 Stefan Becker
  10.  */
  11.  
  12. #ifndef UTILITY_TAGITEM_H
  13. #include <utility/tagitem.h>
  14. #endif
  15.  
  16. #ifndef INTUITION_INTUITION_H
  17. #include <intuition/intuition.h>
  18. #endif
  19.  
  20. #define TMLIBNAME     "toolmanager.library"
  21. #define TMLIBVERSION  2
  22.  
  23. /* ToolManager Object Types */
  24. #define TMOBJTYPE_EXEC  0
  25. #define TMOBJTYPE_IMAGE 1
  26. #define TMOBJTYPE_SOUND 2
  27. #define TMOBJTYPE_MENU  3
  28. #define TMOBJTYPE_ICON  4
  29. #define TMOBJTYPE_DOCK  5
  30. #define TMOBJTYPES      6
  31.  
  32. /* ToolManager Object Properties (see Object.doc) */
  33.  
  34. /* Type: TMOBJTYPE_EXEC */
  35. #define TMOP_Arguments  (TAG_USER +    1)
  36. #define TMOP_Command    (TAG_USER +    2) /* Also used for TMOBJTYPE_SOUND */
  37. #define TMOP_CurrentDir (TAG_USER +    3)
  38. #define TMOP_Delay      (TAG_USER +    4)
  39. #define TMOP_ExecType   (TAG_USER +    5)
  40. #define TMOP_HotKey     (TAG_USER +    6) /* Also used for TMOBJTYPE_DOCK */
  41. #define TMOP_Output     (TAG_USER +    7)
  42. #define TMOP_Path       (TAG_USER +    8)
  43. #define TMOP_Priority   (TAG_USER +    9)
  44. #define TMOP_PubScreen  (TAG_USER +   10) /* Also used for TMOBJTYPE_DOCK */
  45. #define TMOP_Stack      (TAG_USER +   11)
  46. #define TMOP_ToFront    (TAG_USER +   12)
  47.  
  48. /* Type: TMOBJTYPE_IMAGE */
  49. #define TMOP_File       (TAG_USER +  257)
  50. #define TMOP_Data       (TAG_USER +  258)
  51.  
  52. /* Type: TMOBJTYPE_SOUND */
  53. #define TMOP_Port       (TAG_USER +  513)
  54.  
  55. /* Type: TMOBJTYPE_MENU/ICON */
  56. #define TMOP_Exec       (TAG_USER +  769)
  57. #define TMOP_Sound      (TAG_USER +  770)
  58.  
  59. /* Type: TMOBJTYPE_ICON */
  60. #define TMOP_Image      (TAG_USER + 1025)
  61. #define TMOP_ShowName   (TAG_USER + 1026)
  62.  
  63. /* Type: TMOBJTYPE_ICON/DOCK */
  64. #define TMOP_LeftEdge   (TAG_USER + 1281)
  65. #define TMOP_TopEdge    (TAG_USER + 1282)
  66.  
  67. /* Type: TMOBJTYPE_DOCK */
  68. #define TMOP_Activated  (TAG_USER + 1536)
  69. #define TMOP_Centered   (TAG_USER + 1537)
  70. #define TMOP_Columns    (TAG_USER + 1538)
  71. #define TMOP_Font       (TAG_USER + 1539)
  72. #define TMOP_FrontMost  (TAG_USER + 1540)
  73. #define TMOP_Menu       (TAG_USER + 1541)
  74. #define TMOP_Pattern    (TAG_USER + 1542)
  75. #define TMOP_PopUp      (TAG_USER + 1543)
  76. #define TMOP_Text       (TAG_USER + 1544)
  77. #define TMOP_Title      (TAG_USER + 1545)
  78. #define TMOP_Tool       (TAG_USER + 1546)
  79. #define TMOP_Vertical   (TAG_USER + 1547)
  80.  
  81. /* Types for TMOP_ExecType */
  82. #define TMET_CLI   0
  83. #define TMET_WB    1
  84. #define TMET_ARexx 2
  85. #define TMET_Hook  3
  86. #define TMETYPES   4
  87.  
  88. /* Data structures for storing image sequences (TMOBJTYPE_IMAGE/TMOP_Data) */
  89. /* TMImageNode contains the data for ONE picture. Several nodes are joined */
  90. /* into a single-linked chain via tmin_Next.                               */
  91. struct TMImageNode {
  92.                     struct TMImageNode *tmin_Next; /* pointer to next node */
  93.                     UWORD              *tmin_Data; /* MEMF_CHIP memory!!   */
  94.                    };
  95.  
  96. /* TMImageData contains information about the image data, like sizes etc.   */
  97. /* You MUST initialize BOTH Image structures and they MUST BE identical     */
  98. /* except of the ImageData pointer. tmid_Normal.ImageData should point to   */
  99. /* an image data which shows the inactive state and tmid_Selected.ImageData */
  100. /* should point to an image which shows the active state.                   */
  101. struct TMImageData {
  102.                     struct Image        tmid_Normal;   /* inactive state  */
  103.                     struct Image        tmid_Selected; /* active state    */
  104.                     struct TMImageNode *tmid_Data;     /* chain of images */
  105.                    };
  106.  
  107. #endif
  108.