/* tab expansion/compression should be set to 4 */ /************************************************************************** * * GEMFAST.H - Header file for common VDI and AES symbols. * * This header file contains items compatible with both GEMDEFS and OBDEFS * from the Alcyon system. Note that there are no 'extern' definitions * for the GEM functions, because they all return a signed int and work * fine as autodefined functions. * * If you have a lot of source already coded for #include , * you can create a dummy (empty) obdefs.h file, and code a new gemdefs.h * file which contains only #include . YOU CAN NO LONGER USE * GEMDEFS AND OBDEFS WITH THE GEMFAST BINDINGS! For the bindings libs * to work correctly, this header file must be used. * * Credits dept: * This file bears an amazing similarity to the original Alcyon GEMDEFS * and OBDEFS header files, which are copyrighted by Atari. What can I * say? Copyrighted or not, these are the names and values that every- * body uses, so OF COURSE the files look *awful* similar... * * Maintenance: * 12/03/89 - v1.3 * > Renamed a lot of functions, a name compatibility block was * added at the end of this file to smooth the transition. * > Added NO_OBJECT, MU_MENTRY, MU_MEXIT to defines. * > Added XMULTI struct, even though it really belongs to v2.0 * 05/26/90 - v1.4 * > Added RSHDR structure for imbedded resource support. * > Fixed all structures which defined pointers as 'long'... * - ICONBLK ib_pmask, ib_pdata, ib_ptext * - BITBLK bi_pdata * - USERBLK ub_code * - PARMBLK pb_tree * All of these structure elements now define the proper ptr. * > Added AESUTIL_A, AESFAST_A and VDIFAST_A symbols. This * allows specific indication of the presence or abscence of * the bindings libraries, allowing a programmer to use the * GEMFAST.H header without using the rest of GemFast. This * also allows conditional compilation code to be more * specific: it can now test for the presence of the header * file (and handle the differences in the structure defs), * and it can separately test for the presence of the libs, * and the extended functions available therein. *************************************************************************/ #ifndef GEMFAST_H /* Prevent multiple inclusion */ #define GEMFAST_H 1 /* Tell the world GEMFAST header is used */ #define GEMF_VERSION 0x0141 /* Tell the world we are v1.41 */ #define AESUTIL_A 1 /* Tell the world AESFAST utils available */ #define AESFAST_A 1 /* Tell the world AESFAST lib is available */ #define VDIFAST_A 1 /* Tell the world VDIFAST lib is available */ /* VDI inside fill styles - new names */ #define VIS_HOLLOW 0 /* these names will be phased out soon... */ #define VIS_SOLID 1 #define VIS_PATTERN 2 #define VIS_HATCH 3 #define VIS_UDPTRN 4 /* VDI inside fill patterns - new names */ #define VIP_HOLLOW 0 /* these names will be phased out soon... */ #define VIP_1PTRN 1 #define VIP_2PTRN 2 #define VIP_3PTRN 3 #define VIP_4PTRN 4 #define VIP_5PTRN 5 #define VIP_6PTRN 6 #define VIP_SOLID 7 /* VDI inside fill patterns */ #define IS_HOLLOW 0 #define IS_SOLID 1 #define IS_PATTERN 2 #define IS_HATCH 3 #define IS_UDPTRN 4 /* VDI inside fill patterns */ #define IP_HOLLOW 0 #define IP_1PTRN 1 #define IP_2PTRN 2 #define IP_3PTRN 3 #define IP_4PTRN 4 #define IP_5PTRN 5 #define IP_6PTRN 6 #define IP_SOLID 7 /* VDI normal graphics drawing modes */ #define MD_REPLACE 1 #define MD_TRANS 2 #define MD_XOR 3 #define MD_ERASE 4 /* VDI bit blt rules */ #define ALL_WHITE 0 #define S_AND_D 1 #define S_AND_NOTD 2 #define S_ONLY 3 #define NOTS_AND_D 4 #define D_ONLY 5 #define S_XOR_D 6 #define S_OR_D 7 #define NOT_SORD 8 #define NOT_SXORD 9 #define D_INVERT 10 #define NOT_D 10 #define S_OR_NOTD 11 #define NOT_S 12 #define NOTS_OR_D 13 #define NOT_SANDD 14 #define ALL_BLACK 15 /* font types */ #define IBM 3 #define SMALL 5 /* evnt_multi flags */ #define MU_KEYBD 0x0001 #define MU_BUTTON 0x0002 #define MU_M1 0x0004 #define MU_M2 0x0008 #define MU_MESAG 0x0010 #define MU_TIMER 0x0020 /* evnt_mouse flags */ #define MU_MENTRY 0x0000 #define MU_MEXIT 0x0001 /* keyboard states */ #define K_RSHIFT 0x0001 #define K_LSHIFT 0x0002 #define K_CTRL 0x0004 #define K_ALT 0x0008 /* event message values */ #define MN_SELECTED 10 #define WM_REDRAW 20 #define WM_TOPPED 21 #define WM_CLOSED 22 #define WM_FULLED 23 #define WM_ARROWED 24 #define WM_HSLID 25 #define WM_VSLID 26 #define WM_SIZED 27 #define WM_MOVED 28 #define WM_NEWTOP 29 #define AC_OPEN 40 #define AC_CLOSE 41 /* form_dial opcodes */ #define FMD_START 0 #define FMD_GROW 1 #define FMD_SHRINK 2 #define FMD_FINISH 3 /* rsrc_gaddr structure types */ #define ROOT 0 /* this name used by MWC */ #define R_TREE 0 #define R_OBJECT 1 #define R_TEDINFO 2 #define R_ICONBLK 3 #define R_BITBLK 4 #define R_STRING 5 #define R_IMAGEDATA 6 #define R_OBSPEC 7 #define R_TEPTEXT 8 #define R_TEPTMPLT 9 #define R_TEPVALIDFGπpΜ ˆ‚ˆO„€‡rFFOπpΜ ˆ‚ˆO„€‡™žžrFDςOπpΜ ˆ‚ˆO„€‡˜ςFDppΜ ˆ‚ˆO„€’™žžrFAπpΜ ˆ‚ˆO„€„„„ΟςF@ppΜ ˆ‚ˆO„€„’OςF@Οπpςrrrrrrrr@@Ο€‰€Ož„‚ €ˆOΐΐppΜ ˆ‚ˆOžrrGƒΗΗΗΖppΜ ˆ‚ˆOœςrGƒΗΗΗΔπpΜ ˆ‚ˆO˜€‘˜ςrGƒΗΗΗΑπp#define MOVER 0x0008 #define INFO 0x0010 #define SIZER 0x0020 #define UPARROW 0x0040 #define DNARROW 0x0080 #define VSLIDE 0x0100 #define LFARROW 0x0200 #define RTARROW 0x0400 #define HSLIDE 0x0800 /* 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+£/«)¦$’"„œ