Source:NetHack 3.2.0/winprocs.h

Below is the full text to winprocs.h from the source code of NetHack 3.2.0. To link to a particular line, write [[NetHack 3.2.0/winprocs.h#line123 ]], for example.

Warning! This is the source code from an old release. For the latest release, see Source code

1.   /*	SCCS Id: @(#)winprocs.h	3.2	96/02/18	*/ 2.   /* Copyright (c) David Cohrs, 1992				  */ 3.   /* NetHack may be freely redistributed. See license for details. */ 4.     5.    #ifndef WINPROCS_H 6.   #define WINPROCS_H 7.    8.    struct window_procs { 9.       const char *name; 10.      void FDECL((*win_init_nhwindows), (int *, char **)); 11.      void NDECL((*win_player_selection)); 12.      void NDECL((*win_askname)); 13.      void NDECL((*win_get_nh_event)) ; 14.      void FDECL((*win_exit_nhwindows), (const char *)); 15.      void FDECL((*win_suspend_nhwindows), (const char *)); 16.      void NDECL((*win_resume_nhwindows)); 17.      winid FDECL((*win_create_nhwindow), (int)); 18.      void FDECL((*win_clear_nhwindow), (winid)); 19.      void FDECL((*win_display_nhwindow), (winid, BOOLEAN_P)); 20.      void FDECL((*win_destroy_nhwindow), (winid)); 21.      void FDECL((*win_curs), (winid,int,int)); 22.      void FDECL((*win_putstr), (winid, int, const char *)); 23.      void FDECL((*win_display_file), (const char *, BOOLEAN_P)); 24.      void FDECL((*win_start_menu), (winid)); 25.      void FDECL((*win_add_menu), (winid,int,const ANY_P *, 26.  		CHAR_P,int,const char *, BOOLEAN_P)); 27.      void FDECL((*win_end_menu), (winid, const char *)); 28.      int FDECL((*win_select_menu), (winid, int, MENU_ITEM_P **)); 29.      char FDECL((*win_message_menu), (CHAR_P,int,const char *)); 30.      void NDECL((*win_update_inventory)); 31.      void NDECL((*win_mark_synch)); 32.      void NDECL((*win_wait_synch)); 33.  #ifdef CLIPPING 34.      void FDECL((*win_cliparound), (int, int)); 35.  #endif 36.  #ifdef POSITIONBAR 37.      void FDECL((*win_update_positionbar), (char *)); 38.  #endif 39.      void FDECL((*win_print_glyph), (winid,XCHAR_P,XCHAR_P,int)); 40.      void FDECL((*win_raw_print), (const char *)); 41.      void FDECL((*win_raw_print_bold), (const char *)); 42.      int NDECL((*win_nhgetch)); 43.      int FDECL((*win_nh_poskey), (int *, int *, int *)); 44.      void NDECL((*win_nhbell)); 45.      int NDECL((*win_doprev_message)); 46.      char FDECL((*win_yn_function), (const char *, const char *, CHAR_P)); 47.      void FDECL((*win_getlin), (const char *,char *)); 48.      int NDECL((*win_get_ext_cmd)); 49.      void FDECL((*win_number_pad), (int)); 50.      void NDECL((*win_delay_output)); 51.  #ifdef CHANGE_COLOR 52.      void FDECL((*win_change_color), (int,long,int)); 53.      char * NDECL((*win_get_color_string)); 54.  #endif 55.   56.       /* other defs that really should go away (they're tty specific) */ 57.      void NDECL((*win_start_screen)); 58.      void NDECL((*win_end_screen)); 59.   60.       void FDECL((*win_outrip), (winid,int)); 61.  };  62.    63.   extern NEARDATA struct window_procs windowprocs; 64.   65.   /*  66.    * If you wish to only support one window system and not use procedure 67.   * pointers, add the appropriate #ifdef below. 68.   */  69.    70.   #define init_nhwindows (*windowprocs.win_init_nhwindows) 71.  #define player_selection (*windowprocs.win_player_selection) 72.  #define askname (*windowprocs.win_askname) 73.  #define get_nh_event (*windowprocs.win_get_nh_event) 74.  #define exit_nhwindows (*windowprocs.win_exit_nhwindows) 75.  #define suspend_nhwindows (*windowprocs.win_suspend_nhwindows) 76.  #define resume_nhwindows (*windowprocs.win_resume_nhwindows) 77.  #define create_nhwindow (*windowprocs.win_create_nhwindow) 78.  #define clear_nhwindow (*windowprocs.win_clear_nhwindow) 79.  #define display_nhwindow (*windowprocs.win_display_nhwindow) 80.  #define destroy_nhwindow (*windowprocs.win_destroy_nhwindow) 81.  #define curs (*windowprocs.win_curs) 82.  #define putstr (*windowprocs.win_putstr) 83.  #define display_file (*windowprocs.win_display_file) 84.  #define start_menu (*windowprocs.win_start_menu) 85.  #define add_menu (*windowprocs.win_add_menu) 86.  #define end_menu (*windowprocs.win_end_menu) 87.  #define select_menu (*windowprocs.win_select_menu) 88.  #define message_menu (*windowprocs.win_message_menu) 89.  #define update_inventory (*windowprocs.win_update_inventory) 90.  #define mark_synch (*windowprocs.win_mark_synch) 91.  #define wait_synch (*windowprocs.win_wait_synch) 92.  #ifdef CLIPPING 93.  #define cliparound (*windowprocs.win_cliparound) 94.  #endif 95.  #ifdef POSITIONBAR 96.  #define update_positionbar (*windowprocs.win_update_positionbar) 97.  #endif 98.  #define print_glyph (*windowprocs.win_print_glyph) 99.  #define raw_print (*windowprocs.win_raw_print) 100. #define raw_print_bold (*windowprocs.win_raw_print_bold) 101. #define nhgetch (*windowprocs.win_nhgetch) 102. #define nh_poskey (*windowprocs.win_nh_poskey) 103. #define nhbell (*windowprocs.win_nhbell) 104. #define nh_doprev_message (*windowprocs.win_doprev_message) 105. #define yn_function (*windowprocs.win_yn_function) 106. #define getlin (*windowprocs.win_getlin) 107. #define get_ext_cmd (*windowprocs.win_get_ext_cmd) 108. #define number_pad (*windowprocs.win_number_pad) 109. #define delay_output (*windowprocs.win_delay_output) 110. #ifdef CHANGE_COLOR 111. #define change_color (*windowprocs.win_change_color) 112. #define get_color_string (*windowprocs.win_get_color_string) 113. #endif 114.  115.  /* other defs that really should go away (they're tty specific) */ 116. #define start_screen (*windowprocs.win_start_screen) 117. #define end_screen (*windowprocs.win_end_screen) 118.  119.  #define outrip (*windowprocs.win_outrip) 120. #endif