home *** CD-ROM | disk | FTP | other *** search
/ GEMini Atari / GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso / files / utility / gemfst15 / gemfast.h < prev    next >
Text File  |  1990-06-29  |  14KB  |  170 lines

  1. /* tab expansion/compression should be set to 4 */
  2. /**************************************************************************
  3.  *
  4.  * GEMFAST.H - Header file for common VDI and AES symbols.    
  5.  *
  6.  *    This header file contains items compatible with both GEMDEFS and OBDEFS
  7.  *    from the Alcyon system.  Note that there are no 'extern' definitions
  8.  *    for the GEM functions, because they all return a signed int and work
  9.  *    fine as autodefined functions.
  10.  *
  11.  *    If you have a lot of source already coded for #include <gemdefs.h>,
  12.  *    you can create a dummy (empty) obdefs.h file, and code a new gemdefs.h
  13.  *    file which contains only #include <gemfast.h>.    YOU CAN NO LONGER USE
  14.  *    GEMDEFS AND OBDEFS WITH THE GEMFAST BINDINGS!  For the bindings libs
  15.  *    to work correctly, this header file must be used.  
  16.  *
  17.  * Credits dept:
  18.  *     This file bears an amazing similarity to the original Alcyon GEMDEFS
  19.  *     and OBDEFS header files, which are copyrighted by Atari.  What can I
  20.  *     say?  Copyrighted or not, these are the names and values that every-
  21.  *     body uses, so OF COURSE the files look *awful* similar...
  22.  *
  23.  * Maintenance:
  24.  *    12/03/89 - v1.3
  25.  *               > Renamed a lot of functions, a name compatibility block was
  26.  *                 added at the end of this file to smooth the transition.
  27.  *               > Added NO_OBJECT, MU_MENTRY, MU_MEXIT to defines.
  28.  *               > Added XMULTI struct, even though it really belongs to v2.0
  29.  *    05/26/90 - v1.4
  30.  *               > Added RSHDR structure for imbedded resource support.
  31.  *               > Fixed all structures which defined pointers as 'long'...
  32.  *                 - ICONBLK ib_pmask, ib_pdata, ib_ptext
  33.  *                 - BITBLK  bi_pdata
  34.  *                 - USERBLK ub_code
  35.  *                 - PARMBLK pb_tree
  36.  *                 All of these structure elements now define the proper ptr.
  37.  *               > Added AESUTIL_A, AESFAST_A and VDIFAST_A symbols.    This 
  38.  *                 allows specific indication of the presence or abscence of 
  39.  *                 the bindings libraries, allowing a programmer to use the
  40.  *                 GEMFAST.H header without using the rest of GemFast.  This
  41.  *                 also allows conditional compilation code to be more 
  42.  *                 specific:    it can now test for the presence of the header
  43.  *                 file (and handle the differences in the structure defs),
  44.  *                 and it can separately test for the presence of the libs,
  45.  *                 and the extended functions available therein.
  46.  *************************************************************************/
  47.  
  48. #ifndef GEMFAST_H                /* Prevent multiple inclusion */
  49.  
  50. #define GEMFAST_H        1        /* Tell the world GEMFAST header is used */
  51. #define GEMF_VERSION    0x0141    /* Tell the world we are v1.41             */
  52.  
  53. #define AESUTIL_A        1        /* Tell the world AESFAST utils  available */
  54. #define AESFAST_A        1        /* Tell the world AESFAST lib is available */
  55. #define VDIFAST_A        1        /* Tell the world VDIFAST lib is available */
  56.  
  57.                                 /* VDI inside fill styles - new names    */
  58.                                 
  59. #define VIS_HOLLOW    0            /* these names will be phased out soon... */
  60. #define VIS_SOLID    1
  61. #define VIS_PATTERN 2
  62. #define VIS_HATCH    3
  63. #define VIS_UDPTRN    4
  64.                                 /* VDI inside fill patterns - new names */
  65.                                 
  66. #define VIP_HOLLOW    0            /* these names will be phased out soon... */
  67. #define VIP_1PTRN    1
  68. #define VIP_2PTRN    2
  69. #define VIP_3PTRN    3
  70. #define VIP_4PTRN    4
  71. #define VIP_5PTRN    5
  72. #define VIP_6PTRN    6
  73. #define VIP_SOLID    7
  74.                                 /* VDI inside fill patterns  */
  75. #define IS_HOLLOW    0
  76. #define IS_SOLID    1
  77. #define IS_PATTERN    2
  78. #define IS_HATCH    3
  79. #define IS_UDPTRN    4
  80.                                 /* VDI inside fill patterns  */
  81. #define IP_HOLLOW    0
  82. #define IP_1PTRN    1
  83. #define IP_2PTRN    2
  84. #define IP_3PTRN    3
  85. #define IP_4PTRN    4
  86. #define IP_5PTRN    5
  87. #define IP_6PTRN    6
  88. #define IP_SOLID    7
  89.                                /* VDI normal graphics drawing modes */
  90. #define MD_REPLACE    1
  91. #define MD_TRANS    2
  92. #define MD_XOR        3
  93. #define MD_ERASE    4
  94.                                /* VDI bit blt rules */
  95. #define ALL_WHITE    0
  96. #define S_AND_D     1
  97. #define S_AND_NOTD    2
  98. #define S_ONLY        3
  99. #define NOTS_AND_D    4
  100. #define D_ONLY        5
  101. #define S_XOR_D     6
  102. #define S_OR_D        7
  103. #define NOT_SORD    8
  104. #define NOT_SXORD    9
  105. #define D_INVERT    10
  106. #define NOT_D        10
  107. #define S_OR_NOTD    11
  108. #define NOT_S        12
  109. #define NOTS_OR_D    13
  110. #define NOT_SANDD    14
  111. #define ALL_BLACK    15
  112.                                     /* font types */
  113. #define IBM         3
  114. #define SMALL        5
  115.                                     /* evnt_multi flags */
  116. #define MU_KEYBD    0x0001
  117. #define MU_BUTTON    0x0002
  118. #define MU_M1        0x0004
  119. #define MU_M2        0x0008
  120. #define MU_MESAG    0x0010
  121. #define MU_TIMER    0x0020
  122.                                     /* evnt_mouse flags */
  123. #define MU_MENTRY    0x0000
  124. #define MU_MEXIT    0x0001
  125.                                     /* keyboard states */
  126. #define K_RSHIFT    0x0001
  127. #define K_LSHIFT    0x0002
  128. #define K_CTRL        0x0004
  129. #define K_ALT        0x0008
  130.                                     /* event message values */
  131. #define MN_SELECTED 10
  132. #define WM_REDRAW    20
  133. #define WM_TOPPED    21
  134. #define WM_CLOSED    22
  135. #define WM_FULLED    23
  136. #define WM_ARROWED    24
  137. #define WM_HSLID    25
  138. #define WM_VSLID    26
  139. #define WM_SIZED    27
  140. #define WM_MOVED    28
  141. #define WM_NEWTOP    29
  142. #define AC_OPEN     40
  143. #define AC_CLOSE    41
  144.                                     /* form_dial opcodes */
  145. #define FMD_START    0
  146. #define FMD_GROW    1
  147. #define FMD_SHRINK    2
  148. #define FMD_FINISH    3
  149.                                     /* rsrc_gaddr structure types */
  150. #define ROOT        0                /* this name used by MWC */
  151. #define R_TREE        0 
  152. #define R_OBJECT    1
  153. #define R_TEDINFO    2
  154. #define R_ICONBLK    3
  155. #define R_BITBLK    4
  156. #define R_STRING    5
  157. #define R_IMAGEDATA 6
  158. #define R_OBSPEC    7
  159. #define R_TEPTEXT    8
  160. #define R_TEPTMPLT    9
  161. #define R_TEPVALID✓FG≡pכ    ê✓éêOäÇ②çÉ⇦⓪rFFO≡pכ    ê✓éêOäÇ②çÖß⇧ßrFD≥O≡pכ    ê✓éêOäÇ②çüÿ⇨ü≥FDppכ    ê✓éêOäÇÆ◆Öß⇧ßrFA≡pכ    ê✓éêOäÇ⑧ää⇧äנ≥F@ppכ    ê✓éêOäÇ⑧äÆ⓪⑧O≥F@נ≡p≥rrrrrrrr@@נÇ⇩ëÇOß⇧üäé Ç⇧ê⇦Oijijppכ    ê✓éêOÉß⓪⑧rrGâוווהppכ    ê✓éêO£①É⇦⑧⇦≥rGâוווג≡pכ    ê✓éêOÿÇ①æÿ⇦≥rGâוווIJ≡p#define MOVER        0x0008
  162. #define INFO        0x0010
  163. #define SIZER        0x0020
  164. #define UPARROW     0x0040
  165. #define DNARROW     0x0080
  166. #define VSLIDE        0x0100
  167. #define LFARROW     0x0200
  168. #define RTARROW     0x0400
  169. #define HSLIDE        0x0800
  170.                                     /* wind_cÄ61É360ø¨É⑤⑦åà①Ø2ø4Ã2É+í»í'⌐""⌐⇦ÿ╱à①Ø2ø4Ã2É+í»½º⌐%É⇦ÿåà⇦ääääääääùò⓪;œÃ2/øØ´⓪360ø¨É⑤⑦åà①Ø2ø4Ã2É+ú/Ññº"⓪⇦ÿåà①Ø2ø4Ã2É+ú/º ªóÉ⇦Ö╱à①Ø2ø4Ã2É+ú/ñº#'É⇦Öåà①Ø2ø4Ã2É+ú/½º⌐%¼,½ñ⓪ə╱à①Ø2ø4Ã2É+ú/í¬⌐),,½ñ⓪əåà①Ø2ø4Ã2É+ú/¿)"½,,½ñ⓪╱à①Ø2ø4Ã2É+ú/ú*ª&,,½ñ⓪åà①Ø2ø4Ã2É+ú/ñ)ª$ó"ä£╱à①Ø2ø4Ã2É+ú/½)ª$ó"ä£