/* * Declarations for the GEM stuff. */ /* $Id: gem.h,v 1.5 1992/11/10 02:20:20 mike Exp $ */ /* $Log: gem.h,v $ * Revision 1.5 1992/11/10 02:20:20 mike * - Added some declarations. * * Revision 1.4 1992/11/08 22:55:12 mike * - Added struct `GEM_window' and some declarations. * * Revision 1.3 1992/10/12 22:32:22 mike * - Updated comments. * * Revision 1.2 1992/10/12 22:26:04 mike * - Discarded virtual workstation `Vw_clear'. It's job is done by * `Vw_print' now. * * Revision 1.1 1992/10/02 22:31:40 mike * Initial revision * */ #ifndef GEM_H #define GEM_H #include #include #include "me2.h" typedef struct { int whandle; /* GEM window handle */ int vw_text; /* Virtual workstation handle used for text */ int wchar; /* Character width */ int hchar; /* Character height */ int font_size; /* Font size in pt */ int wkind; /* Window elements */ int wx,wy,ww,wh; /* The working area */ int fx,fy,fw,fh; /* The maximum working area */ int nlines; /* # of lines of the complete text */ int y_offset; /* # of text line in the window's top row */ } GEM_window; extern int Phys_handle; /* AES physical screen handle */ extern int Vw_print; /* Handle of 1st virtual workstation */ extern int Vw_cursor; /* Handle of 2nd virtual workstation */ extern int Wchar; /* From the graf_handle() call */ extern int Hchar; /* From the graf_handle() call */ extern int Font_size; /* Current font size in pt */ extern int Wkind; /* Window kind for the text window */ extern int Text_window; /* Window handle of the text window */ extern int Deskx,Desky; /* Position of the desktop working area */ extern int Deskw,Deskh; /* Size of the desktop working area */ extern int Workx,Worky; /* Position of the window working area */ extern int Workw,Workh; /* Size of the window working area */ extern int Fullx,Fully; /* Position of the max. working area */ extern int Fullw,Fullh; /* Size of the max. working area */ extern long *Menu_buffer; /* Buffer to hold the menu line */ extern int Menu_buffer_size; /* # of longwords in `Menu_buffer' */ extern int Cursor_x,Cursor_y; /* Cursor position (screen coords) */ extern short Clip_sem; /* Is clipping enabled? */ extern char MC2[128]; /* Complete path of MC2 */ extern char MC2_options[128]; /* Options for MC2 */ extern char MCO_pathname[NFILEN]; /* Path for *.mco file selector */ extern char MUT_pathname[NFILEN]; /* Path for *.mut file selector */ extern int Wait_flag; /* Always wait after MC2 */ extern char Setup_filename[]; /* Name of setup file */ extern unsigned int TOS_version; /* The TOS version number */ extern OBJECT *Menu; /* Pointer to the menu tree */ extern short Buffers_window; /* State of the buffers window */ extern GEM_window Bw; /* The buffers window */ extern KeyCode events(); extern void open_buffers_window(); extern void close_buffers_window(); extern char *pathfind(char *env, char *file, char *sep); extern void redraw_text_window(); extern void redraw_screen(); extern int load_setup(); #endif