1 /***********************************************************
2 * Rocks'n'Diamonds -- McDuffin Strikes Back! *
3 *----------------------------------------------------------*
4 * ©1995 Artsoft Development *
6 * 33659 Bielefeld-Senne *
7 * Telefon: (0521) 493245 *
8 * eMail: aeglos@valinor.owl.de *
9 * aeglos@uni-paderborn.de *
10 * q99492@pbhrzx.uni-paderborn.de *
11 *----------------------------------------------------------*
13 ***********************************************************/
23 #include <X11/Xutil.h>
24 #include <X11/Xatom.h>
26 #include <X11/Intrinsic.h>
27 #include <X11/keysymdef.h>
31 /* X11 type definitions */
33 typedef Pixmap Bitmap;
34 typedef Window DrawWindow;
35 typedef Drawable DrawBuffer;
40 typedef XButtonEvent ButtonEvent;
41 typedef XMotionEvent MotionEvent;
42 typedef XKeyEvent KeyEvent;
43 typedef XExposeEvent ExposeEvent;
44 typedef XFocusChangeEvent FocusChangeEvent;
45 typedef XClientMessageEvent ClientMessageEvent;
48 /* X11 symbol definitions */
50 #define EVENT_BUTTONPRESS ButtonPress
51 #define EVENT_BUTTONRELEASE ButtonRelease
52 #define EVENT_MOTIONNOTIFY MotionNotify
53 #define EVENT_KEYPRESS KeyPress
54 #define EVENT_KEYRELEASE KeyRelease
55 #define EVENT_EXPOSE Expose
56 #define EVENT_FOCUSIN FocusIn
57 #define EVENT_FOCUSOUT FocusOut
58 #define EVENT_CLIENTMESSAGE ClientMessage
59 #define EVENT_MAPNOTIFY MapNotify
60 #define EVENT_UNMAPNOTIFY UnmapNotify
62 #define KEY_UNDEFINED XK_VoidSymbol
64 #define KEY_Return XK_Return
65 #define KEY_Escape XK_Escape
67 #define KEY_Left XK_Left
68 #define KEY_Right XK_Right
70 #define KEY_Down XK_Down
73 #define KEY_KP_Left XK_KP_Left
74 #define KEY_KP_Right XK_KP_Right
75 #define KEY_KP_Up XK_KP_Up
76 #define KEY_KP_Down XK_KP_Down
80 #define KEY_KP_Enter XK_KP_Enter
81 #define KEY_KP_Add XK_KP_Add
82 #define KEY_KP_Subtract XK_KP_Subtract
83 #define KEY_KP_Multiply XK_KP_Multiply
84 #define KEY_KP_Divide XK_KP_Divide
85 #define KEY_KP_Separator XK_KP_Separator
88 #define KEY_Shift_L XK_Shift_L
89 #define KEY_Shift_R XK_Shift_R
90 #define KEY_Control_L XK_Control_L
91 #define KEY_Control_R XK_Control_R
92 #define KEY_Meta_L XK_Meta_L
93 #define KEY_Meta_R XK_Meta_R
94 #define KEY_Alt_L XK_Alt_L
95 #define KEY_Alt_R XK_Alt_R
96 #define KEY_Super_L XK_Super_L
97 #define KEY_Super_R XK_Super_R
98 #define KEY_Mode_switch XK_Mode_switch
99 #define KEY_Multi_key XK_Multi_key
101 #define KEY_BackSpace XK_BackSpace
102 #define KEY_Delete XK_Delete
103 #define KEY_Insert XK_Insert
104 #define KEY_Tab XK_Tab
105 #define KEY_Home XK_Home
106 #define KEY_End XK_End
107 #define KEY_Page_Up XK_Page_Up
108 #define KEY_Page_Down XK_Page_Down
109 #define KEY_Menu XK_Menu
111 #define KEY_space XK_space
112 #define KEY_exclam XK_exclam
113 #define KEY_quotedbl XK_quotedbl
114 #define KEY_numbersign XK_numbersign
115 #define KEY_dollar XK_dollar
116 #define KEY_percent XK_percent
117 #define KEY_ampersand XK_ampersand
118 #define KEY_apostrophe XK_apostrophe
119 #define KEY_parenleft XK_parenleft
120 #define KEY_parenright XK_parenright
121 #define KEY_asterisk XK_asterisk
122 #define KEY_plus XK_plus
123 #define KEY_comma XK_comma
124 #define KEY_minus XK_minus
125 #define KEY_period XK_period
126 #define KEY_slash XK_slash
128 #define KEY_colon XK_colon
129 #define KEY_semicolon XK_semicolon
130 #define KEY_less XK_less
131 #define KEY_equal XK_equal
132 #define KEY_greater XK_greater
133 #define KEY_question XK_question
136 #define KEY_bracketleft XK_bracketleft
137 #define KEY_backslash XK_backslash
138 #define KEY_bracketright XK_bracketright
139 #define KEY_asciicircum XK_asciicircum
140 #define KEY_underscore XK_underscore
141 #define KEY_grave XK_grave
143 #define KEY_quoteleft XK_quoteleft
144 #define KEY_braceleft XK_braceleft
145 #define KEY_bar XK_bar
146 #define KEY_braceright XK_braceright
147 #define KEY_asciitilde XK_asciitilde
149 #define KEY_Adiaeresis XK_Adiaeresis
150 #define KEY_Odiaeresis XK_Odiaeresis
151 #define KEY_Udiaeresis XK_Udiaeresis
152 #define KEY_adiaeresis XK_adiaeresis
153 #define KEY_odiaeresis XK_odiaeresis
154 #define KEY_udiaeresis XK_udiaeresis
155 #define KEY_ssharp XK_ssharp
222 #define KEY_KP_0 XK_KP_0
223 #define KEY_KP_1 XK_KP_1
224 #define KEY_KP_2 XK_KP_2
225 #define KEY_KP_3 XK_KP_3
226 #define KEY_KP_4 XK_KP_4
227 #define KEY_KP_5 XK_KP_5
228 #define KEY_KP_6 XK_KP_6
229 #define KEY_KP_7 XK_KP_7
230 #define KEY_KP_8 XK_KP_8
231 #define KEY_KP_9 XK_KP_9
242 #define KEY_F10 XK_F10
243 #define KEY_F11 XK_F11
244 #define KEY_F12 XK_F12
245 #define KEY_F13 XK_F13
246 #define KEY_F14 XK_F14
247 #define KEY_F15 XK_F15
248 #define KEY_F16 XK_F16
249 #define KEY_F17 XK_F17
250 #define KEY_F18 XK_F18
251 #define KEY_F19 XK_F19
252 #define KEY_F20 XK_F20
253 #define KEY_F21 XK_F21
254 #define KEY_F22 XK_F22
255 #define KEY_F23 XK_F23
256 #define KEY_F24 XK_F24