1 /* aNetHack 0.0.1 gnbind.h $ANH-Date: 1432512806 2015/05/25 00:13:26 $ $ANH-Branch: master $:$ANH-Revision: 1.10 $ */
2 /* Copyright (C) 1998 by Erik Andersen <andersee@debian.org> */
3 /* aNetHack may be freely redistributed. See license for details. */
5 #ifndef GnomeHackBind_h
6 #define GnomeHackBind_h
9 * This header files defines the interface between the window port specific
10 * code in the Gnome port and the rest of the anethack game engine.
14 #include <gdk/gdkkeysyms.h>
29 /* Create an array to keep track of the various windows */
35 typedef struct gnome_nhwindow_data
{
41 void gnome_init_nhwindows(int *argc
, char **argv
);
42 void gnome_player_selection(void);
43 void gnome_askname(void);
44 void gnome_get_nh_event(void);
45 void gnome_exit_nhwindows(const char *);
46 void gnome_suspend_nhwindows(const char *);
47 void gnome_resume_nhwindows(void);
48 winid
gnome_create_nhwindow(int type
);
49 void gnome_create_nhwindow_by_id(int type
, winid i
);
50 void gnome_clear_nhwindow(winid wid
);
51 void gnome_display_nhwindow(winid wid
, BOOLEAN_P block
);
52 void gnome_destroy_nhwindow(winid wid
);
53 void gnome_curs(winid wid
, int x
, int y
);
54 void gnome_putstr(winid wid
, int attr
, const char *text
);
55 void gnome_display_file(const char *filename
, BOOLEAN_P must_exist
);
56 void gnome_start_menu(winid wid
);
57 void gnome_add_menu(winid wid
, int glyph
, const ANY_P
*identifier
,
58 CHAR_P accelerator
, CHAR_P group_accel
, int attr
,
59 const char *str
, BOOLEAN_P presel
);
60 void gnome_end_menu(winid wid
, const char *prompt
);
61 int gnome_select_menu(winid wid
, int how
, MENU_ITEM_P
**selected
);
62 /* No need for message_menu -- we'll use genl_message_menu instead */
63 void gnome_update_inventory(void);
64 void gnome_mark_synch(void);
65 void gnome_wait_synch(void);
66 void gnome_cliparound(int x
, int y
);
67 /* The following function does the right thing. The anethack
68 * gnome_cliparound (which lacks the winid) simply calls this function.
70 void gnome_cliparound_proper(winid wid
, int x
, int y
);
71 void gnome_print_glyph(winid wid
, XCHAR_P x
, XCHAR_P y
, int glyph
);
72 void gnome_raw_print(const char *str
);
73 void gnome_raw_print_bold(const char *str
);
74 int gnome_nhgetch(void);
75 int gnome_nh_poskey(int *x
, int *y
, int *mod
);
76 void gnome_nhbell(void);
77 int gnome_doprev_message(void);
78 char gnome_yn_function(const char *question
, const char *choices
, CHAR_P def
);
79 void gnome_getlin(const char *question
, char *input
);
80 int gnome_get_ext_cmd(void);
81 void gnome_number_pad(int state
);
82 void gnome_delay_output(void);
83 void gnome_start_screen(void);
84 void gnome_end_screen(void);
85 void gnome_outrip(winid wid
, int how
, time_t when
);
86 void gnome_delete_nhwindow_by_reference(GtkWidget
*menuWin
);
88 #endif /* GnomeHackBind_h */