00001
00002
00003
00004
00005 #ifndef WINGEM_H
00006 #define WINGEM_H
00007
00008 #define E extern
00009
00010
00011 typedef struct Gmi{
00012 struct Gmi *Gmi_next;
00013 int Gmi_glyph;
00014 long Gmi_identifier;
00015 char Gmi_accelerator, Gmi_groupacc;
00016 int Gmi_attr;
00017 char *Gmi_str;
00018 long Gmi_count;
00019 int Gmi_selected;
00020 } Gem_menu_item;
00021
00022 #define MAXWIN 20
00023
00024 extern struct window_procs Gem_procs;
00025
00026
00027 #ifdef CLIPPING
00028 E void NDECL(setclipped);
00029 #endif
00030 E void FDECL(docorner, (int, int));
00031 E void NDECL(end_glyphout);
00032 E void FDECL(g_putch, (int));
00033 E void NDECL(win_Gem_init);
00034 E int NDECL(mar_gem_init);
00035 E char NDECL(mar_ask_class);
00036 E char * NDECL(mar_ask_name);
00037 E int FDECL(mar_create_window, (int));
00038 E void FDECL(mar_destroy_nhwindow, (int));
00039 E void FDECL(mar_print_glyph, (int, int, int, int));
00040 E void FDECL(mar_print_line, (int, int, int, char *));
00041 E void FDECL(mar_set_message, (char *, char *, char *));
00042 E Gem_menu_item *NDECL(mar_hol_inv);
00043 E void FDECL(mar_set_menu_type,(int));
00044 E void NDECL(mar_reverse_menu);
00045 E void FDECL(mar_set_menu_title, (const char *));
00046 E void NDECL(mar_set_accelerators);
00047 E void FDECL(mar_add_menu, (winid, Gem_menu_item *));
00048 E void FDECL(mar_change_menu_2_text, (winid));
00049 E void FDECL(mar_add_message, (const char *));
00050 E void NDECL(mar_status_dirty);
00051 E int FDECL(mar_hol_win_type, (int));
00052 E void NDECL(mar_clear_messagewin);
00053 E void FDECL(mar_set_no_glyph, (int));
00054 E void NDECL(mar_map_curs_weiter);
00055
00056
00057 E void FDECL(Gem_init_nhwindows, (int *, char **));
00058 E void NDECL(Gem_player_selection);
00059 E void NDECL(Gem_askname);
00060 E void NDECL(Gem_get_nh_event) ;
00061 E void FDECL(Gem_exit_nhwindows, (const char *));
00062 E void FDECL(Gem_suspend_nhwindows, (const char *));
00063 E void NDECL(Gem_resume_nhwindows);
00064 E winid FDECL(Gem_create_nhwindow, (int));
00065 E void FDECL(Gem_clear_nhwindow, (winid));
00066 E void FDECL(Gem_display_nhwindow, (winid, BOOLEAN_P));
00067 E void FDECL(Gem_dismiss_nhwindow, (winid));
00068 E void FDECL(Gem_destroy_nhwindow, (winid));
00069 E void FDECL(Gem_curs, (winid,int,int));
00070 E void FDECL(Gem_putstr, (winid, int, const char *));
00071 E void FDECL(Gem_display_file, (const char *, BOOLEAN_P));
00072 E void FDECL(Gem_start_menu, (winid));
00073 E void FDECL(Gem_add_menu, (winid,int,const ANY_P *,
00074 CHAR_P,CHAR_P,int,const char *, BOOLEAN_P));
00075 E void FDECL(Gem_end_menu, (winid, const char *));
00076 E int FDECL(Gem_select_menu, (winid, int, MENU_ITEM_P **));
00077 E char FDECL(Gem_message_menu, (CHAR_P,int,const char *));
00078 E void NDECL(Gem_update_inventory);
00079 E void NDECL(Gem_mark_synch);
00080 E void NDECL(Gem_wait_synch);
00081 #ifdef CLIPPING
00082 E void FDECL(Gem_cliparound, (int, int));
00083 #endif
00084 #ifdef POSITIONBAR
00085 E void FDECL(Gem_update_positionbar, (char *));
00086 #endif
00087 E void FDECL(Gem_print_glyph, (winid,XCHAR_P,XCHAR_P,int));
00088 E void FDECL(Gem_raw_print, (const char *));
00089 E void FDECL(Gem_raw_print_bold, (const char *));
00090 E int NDECL(Gem_nhgetch);
00091 E int FDECL(Gem_nh_poskey, (int *, int *, int *));
00092 E void NDECL(Gem_nhbell);
00093 E int NDECL(Gem_doprev_message);
00094 E char FDECL(Gem_yn_function, (const char *, const char *, CHAR_P));
00095 E void FDECL(Gem_getlin, (const char *,char *));
00096 E int NDECL(Gem_get_ext_cmd);
00097 E void FDECL(Gem_number_pad, (int));
00098 E void NDECL(Gem_delay_output);
00099 #ifdef CHANGE_COLOR
00100 E void FDECL(Gem_change_color,(int color,long rgb,int reverse));
00101 E char * NDECL(Gem_get_color_string);
00102 #endif
00103
00104
00105 E void NDECL(Gem_start_screen);
00106 E void NDECL(Gem_end_screen);
00107
00108 E void FDECL(genl_outrip, (winid,int));
00109
00110 #undef E
00111
00112 #endif