home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_07 / MARK_WC2.LZH / INCLUDE / GEMDEFS.H < prev    next >
Text File  |  1988-04-27  |  5KB  |  166 lines

  1. /************************************************************************/
  2. /*    GEMDEFS.H Common GEM definitions and miscellaneous structures.    */
  3. /*        Copyright 1985 Atari Corp.                */
  4. /************************************************************************/
  5.  
  6. /*    EVENT Manager Definitions                    */
  7.                         /* multi flags        */
  8. #define MU_KEYBD  0x0001    
  9. #define MU_BUTTON 0x0002
  10. #define MU_M1     0x0004
  11. #define MU_M2     0x0008
  12. #define MU_MESAG  0x0010
  13. #define MU_TIMER  0x0020
  14.                         /* keyboard states    */
  15. #define K_RSHIFT 0x0001
  16. #define K_LSHIFT 0x0002
  17. #define K_CTRL   0x0004
  18. #define K_ALT    0x0008
  19.                         /* message values    */
  20. #define MN_SELECTED 10
  21. #define WM_REDRAW   20
  22. #define WM_TOPPED   21
  23. #define WM_CLOSED   22
  24. #define WM_FULLED   23
  25. #define WM_ARROWED  24
  26. #define WM_HSLID    25
  27. #define WM_VSLID    26
  28. #define WM_SIZED    27
  29. #define WM_MOVED    28
  30. #define WM_NEWTOP   29
  31. #define AC_OPEN     40
  32. #define AC_CLOSE    41
  33.  
  34. /*    FORM Manager Definitions                    */
  35.                         /* Form flags        */
  36. #define FMD_START  0
  37. #define FMD_GROW   1
  38. #define FMD_SHRINK 2
  39. #define FMD_FINISH 3
  40.  
  41. /*    RESOURCE Manager Definitions                    */
  42.                         /* data structure types */
  43. #define R_TREE     0
  44. #define R_OBJECT   1
  45. #define R_TEDINFO  2
  46. #define R_ICONBLK  3
  47. #define R_BITBLK   4
  48. #define R_STRING   5        /* gets pointer to free strings    */
  49. #define R_IMAGEDATA 6        /* gets pointer to free images    */
  50. #define R_OBSPEC   7
  51. #define R_TEPTEXT  8        /* sub ptrs in TEDINFO    */
  52. #define R_TEPTMPLT 9
  53. #define R_TEPVALID 10
  54. #define R_IBPMASK  11        /* sub ptrs in ICONBLK    */
  55. #define R_IBPDATA  12
  56. #define R_IBPTEXT  13
  57. #define R_BIPDATA  14        /* sub ptrs in BITBLK    */
  58. #define R_FRSTR    15        /* gets addr of ptr to free strings    */
  59. #define R_FRIMG    16        /* gets addr of ptr to free images    */
  60.  
  61.                         /* used in RSCREATE.C    */
  62. typedef struct rshdr
  63. {
  64.     int        rsh_vrsn;    /* Resource structure version #    */
  65.     unsigned int    rsh_object;    /* Offset to first object    */
  66.     unsigned int    rsh_tedinfo;    /* Offset to first tedinfo    */
  67.     unsigned int    rsh_iconblk;    /* Offset to first iconblk    */
  68.     unsigned int    rsh_bitblk;    /* Offset to first bitblk    */
  69.     unsigned int    rsh_frstr;    /* Offset to free string index    */
  70.     unsigned int    rsh_string;    /* Offset to string data    */
  71.     unsigned int    rsh_imdata;    /* Offset to image data        */
  72.     unsigned int    rsh_frimg;    /* Offset to free image index    */
  73.     unsigned int    rsh_trindex;    /* Offset to tree index        */
  74.     unsigned int    rsh_nobs;    /* Number of objects        */
  75.     unsigned int    rsh_ntree;    /* Number object trees        */
  76.     unsigned int    rsh_nted;    /* Number of tedinfo structs    */
  77.     unsigned int    rsh_nib;    /* Number of iconblk structs    */
  78.     unsigned int    rsh_nbb;    /* Number of bitblk structs    */
  79.     unsigned int    rsh_nstring;    /* Number of free strings    */
  80.     unsigned int    rsh_nimages;    /* Number of free images    */
  81.     unsigned int    rsh_rssize;    /* total bytes in resource    */
  82. } RSHDR;
  83. #define    F_ATTR    0            /* file attr for dos_create    */
  84.  
  85. /*    WINDOW Manager Definitions.                    */
  86.                         /* Window Attributes    */
  87. #define NAME    0x0001
  88. #define CLOSER  0x0002
  89. #define FULLER  0x0004
  90. #define MOVER   0x0008
  91. #define INFO    0x0010
  92. #define SIZER   0x0020
  93. #define UPARROW 0x0040
  94. #define DNARROW 0x0080
  95. #define VSLIDE  0x0100
  96. #define LFARROW 0x0200
  97. #define RTARROW 0x0400
  98. #define HSLIDE  0x0800
  99.                         /* wind_create flags    */
  100. #define WC_BORDER 0
  101. #define WC_WORK   1
  102.                         /* wind_get flags    */
  103. #define WF_KIND        1
  104. #define WF_NAME        2
  105. #define WF_INFO        3
  106. #define WF_WORKXYWH    4
  107. #define WF_CURRXYWH    5
  108. #define WF_PREVXYWH    6
  109. #define WF_FULLXYWH    7
  110. #define WF_HSLIDE    8
  111. #define WF_VSLIDE    9
  112. #define WF_TOP          10
  113. #define WF_FIRSTXYWH     11
  114. #define WF_NEXTXYWH     12
  115. #define WF_RESVD       13
  116. #define WF_NEWDESK     14
  117. #define WF_HSLSIZE       15
  118. #define WF_VSLSIZE       16
  119. #define WF_SCREEN       17
  120.                         /* update flags        */
  121. #define    END_UPDATE 0
  122. #define    BEG_UPDATE 1
  123. #define    END_MCTRL  2
  124. #define    BEG_MCTRL  3
  125.  
  126. /*    GRAPHICS Manager Definitions                    */
  127.                         /* Mouse Forms        */
  128. #define    ARROW        0
  129. #define    TEXT_CRSR   1
  130. #define    HOURGLASS   2
  131. #define BUSY_BEE    2
  132. #define    POINT_HAND  3
  133. #define    FLAT_HAND   4
  134. #define    THIN_CROSS  5
  135. #define    THICK_CROSS 6
  136. #define    OUTLN_CROSS 7
  137. #define    USER_DEF  255
  138. #define M_OFF     256
  139. #define M_ON      257
  140.  
  141. /*    MISCELLANEOUS Structures                    */
  142.                     /* Memory Form Definition Block */
  143. typedef struct fdbstr
  144. {
  145.     long        fd_addr;
  146.     int        fd_w;
  147.     int        fd_h;
  148.     int        fd_wdwidth;
  149.     int        fd_stand;
  150.     int        fd_nplanes;
  151.     int        fd_r1;
  152.     int        fd_r2;
  153.     int        fd_r3;
  154. } FDB;
  155.                     /* Mouse Form Definition Block */
  156. typedef struct mfstr
  157. {
  158.     int    mf_xhot;
  159.     int    mf_yhot;
  160.     int    mf_nplanes;
  161.     int    mf_fg;
  162.     int    mf_bg;
  163.     int    mf_mask[16];
  164.     int    mf_data[16];
  165. } MFORM ;
  166.