Source:SLASH'EM 0.0.7E7F2/wingem.h

Below is the full text to wingem.h from the source code of SLASH'EM 0.0.7E7F2. To link to a particular line, write [[SLASH'EM 0.0.7E7F2/wingem.h#line123 ]], for example.

The latest source code for vanilla NetHack is at Source code.

1.   /*	SCCS Id: @(#)wingem.h	3.4	1999/12/10	*/ 2.   /* Copyright (c) Christian Bressler, 1999				  */ 3.   /* NetHack may be freely redistributed. See license for details. */ 4.     5.    #ifndef WINGEM_H 6.   #define WINGEM_H 7.    8.    #define E extern 9.    10.   /* menu structure */ 11.  typedef struct Gmi{ 12.  	struct Gmi *Gmi_next; 13.  	int Gmi_glyph; 14.  	long Gmi_identifier; 15.  	char Gmi_accelerator, Gmi_groupacc; 16.  	int Gmi_attr; 17.  	char *Gmi_str; 18.  	long Gmi_count; 19.  	int Gmi_selected; 20.  } Gem_menu_item; 21.   22.   #define MAXWIN 20		/* maximum number of windows, cop-out */ 23.   24.   extern struct window_procs Gem_procs; 25.   26.   /* ### wingem1.c ### */ 27.  #ifdef CLIPPING 28.  E void NDECL(setclipped); 29.  #endif 30.  E void FDECL(docorner, (int, int)); 31.  E void NDECL(end_glyphout); 32.  E void FDECL(g_putch, (int)); 33.  E void NDECL(win_Gem_init); 34.  E int NDECL(mar_gem_init); 35.  E char NDECL(mar_ask_class); 36.  E char * NDECL(mar_ask_name); 37.  E int FDECL(mar_create_window, (int)); 38.  E void FDECL(mar_destroy_nhwindow, (int)); 39.  E void FDECL(mar_print_glyph, (int, int, int, int)); 40.  E void FDECL(mar_print_line, (int, int, int, char *)); 41.  E void FDECL(mar_set_message, (char *, char *, char *)); 42.  E Gem_menu_item *NDECL(mar_hol_inv); 43.  E void FDECL(mar_set_menu_type,(int)); 44.  E void NDECL(mar_reverse_menu); 45.  E void FDECL(mar_set_menu_title, (const char *)); 46.  E void NDECL(mar_set_accelerators); 47.  E void FDECL(mar_add_menu, (winid, Gem_menu_item *)); 48.  E void FDECL(mar_change_menu_2_text, (winid)); 49.  E void FDECL(mar_add_message, (const char *)); 50.  E void NDECL(mar_status_dirty); 51.  E int FDECL(mar_hol_win_type, (int)); 52.  E void NDECL(mar_clear_messagewin); 53.  E void FDECL(mar_set_no_glyph, (int)); 54.  E void NDECL(mar_map_curs_weiter); 55.   56.   /* external declarations */ 57.  E void FDECL(Gem_init_nhwindows, (int *, char **)); 58.  E void NDECL(Gem_player_selection); 59.  E void NDECL(Gem_askname); 60.  E void NDECL(Gem_get_nh_event) ; 61.  E void FDECL(Gem_exit_nhwindows, (const char *)); 62.  E void FDECL(Gem_suspend_nhwindows, (const char *)); 63.  E void NDECL(Gem_resume_nhwindows); 64.  E winid FDECL(Gem_create_nhwindow, (int)); 65.  E void FDECL(Gem_clear_nhwindow, (winid)); 66.  E void FDECL(Gem_display_nhwindow, (winid, BOOLEAN_P)); 67.  E void FDECL(Gem_dismiss_nhwindow, (winid)); 68.  E void FDECL(Gem_destroy_nhwindow, (winid)); 69.  E void FDECL(Gem_curs, (winid,int,int)); 70.  E void FDECL(Gem_putstr, (winid, int, const char *)); 71.  E void FDECL(Gem_display_file, (const char *, BOOLEAN_P)); 72.  E void FDECL(Gem_start_menu, (winid)); 73.  E void FDECL(Gem_add_menu, (winid,int,const ANY_P *, 74.  			CHAR_P,CHAR_P,int,const char *, BOOLEAN_P)); 75.  E void FDECL(Gem_end_menu, (winid, const char *)); 76.  E int FDECL(Gem_select_menu, (winid, int, MENU_ITEM_P **)); 77.  E char FDECL(Gem_message_menu, (CHAR_P,int,const char *)); 78.  E void NDECL(Gem_update_inventory); 79.  E void NDECL(Gem_mark_synch); 80.  E void NDECL(Gem_wait_synch); 81.  #ifdef CLIPPING 82.  E void FDECL(Gem_cliparound, (int, int)); 83.  #endif 84.  #ifdef POSITIONBAR 85.  E void FDECL(Gem_update_positionbar, (char *)); 86.  #endif 87.  E void FDECL(Gem_print_glyph, (winid,XCHAR_P,XCHAR_P,int)); 88.  E void FDECL(Gem_raw_print, (const char *)); 89.  E void FDECL(Gem_raw_print_bold, (const char *)); 90.  E int NDECL(Gem_nhgetch); 91.  E int FDECL(Gem_nh_poskey, (int *, int *, int *)); 92.  E void NDECL(Gem_nhbell); 93.  E int NDECL(Gem_doprev_message); 94.  E char FDECL(Gem_yn_function, (const char *, const char *, CHAR_P)); 95.  E void FDECL(Gem_getlin, (const char *,char *)); 96.  E int NDECL(Gem_get_ext_cmd); 97.  E void FDECL(Gem_number_pad, (int)); 98.  E void NDECL(Gem_delay_output); 99.  #ifdef CHANGE_COLOR 100. E void FDECL(Gem_change_color,(int color,long rgb,int reverse)); 101. E char * NDECL(Gem_get_color_string); 102. #endif 103.  104.  /* other defs that really should go away (they're tty specific) */ 105. E void NDECL(Gem_start_screen); 106. E void NDECL(Gem_end_screen); 107.  108.  E void FDECL(genl_outrip, (winid,int)); 109.  110.  #undef E  111. 112. #endif /* WINGEM_H */