1 /* NetHack 3.6 wintype.h $NHDT-Date: 1433207914 2015/06/02 01:18:34 $ $NHDT-Branch: master $:$NHDT-Revision: 1.15 $ */
2 /* Copyright (c) David Cohrs, 1991 */
3 /* NetHack may be freely redistributed. See license for details. */
8 typedef int winid; /* a window identifier */
10 /* generic parameter - must not be any larger than a pointer */
14 struct monst *a_monst;
20 unsigned long a_ulong;
23 unsigned long *a_ulptr;
26 /* add types as needed */
28 #define ANY_P union any /* avoid typedef in prototypes */
29 /* (buggy old Ultrix compiler) */
31 /* symbolic names for the data types housed in anything */
32 /* clang-format off */
34 #define ANY_OBJ 2 /* struct obj */
35 #define ANY_MONST 3 /* struct monst (not used) */
36 #define ANY_INT 4 /* int */
37 #define ANY_CHAR 5 /* char */
38 #define ANY_UCHAR 6 /* unsigned char */
39 #define ANY_SCHAR 7 /* signed char */
40 #define ANY_UINT 8 /* unsigned int */
41 #define ANY_LONG 9 /* long */
42 #define ANY_ULONG 10 /* unsigned long */
43 #define ANY_IPTR 11 /* pointer to int */
44 #define ANY_UPTR 12 /* pointer to unsigned int */
45 #define ANY_LPTR 13 /* pointer to long */
46 #define ANY_ULPTR 14 /* pointer to unsigned long */
47 #define ANY_STR 15 /* pointer to null-terminated char string */
48 #define ANY_MASK32 16 /* 32-bit mask (stored as unsigned long) */
51 /* menu return list */
53 anything item; /* identifier */
54 long count; /* count */
56 #define MENU_ITEM_P struct mi
58 /* select_menu() "how" argument types */
59 #define PICK_NONE 0 /* user picks nothing (display only) */
60 #define PICK_ONE 1 /* only pick one */
61 #define PICK_ANY 2 /* can pick any amount */
64 /* any additional port specific types should be defined in win*.h */
71 /* attribute types for putstr; the same as the ANSI value, for convenience */
79 /* nh_poskey() modifier types */
84 #define WIN_ERR ((winid) -1)
86 /* menu window keyboard commands (may be mapped) */
87 /* clang-format off */
88 #define MENU_FIRST_PAGE '^'
89 #define MENU_LAST_PAGE '|'
90 #define MENU_NEXT_PAGE '>'
91 #define MENU_PREVIOUS_PAGE '<'
92 #define MENU_SELECT_ALL '.'
93 #define MENU_UNSELECT_ALL '-'
94 #define MENU_INVERT_ALL '@'
95 #define MENU_SELECT_PAGE ','
96 #define MENU_UNSELECT_PAGE '\\'
97 #define MENU_INVERT_PAGE '~'
98 #define MENU_SEARCH ':'
101 #endif /* WINTYPE_H */