home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / games / volume13 / ishido / part01 / gl.h < prev    next >
C/C++ Source or Header  |  1992-04-10  |  3KB  |  108 lines

  1. /*
  2.  * gl.h - Header file for gl.c graphics functions.  
  3.  *
  4.  * Note: This file can be included without including any X11 header files.
  5.  *
  6.  * Author:  John Sullivan, Amdahl Corporation (jjs40@cd.amdahl.com)
  7.  *
  8.  */
  9.  
  10. /*****************************************************************************/
  11. /* Some defines.                                                       
  12. */
  13. /*****************************************************************************/
  14.  
  15. #define GL_SCREEN_DEPTH        8
  16. #define GL_FOREGROUND        "white"
  17. #define GL_BACKGROUND        "black"
  18. #define GL_FONT                "8x13"
  19. #define GL_FONT_WIDTH        8
  20. #define GL_FONT_HEIGHT        16
  21. #define GL_FONT_DESCENT        13
  22. #define GL_BUFSIZE            128
  23.  
  24. /*****************************************************************************/
  25. /* Some GL types                                                       
  26. */
  27. /*****************************************************************************/
  28.  
  29. #define GL_FALSE    0
  30. #define GL_TRUE        1
  31. typedef int     GL_BOOL;
  32.  
  33. #define GL_EVENT_KEY    0
  34. #define GL_EVENT_BUTTON    1
  35. typedef unsigned long GL_EVENT_TYPE;
  36.  
  37. typedef struct GL_EVENT_S {
  38.     GL_EVENT_TYPE   type;
  39.     int             x, y;
  40.     int             button;
  41.     char            key;
  42. }               GL_EVENT;
  43.  
  44. typedef unsigned long GL_PIXEL;
  45. typedef unsigned long GL_BITMAP;
  46.  
  47. typedef void    (*GL_REDRAW_FUNC) ();
  48. typedef void    (*GL_EVENT_FUNC) ();
  49.  
  50. /*****************************************************************************/
  51. /* Function externs.                                                   
  52. */
  53. /*****************************************************************************/
  54.  
  55. extern void     gl_bomb();
  56. extern GL_PIXEL gl_alloc_color();
  57. extern void     gl_redraw_func();
  58. extern void     gl_event_func();
  59. extern char    *gl_event_str();
  60. extern void     gl_main_loop();
  61. extern void     gl_exit_main();
  62. extern void     gl_set_fg();
  63. extern void     gl_set_bg();
  64. extern void     gl_set_fg_bg();
  65. extern void     gl_draw_point();
  66. extern void     gl_draw_line();
  67. extern void     gl_draw_rect();
  68. extern void     gl_fill_rect();
  69. extern void     gl_draw_text();
  70. extern void     gl_ring_bell();
  71. extern GL_BITMAP gl_load_bitmap();
  72. extern void     gl_draw_bitmap();
  73. extern void     gl_init();
  74. extern void     gl_start();
  75. extern void     gl_exit();
  76.  
  77. /**********************************************************************
  78. *******/
  79.  
  80. extern void     gu_draw_border();
  81. extern void     gu_draw_centered_text();
  82. extern GL_BOOL  gu_event_in_rect();
  83.  
  84. /**********************************************************************
  85. *******/
  86.  
  87. #define GB_BUTTON_LABEL_LEN    16
  88.  
  89. typedef struct GB_BUTTON_S {
  90.     int             x, y;
  91.     int             w, h;
  92.     GL_PIXEL        border;
  93.     GL_PIXEL        background;
  94.     GL_PIXEL        flash;
  95.     GL_PIXEL        text;
  96.     char            label[GB_BUTTON_LABEL_LEN];
  97.     GL_EVENT_FUNC   event_fn;
  98. }               GB_BUTTON;
  99.  
  100. /**********************************************************************
  101. *******/
  102.  
  103. extern void     gb_draw_button();
  104. extern void     gb_draw_buttons();
  105. extern GL_BOOL  gb_event_in_button();
  106. extern void     gb_button_press();
  107. extern GL_BOOL  gb_button_event();
  108.