sdl2-win93 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.dir-locals.el +2 -0
- data/.github/workflows/gempush.yml +29 -0
- data/.gitignore +14 -0
- data/COPYING.txt +165 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +24 -0
- data/Makefile +4 -0
- data/README.md +36 -0
- data/Rakefile +51 -0
- data/doc/po/ja.po +10357 -0
- data/ext/sdl2_ext/clipboard.c +61 -0
- data/ext/sdl2_ext/color.c +103 -0
- data/ext/sdl2_ext/color.h +4 -0
- data/ext/sdl2_ext/event.c +1298 -0
- data/ext/sdl2_ext/extconf.rb +22 -0
- data/ext/sdl2_ext/filesystem.c +63 -0
- data/ext/sdl2_ext/gamecontroller.c +408 -0
- data/ext/sdl2_ext/gamecontroller.c.m4 +408 -0
- data/ext/sdl2_ext/gl.c +351 -0
- data/ext/sdl2_ext/gl.c.m4 +351 -0
- data/ext/sdl2_ext/hint.c +99 -0
- data/ext/sdl2_ext/joystick.c +339 -0
- data/ext/sdl2_ext/joystick.c.m4 +339 -0
- data/ext/sdl2_ext/key.c +1302 -0
- data/ext/sdl2_ext/key.c.m4 +833 -0
- data/ext/sdl2_ext/main.c +258 -0
- data/ext/sdl2_ext/messagebox.c +233 -0
- data/ext/sdl2_ext/mixer.c +1205 -0
- data/ext/sdl2_ext/mixer.c.m4 +1205 -0
- data/ext/sdl2_ext/mouse.c +286 -0
- data/ext/sdl2_ext/rubysdl2_internal.h +127 -0
- data/ext/sdl2_ext/timer.c +63 -0
- data/ext/sdl2_ext/ttf.c +376 -0
- data/ext/sdl2_ext/ttf.c.m4 +376 -0
- data/ext/sdl2_ext/video.c +4093 -0
- data/ext/sdl2_ext/video.c.m4 +3867 -0
- data/lib/sdl2.rb +3 -0
- data/lib/sdl2/event.rb +55 -0
- data/lib/sdl2/version.rb +8 -0
- data/sample/chunk_destroy.rb +16 -0
- data/sample/gfxprimitives.rb +54 -0
- data/sample/icon.bmp +0 -0
- data/sample/memory_test/m1.rb +28 -0
- data/sample/memory_test/m2.rb +18 -0
- data/sample/memory_test/m3.rb +12 -0
- data/sample/message_box.rb +33 -0
- data/sample/music_player.rb +137 -0
- data/sample/playwave.rb +19 -0
- data/sample/primitives.rb +32 -0
- data/sample/test_clipboard.rb +16 -0
- data/sample/test_controller.rb +62 -0
- data/sample/test_joystick.rb +53 -0
- data/sample/test_keyboard.rb +52 -0
- data/sample/test_mouse.rb +50 -0
- data/sample/test_surface.rb +13 -0
- data/sample/test_ttf.rb +82 -0
- data/sample/test_video.rb +59 -0
- data/sample/testgl.rb +175 -0
- data/sample/testsprite.rb +296 -0
- data/sample/testspriteminimal.rb +75 -0
- data/sample/timer.rb +11 -0
- data/sample/version.rb +12 -0
- data/sample/video_info.rb +64 -0
- data/sdl2-win93.gemspec +31 -0
- metadata +158 -0
@@ -0,0 +1,833 @@
|
|
1
|
+
/* -*- C -*- */
|
2
|
+
#include "rubysdl2_internal.h"
|
3
|
+
#include <SDL_events.h>
|
4
|
+
#include <SDL_keyboard.h>
|
5
|
+
#include <SDL_keycode.h>
|
6
|
+
#include <SDL_scancode.h>
|
7
|
+
|
8
|
+
static VALUE mKey;
|
9
|
+
static VALUE mScan;
|
10
|
+
static VALUE mMod;
|
11
|
+
static VALUE mTextInput;
|
12
|
+
|
13
|
+
/*
|
14
|
+
* Document-module: SDL2::Key
|
15
|
+
*
|
16
|
+
* This module has "virtual" keycode constants and some
|
17
|
+
* keyboard input handling functions.
|
18
|
+
*
|
19
|
+
*/
|
20
|
+
|
21
|
+
/*
|
22
|
+
* @overload name_of(code)
|
23
|
+
* @param [Integer] code keycode
|
24
|
+
*
|
25
|
+
* Get a human-readable name for a key
|
26
|
+
*
|
27
|
+
* @return [String] the name of given keycode
|
28
|
+
* @see .keycode_from_name
|
29
|
+
* @see SDL2::Key::Scan.name_of
|
30
|
+
*/
|
31
|
+
static VALUE Key_s_name_of(VALUE self, VALUE code)
|
32
|
+
{
|
33
|
+
return utf8str_new_cstr(SDL_GetKeyName(NUM2INT(code)));
|
34
|
+
}
|
35
|
+
|
36
|
+
/*
|
37
|
+
* @overload keycode_from_name(name)
|
38
|
+
* @param [String] name name of a key
|
39
|
+
*
|
40
|
+
* Get a key code from given name
|
41
|
+
* @return [Integer] keycode
|
42
|
+
* @see .name_of
|
43
|
+
* @see SDL2::Key::Scan.from_name
|
44
|
+
*/
|
45
|
+
static VALUE Key_s_keycode_from_name(VALUE self, VALUE name)
|
46
|
+
{
|
47
|
+
return INT2NUM(SDL_GetKeyFromName(StringValueCStr(name)));
|
48
|
+
}
|
49
|
+
|
50
|
+
/*
|
51
|
+
* @overload keycode_from_scancode(scancode)
|
52
|
+
* @param [Integer] scancode scancode
|
53
|
+
*
|
54
|
+
* Convert a scancode to the corresponding keycode
|
55
|
+
*
|
56
|
+
* @return [Integer]
|
57
|
+
* @see SDL2::Key::Scan.from_keycode
|
58
|
+
*/
|
59
|
+
static VALUE Key_s_keycode_from_scancode(VALUE self, VALUE scancode)
|
60
|
+
{
|
61
|
+
return INT2NUM(SDL_GetKeyFromScancode(NUM2INT(scancode)));
|
62
|
+
}
|
63
|
+
|
64
|
+
/*
|
65
|
+
* @overload pressed?(code)
|
66
|
+
* @param [Integer] code scancode
|
67
|
+
*
|
68
|
+
* Get whether the key of the given scancode is pressed or not.
|
69
|
+
*/
|
70
|
+
static VALUE Key_s_pressed_p(VALUE self, VALUE code)
|
71
|
+
{
|
72
|
+
const Uint8* state = SDL_GetKeyboardState(NULL);
|
73
|
+
SDL_Scancode scancode;
|
74
|
+
if (!state) {
|
75
|
+
SDL_PumpEvents();
|
76
|
+
state = SDL_GetKeyboardState(NULL);
|
77
|
+
if (!state)
|
78
|
+
rb_raise(eSDL2Error, "Event subsystem is not initialized");
|
79
|
+
}
|
80
|
+
scancode = NUM2UINT(code);
|
81
|
+
if (scancode >= SDL_NUM_SCANCODES)
|
82
|
+
rb_raise(rb_eArgError, "too large scancode %d", scancode);
|
83
|
+
|
84
|
+
return INT2BOOL(state[scancode]);
|
85
|
+
}
|
86
|
+
|
87
|
+
/*
|
88
|
+
* Document-module: SDL2::Key::Scan
|
89
|
+
*
|
90
|
+
* This module has "physical" key scancode constants and some
|
91
|
+
* scancode handling functions.
|
92
|
+
*/
|
93
|
+
|
94
|
+
/*
|
95
|
+
* @overload name_of(code)
|
96
|
+
* @param [Integer] code scancode
|
97
|
+
*
|
98
|
+
* Get a human-readable name of the given scancode
|
99
|
+
* @return [String]
|
100
|
+
* @see SDL2::Key.name_of
|
101
|
+
* @see .from_name
|
102
|
+
*/
|
103
|
+
static VALUE Scan_s_name_of(VALUE self, VALUE code)
|
104
|
+
{
|
105
|
+
return utf8str_new_cstr(SDL_GetScancodeName(NUM2INT(code)));
|
106
|
+
}
|
107
|
+
|
108
|
+
/*
|
109
|
+
* @overload from_name(name)
|
110
|
+
* @param [String] name name of a key
|
111
|
+
*
|
112
|
+
* Get a scancode from the key of the given name
|
113
|
+
* @return [String]
|
114
|
+
* @see .name_of
|
115
|
+
* @see SDL2::Key.keycode_from_name
|
116
|
+
*/
|
117
|
+
static VALUE Scan_s_from_name(VALUE self, VALUE name)
|
118
|
+
{
|
119
|
+
return INT2NUM(SDL_GetScancodeFromName(StringValueCStr(name)));
|
120
|
+
}
|
121
|
+
|
122
|
+
/*
|
123
|
+
* @overload from_keycode(keycode)
|
124
|
+
* @param [Integer] keycode keycode
|
125
|
+
*
|
126
|
+
* Get a keycode corresponding to the given keycode
|
127
|
+
* @return [Integer] keycode
|
128
|
+
* @see SDL2::Key.keycode_from_scancode
|
129
|
+
*/
|
130
|
+
static VALUE Scan_s_from_keycode(VALUE self, VALUE keycode)
|
131
|
+
{
|
132
|
+
return INT2NUM(SDL_GetScancodeFromKey(NUM2INT(keycode)));
|
133
|
+
}
|
134
|
+
|
135
|
+
/*
|
136
|
+
* Document-module: SDL2::Key::Mod
|
137
|
+
*
|
138
|
+
* This module has key modifier bitmask constants and
|
139
|
+
* some functions to handle key modifier states.
|
140
|
+
*/
|
141
|
+
|
142
|
+
/*
|
143
|
+
* Get the current key modifier state
|
144
|
+
*
|
145
|
+
* You can examine whether the modifier key is pressed
|
146
|
+
* using bitmask constants of {SDL2::Key::Mod}.
|
147
|
+
*
|
148
|
+
* @return [Integer] key state
|
149
|
+
*/
|
150
|
+
static VALUE Mod_s_state(VALUE self)
|
151
|
+
{
|
152
|
+
return UINT2NUM(SDL_GetModState());
|
153
|
+
}
|
154
|
+
|
155
|
+
/*
|
156
|
+
* @overload state=(keymod)
|
157
|
+
* @param [Integer] keymod key modifier flags (bits)
|
158
|
+
*
|
159
|
+
* Set the current key modifier state
|
160
|
+
*
|
161
|
+
* @note This does not change the keyboard state, only the key modifier flags.
|
162
|
+
* @return [keymod]
|
163
|
+
* @see .state
|
164
|
+
*/
|
165
|
+
static VALUE Mod_s_set_state(VALUE self, VALUE keymod)
|
166
|
+
{
|
167
|
+
SDL_SetModState(NUM2UINT(keymod));
|
168
|
+
return Qnil;
|
169
|
+
}
|
170
|
+
|
171
|
+
/*
|
172
|
+
* Document-module: SDL2::TextInput
|
173
|
+
*
|
174
|
+
* This module provides Unicode text input support.
|
175
|
+
*
|
176
|
+
* Normally, you can handle key inputs from key events
|
177
|
+
* and {SDL2::Key} module. This module is required to
|
178
|
+
* input thousands kinds of symbols like CJK languages.
|
179
|
+
* Please see {https://wiki.libsdl.org/Tutorials/TextInput}
|
180
|
+
* to understand the concept of Unicode text input.
|
181
|
+
*/
|
182
|
+
|
183
|
+
/*
|
184
|
+
* Return true if Unicode text input events are enabled.
|
185
|
+
*
|
186
|
+
* @see .start
|
187
|
+
* @see .stop
|
188
|
+
*/
|
189
|
+
static VALUE TextInput_s_active_p(VALUE self)
|
190
|
+
{
|
191
|
+
return INT2BOOL(SDL_IsTextInputActive());
|
192
|
+
}
|
193
|
+
|
194
|
+
/*
|
195
|
+
* Enable Unicode input events.
|
196
|
+
*
|
197
|
+
* @return [nil]
|
198
|
+
* @see .stop
|
199
|
+
* @see .active?
|
200
|
+
*/
|
201
|
+
static VALUE TextInput_s_start(VALUE self)
|
202
|
+
{
|
203
|
+
SDL_StartTextInput(); return Qnil;
|
204
|
+
}
|
205
|
+
|
206
|
+
/*
|
207
|
+
* Disable Unicode input events.
|
208
|
+
*
|
209
|
+
* @return [nil]
|
210
|
+
* @see .start
|
211
|
+
* @see .active?
|
212
|
+
*/
|
213
|
+
static VALUE TextInput_s_stop(VALUE self)
|
214
|
+
{
|
215
|
+
SDL_StopTextInput(); return Qnil;
|
216
|
+
}
|
217
|
+
|
218
|
+
/*
|
219
|
+
* @overload rect=(rect)
|
220
|
+
* Set the rectanlgle used to type Unicode text inputs.
|
221
|
+
*
|
222
|
+
* @param rect [SDL2::Rect] the rectangle to receive text
|
223
|
+
* @return [rect]
|
224
|
+
*/
|
225
|
+
static VALUE TextInput_s_set_rect(VALUE self, VALUE rect)
|
226
|
+
{
|
227
|
+
SDL_Rect *r = Get_SDL_Rect(rect);
|
228
|
+
SDL_SetTextInputRect(r);
|
229
|
+
return rect;
|
230
|
+
}
|
231
|
+
|
232
|
+
/*
|
233
|
+
define(`DEFINE_SCANCODE',`ifelse(`$#',`2',`$2
|
234
|
+
',`/$8* @return [Integer] scancode for "$1" key *$8/
|
235
|
+
')rb_define_const(mScan, "$1", INT2NUM(SDL_SCANCODE_$1))')
|
236
|
+
|
237
|
+
define(`DEFINE_SCANCODE_NUMBER',`/$8* @return [Integer] scancode for number key "$1" (not on keypad) *$8/
|
238
|
+
rb_define_const(mScan, "K$1", INT2NUM(SDL_SCANCODE_$1))')
|
239
|
+
|
240
|
+
define(`DEFINE_SCANCODE_ALPH',`/$8* @return [Integer] scancode for alphabet key "$1" *$8/
|
241
|
+
rb_define_const(mScan, "$1", INT2NUM(SDL_SCANCODE_$1))')
|
242
|
+
|
243
|
+
define(`DEFINE_KEYCODE', `ifelse(`$#',`2',`$2
|
244
|
+
',`/$8* @return [Integer] keycode for "$1" key *$8/
|
245
|
+
')rb_define_const(mKey, "$1", INT2NUM(SDLK_$1))')
|
246
|
+
|
247
|
+
define(`DEFINE_KEYCODE_NUMBER',`/$8* @return [Integer] keycode for number key "$1" (not on keypad) *$8/
|
248
|
+
rb_define_const(mKey, "K$1", INT2NUM(SDLK_$1))')
|
249
|
+
|
250
|
+
define(`DEFINE_KEYCODE_ALPH',`/$8* @return [Integer] keycode for alphabet key "$1" *$8/
|
251
|
+
rb_define_const(mKey, "translit($1,`a-z',`A-Z')", INT2NUM(SDLK_$1))')
|
252
|
+
|
253
|
+
define(`DEFINE_KEYMOD',`rb_define_const(mMod, "$1", INT2NUM(KMOD_$1))')
|
254
|
+
*/
|
255
|
+
void rubysdl2_init_key(void)
|
256
|
+
{
|
257
|
+
mKey = rb_define_module_under(mSDL2, "Key");
|
258
|
+
mScan = rb_define_module_under(mKey, "Scan");
|
259
|
+
mMod = rb_define_module_under(mKey, "Mod");
|
260
|
+
mTextInput = rb_define_module_under(mSDL2, "TextInput");
|
261
|
+
|
262
|
+
rb_define_module_function(mKey, "name_of", Key_s_name_of, 1);
|
263
|
+
rb_define_module_function(mKey, "keycode_from_name", Key_s_keycode_from_name, 1);
|
264
|
+
rb_define_module_function(mKey, "keycode_from_scancode", Key_s_keycode_from_scancode, 1);
|
265
|
+
rb_define_module_function(mKey, "pressed?", Key_s_pressed_p, 1);
|
266
|
+
rb_define_module_function(mScan, "name_of", Scan_s_name_of, 1);
|
267
|
+
rb_define_module_function(mScan, "from_name", Scan_s_from_name, 1);
|
268
|
+
rb_define_module_function(mScan, "from_keycode", Scan_s_from_keycode, 1);
|
269
|
+
rb_define_module_function(mMod, "state", Mod_s_state, 0);
|
270
|
+
rb_define_module_function(mMod, "state=", Mod_s_set_state, 1);
|
271
|
+
rb_define_module_function(mTextInput, "active?", TextInput_s_active_p, 0);
|
272
|
+
rb_define_module_function(mTextInput, "start", TextInput_s_start, 0);
|
273
|
+
rb_define_module_function(mTextInput, "stop", TextInput_s_stop, 0);
|
274
|
+
rb_define_module_function(mTextInput, "rect=", TextInput_s_set_rect, 1);
|
275
|
+
|
276
|
+
DEFINE_SCANCODE(UNKNOWN,/* @return [Integer] unused scancode */);
|
277
|
+
DEFINE_SCANCODE_ALPH(A);
|
278
|
+
DEFINE_SCANCODE_ALPH(B);
|
279
|
+
DEFINE_SCANCODE_ALPH(C);
|
280
|
+
DEFINE_SCANCODE_ALPH(D);
|
281
|
+
DEFINE_SCANCODE_ALPH(E);
|
282
|
+
DEFINE_SCANCODE_ALPH(F);
|
283
|
+
DEFINE_SCANCODE_ALPH(G);
|
284
|
+
DEFINE_SCANCODE_ALPH(H);
|
285
|
+
DEFINE_SCANCODE_ALPH(I);
|
286
|
+
DEFINE_SCANCODE_ALPH(J);
|
287
|
+
DEFINE_SCANCODE_ALPH(K);
|
288
|
+
DEFINE_SCANCODE_ALPH(L);
|
289
|
+
DEFINE_SCANCODE_ALPH(M);
|
290
|
+
DEFINE_SCANCODE_ALPH(N);
|
291
|
+
DEFINE_SCANCODE_ALPH(O);
|
292
|
+
DEFINE_SCANCODE_ALPH(P);
|
293
|
+
DEFINE_SCANCODE_ALPH(Q);
|
294
|
+
DEFINE_SCANCODE_ALPH(R);
|
295
|
+
DEFINE_SCANCODE_ALPH(S);
|
296
|
+
DEFINE_SCANCODE_ALPH(T);
|
297
|
+
DEFINE_SCANCODE_ALPH(U);
|
298
|
+
DEFINE_SCANCODE_ALPH(V);
|
299
|
+
DEFINE_SCANCODE_ALPH(W);
|
300
|
+
DEFINE_SCANCODE_ALPH(X);
|
301
|
+
DEFINE_SCANCODE_ALPH(Y);
|
302
|
+
DEFINE_SCANCODE_ALPH(Z);
|
303
|
+
|
304
|
+
DEFINE_SCANCODE_NUMBER(1);
|
305
|
+
DEFINE_SCANCODE_NUMBER(2);
|
306
|
+
DEFINE_SCANCODE_NUMBER(3);
|
307
|
+
DEFINE_SCANCODE_NUMBER(4);
|
308
|
+
DEFINE_SCANCODE_NUMBER(5);
|
309
|
+
DEFINE_SCANCODE_NUMBER(6);
|
310
|
+
DEFINE_SCANCODE_NUMBER(7);
|
311
|
+
DEFINE_SCANCODE_NUMBER(8);
|
312
|
+
DEFINE_SCANCODE_NUMBER(9);
|
313
|
+
DEFINE_SCANCODE_NUMBER(0);
|
314
|
+
|
315
|
+
DEFINE_SCANCODE(RETURN);
|
316
|
+
DEFINE_SCANCODE(ESCAPE);
|
317
|
+
DEFINE_SCANCODE(BACKSPACE);
|
318
|
+
DEFINE_SCANCODE(TAB);
|
319
|
+
DEFINE_SCANCODE(SPACE);
|
320
|
+
|
321
|
+
DEFINE_SCANCODE(MINUS);
|
322
|
+
DEFINE_SCANCODE(EQUALS);
|
323
|
+
DEFINE_SCANCODE(LEFTBRACKET);
|
324
|
+
DEFINE_SCANCODE(RIGHTBRACKET);
|
325
|
+
DEFINE_SCANCODE(BACKSLASH);
|
326
|
+
|
327
|
+
DEFINE_SCANCODE(NONUSHASH);
|
328
|
+
DEFINE_SCANCODE(SEMICOLON);
|
329
|
+
DEFINE_SCANCODE(APOSTROPHE);
|
330
|
+
DEFINE_SCANCODE(GRAVE);
|
331
|
+
DEFINE_SCANCODE(COMMA);
|
332
|
+
DEFINE_SCANCODE(PERIOD);
|
333
|
+
DEFINE_SCANCODE(SLASH);
|
334
|
+
|
335
|
+
DEFINE_SCANCODE(CAPSLOCK);
|
336
|
+
|
337
|
+
DEFINE_SCANCODE(F1);
|
338
|
+
DEFINE_SCANCODE(F2);
|
339
|
+
DEFINE_SCANCODE(F3);
|
340
|
+
DEFINE_SCANCODE(F4);
|
341
|
+
DEFINE_SCANCODE(F5);
|
342
|
+
DEFINE_SCANCODE(F6);
|
343
|
+
DEFINE_SCANCODE(F7);
|
344
|
+
DEFINE_SCANCODE(F8);
|
345
|
+
DEFINE_SCANCODE(F9);
|
346
|
+
DEFINE_SCANCODE(F10);
|
347
|
+
DEFINE_SCANCODE(F11);
|
348
|
+
DEFINE_SCANCODE(F12);
|
349
|
+
|
350
|
+
DEFINE_SCANCODE(PRINTSCREEN);
|
351
|
+
DEFINE_SCANCODE(SCROLLLOCK);
|
352
|
+
DEFINE_SCANCODE(PAUSE);
|
353
|
+
DEFINE_SCANCODE(INSERT);
|
354
|
+
|
355
|
+
DEFINE_SCANCODE(HOME);
|
356
|
+
DEFINE_SCANCODE(PAGEUP);
|
357
|
+
DEFINE_SCANCODE(DELETE);
|
358
|
+
DEFINE_SCANCODE(END);
|
359
|
+
DEFINE_SCANCODE(PAGEDOWN);
|
360
|
+
DEFINE_SCANCODE(RIGHT);
|
361
|
+
DEFINE_SCANCODE(LEFT);
|
362
|
+
DEFINE_SCANCODE(DOWN);
|
363
|
+
DEFINE_SCANCODE(UP);
|
364
|
+
|
365
|
+
DEFINE_SCANCODE(NUMLOCKCLEAR);
|
366
|
+
|
367
|
+
DEFINE_SCANCODE(KP_DIVIDE);
|
368
|
+
DEFINE_SCANCODE(KP_MULTIPLY);
|
369
|
+
DEFINE_SCANCODE(KP_MINUS);
|
370
|
+
DEFINE_SCANCODE(KP_PLUS);
|
371
|
+
DEFINE_SCANCODE(KP_ENTER);
|
372
|
+
DEFINE_SCANCODE(KP_1);
|
373
|
+
DEFINE_SCANCODE(KP_2);
|
374
|
+
DEFINE_SCANCODE(KP_3);
|
375
|
+
DEFINE_SCANCODE(KP_4);
|
376
|
+
DEFINE_SCANCODE(KP_5);
|
377
|
+
DEFINE_SCANCODE(KP_6);
|
378
|
+
DEFINE_SCANCODE(KP_7);
|
379
|
+
DEFINE_SCANCODE(KP_8);
|
380
|
+
DEFINE_SCANCODE(KP_9);
|
381
|
+
DEFINE_SCANCODE(KP_0);
|
382
|
+
DEFINE_SCANCODE(KP_PERIOD);
|
383
|
+
|
384
|
+
DEFINE_SCANCODE(NONUSBACKSLASH);
|
385
|
+
DEFINE_SCANCODE(APPLICATION);
|
386
|
+
DEFINE_SCANCODE(POWER);
|
387
|
+
DEFINE_SCANCODE(KP_EQUALS);
|
388
|
+
DEFINE_SCANCODE(F13);
|
389
|
+
DEFINE_SCANCODE(F14);
|
390
|
+
DEFINE_SCANCODE(F15);
|
391
|
+
DEFINE_SCANCODE(F16);
|
392
|
+
DEFINE_SCANCODE(F17);
|
393
|
+
DEFINE_SCANCODE(F18);
|
394
|
+
DEFINE_SCANCODE(F19);
|
395
|
+
DEFINE_SCANCODE(F20);
|
396
|
+
DEFINE_SCANCODE(F21);
|
397
|
+
DEFINE_SCANCODE(F22);
|
398
|
+
DEFINE_SCANCODE(F23);
|
399
|
+
DEFINE_SCANCODE(F24);
|
400
|
+
DEFINE_SCANCODE(EXECUTE);
|
401
|
+
DEFINE_SCANCODE(HELP);
|
402
|
+
DEFINE_SCANCODE(MENU);
|
403
|
+
DEFINE_SCANCODE(SELECT);
|
404
|
+
DEFINE_SCANCODE(STOP);
|
405
|
+
DEFINE_SCANCODE(AGAIN);
|
406
|
+
DEFINE_SCANCODE(UNDO);
|
407
|
+
DEFINE_SCANCODE(CUT);
|
408
|
+
DEFINE_SCANCODE(COPY);
|
409
|
+
DEFINE_SCANCODE(PASTE);
|
410
|
+
DEFINE_SCANCODE(FIND);
|
411
|
+
DEFINE_SCANCODE(MUTE);
|
412
|
+
DEFINE_SCANCODE(VOLUMEUP);
|
413
|
+
DEFINE_SCANCODE(VOLUMEDOWN);
|
414
|
+
/* not sure whether there's a reason to enable these */
|
415
|
+
/* SDL_SCANCODE_LOCKINGCAPSLOCK = 130, */
|
416
|
+
/* SDL_SCANCODE_LOCKINGNUMLOCK = 131, */
|
417
|
+
/* SDL_SCANCODE_LOCKINGSCROLLLOCK = 132, */
|
418
|
+
DEFINE_SCANCODE(KP_COMMA);
|
419
|
+
DEFINE_SCANCODE(KP_EQUALSAS400);
|
420
|
+
|
421
|
+
DEFINE_SCANCODE(INTERNATIONAL1);
|
422
|
+
|
423
|
+
DEFINE_SCANCODE(INTERNATIONAL2);
|
424
|
+
DEFINE_SCANCODE(INTERNATIONAL3);
|
425
|
+
DEFINE_SCANCODE(INTERNATIONAL4);
|
426
|
+
DEFINE_SCANCODE(INTERNATIONAL5);
|
427
|
+
DEFINE_SCANCODE(INTERNATIONAL6);
|
428
|
+
DEFINE_SCANCODE(INTERNATIONAL7);
|
429
|
+
DEFINE_SCANCODE(INTERNATIONAL8);
|
430
|
+
DEFINE_SCANCODE(INTERNATIONAL9);
|
431
|
+
DEFINE_SCANCODE(LANG1);
|
432
|
+
DEFINE_SCANCODE(LANG2);
|
433
|
+
DEFINE_SCANCODE(LANG3);
|
434
|
+
DEFINE_SCANCODE(LANG4);
|
435
|
+
DEFINE_SCANCODE(LANG5);
|
436
|
+
DEFINE_SCANCODE(LANG6);
|
437
|
+
DEFINE_SCANCODE(LANG7);
|
438
|
+
DEFINE_SCANCODE(LANG8);
|
439
|
+
DEFINE_SCANCODE(LANG9);
|
440
|
+
|
441
|
+
DEFINE_SCANCODE(ALTERASE);
|
442
|
+
DEFINE_SCANCODE(SYSREQ);
|
443
|
+
DEFINE_SCANCODE(CANCEL);
|
444
|
+
DEFINE_SCANCODE(CLEAR);
|
445
|
+
DEFINE_SCANCODE(PRIOR);
|
446
|
+
DEFINE_SCANCODE(RETURN2);
|
447
|
+
DEFINE_SCANCODE(SEPARATOR);
|
448
|
+
DEFINE_SCANCODE(OUT);
|
449
|
+
DEFINE_SCANCODE(OPER);
|
450
|
+
DEFINE_SCANCODE(CLEARAGAIN);
|
451
|
+
DEFINE_SCANCODE(CRSEL);
|
452
|
+
DEFINE_SCANCODE(EXSEL);
|
453
|
+
|
454
|
+
DEFINE_SCANCODE(KP_00);
|
455
|
+
DEFINE_SCANCODE(KP_000);
|
456
|
+
DEFINE_SCANCODE(THOUSANDSSEPARATOR);
|
457
|
+
DEFINE_SCANCODE(DECIMALSEPARATOR);
|
458
|
+
DEFINE_SCANCODE(CURRENCYUNIT);
|
459
|
+
DEFINE_SCANCODE(CURRENCYSUBUNIT);
|
460
|
+
DEFINE_SCANCODE(KP_LEFTPAREN);
|
461
|
+
DEFINE_SCANCODE(KP_RIGHTPAREN);
|
462
|
+
DEFINE_SCANCODE(KP_LEFTBRACE);
|
463
|
+
DEFINE_SCANCODE(KP_RIGHTBRACE);
|
464
|
+
DEFINE_SCANCODE(KP_TAB);
|
465
|
+
DEFINE_SCANCODE(KP_BACKSPACE);
|
466
|
+
DEFINE_SCANCODE(KP_A);
|
467
|
+
DEFINE_SCANCODE(KP_B);
|
468
|
+
DEFINE_SCANCODE(KP_C);
|
469
|
+
DEFINE_SCANCODE(KP_D);
|
470
|
+
DEFINE_SCANCODE(KP_E);
|
471
|
+
DEFINE_SCANCODE(KP_F);
|
472
|
+
DEFINE_SCANCODE(KP_XOR);
|
473
|
+
DEFINE_SCANCODE(KP_POWER);
|
474
|
+
DEFINE_SCANCODE(KP_PERCENT);
|
475
|
+
DEFINE_SCANCODE(KP_LESS);
|
476
|
+
DEFINE_SCANCODE(KP_GREATER);
|
477
|
+
DEFINE_SCANCODE(KP_AMPERSAND);
|
478
|
+
DEFINE_SCANCODE(KP_DBLAMPERSAND);
|
479
|
+
DEFINE_SCANCODE(KP_VERTICALBAR);
|
480
|
+
DEFINE_SCANCODE(KP_DBLVERTICALBAR);
|
481
|
+
DEFINE_SCANCODE(KP_COLON);
|
482
|
+
DEFINE_SCANCODE(KP_HASH);
|
483
|
+
DEFINE_SCANCODE(KP_SPACE);
|
484
|
+
DEFINE_SCANCODE(KP_AT);
|
485
|
+
DEFINE_SCANCODE(KP_EXCLAM);
|
486
|
+
DEFINE_SCANCODE(KP_MEMSTORE);
|
487
|
+
DEFINE_SCANCODE(KP_MEMRECALL);
|
488
|
+
DEFINE_SCANCODE(KP_MEMCLEAR);
|
489
|
+
DEFINE_SCANCODE(KP_MEMADD);
|
490
|
+
DEFINE_SCANCODE(KP_MEMSUBTRACT);
|
491
|
+
DEFINE_SCANCODE(KP_MEMMULTIPLY);
|
492
|
+
DEFINE_SCANCODE(KP_MEMDIVIDE);
|
493
|
+
DEFINE_SCANCODE(KP_PLUSMINUS);
|
494
|
+
DEFINE_SCANCODE(KP_CLEAR);
|
495
|
+
DEFINE_SCANCODE(KP_CLEARENTRY);
|
496
|
+
DEFINE_SCANCODE(KP_BINARY);
|
497
|
+
DEFINE_SCANCODE(KP_OCTAL);
|
498
|
+
DEFINE_SCANCODE(KP_DECIMAL);
|
499
|
+
DEFINE_SCANCODE(KP_HEXADECIMAL);
|
500
|
+
|
501
|
+
DEFINE_SCANCODE(LCTRL);
|
502
|
+
DEFINE_SCANCODE(LSHIFT);
|
503
|
+
DEFINE_SCANCODE(LALT);
|
504
|
+
DEFINE_SCANCODE(LGUI);
|
505
|
+
DEFINE_SCANCODE(RCTRL);
|
506
|
+
DEFINE_SCANCODE(RSHIFT);
|
507
|
+
DEFINE_SCANCODE(RALT);
|
508
|
+
DEFINE_SCANCODE(RGUI);
|
509
|
+
|
510
|
+
DEFINE_SCANCODE(MODE);
|
511
|
+
|
512
|
+
DEFINE_SCANCODE(AUDIONEXT);
|
513
|
+
DEFINE_SCANCODE(AUDIOPREV);
|
514
|
+
DEFINE_SCANCODE(AUDIOSTOP);
|
515
|
+
DEFINE_SCANCODE(AUDIOPLAY);
|
516
|
+
DEFINE_SCANCODE(AUDIOMUTE);
|
517
|
+
DEFINE_SCANCODE(MEDIASELECT);
|
518
|
+
DEFINE_SCANCODE(WWW);
|
519
|
+
DEFINE_SCANCODE(MAIL);
|
520
|
+
DEFINE_SCANCODE(CALCULATOR);
|
521
|
+
DEFINE_SCANCODE(COMPUTER);
|
522
|
+
DEFINE_SCANCODE(AC_SEARCH);
|
523
|
+
DEFINE_SCANCODE(AC_HOME);
|
524
|
+
DEFINE_SCANCODE(AC_BACK);
|
525
|
+
DEFINE_SCANCODE(AC_FORWARD);
|
526
|
+
DEFINE_SCANCODE(AC_STOP);
|
527
|
+
DEFINE_SCANCODE(AC_REFRESH);
|
528
|
+
DEFINE_SCANCODE(AC_BOOKMARKS);
|
529
|
+
|
530
|
+
DEFINE_SCANCODE(BRIGHTNESSDOWN);
|
531
|
+
DEFINE_SCANCODE(BRIGHTNESSUP);
|
532
|
+
DEFINE_SCANCODE(DISPLAYSWITCH);
|
533
|
+
|
534
|
+
DEFINE_SCANCODE(KBDILLUMTOGGLE);
|
535
|
+
DEFINE_SCANCODE(KBDILLUMDOWN);
|
536
|
+
DEFINE_SCANCODE(KBDILLUMUP);
|
537
|
+
DEFINE_SCANCODE(EJECT);
|
538
|
+
DEFINE_SCANCODE(SLEEP);
|
539
|
+
|
540
|
+
DEFINE_SCANCODE(APP1);
|
541
|
+
DEFINE_SCANCODE(APP2);
|
542
|
+
|
543
|
+
DEFINE_KEYCODE(UNKNOWN,/* @return [Integer] unused keycode */);
|
544
|
+
DEFINE_KEYCODE(RETURN);
|
545
|
+
DEFINE_KEYCODE(ESCAPE);
|
546
|
+
DEFINE_KEYCODE(BACKSPACE);
|
547
|
+
DEFINE_KEYCODE(TAB);
|
548
|
+
DEFINE_KEYCODE(SPACE);
|
549
|
+
DEFINE_KEYCODE(EXCLAIM);
|
550
|
+
DEFINE_KEYCODE(QUOTEDBL);
|
551
|
+
DEFINE_KEYCODE(HASH);
|
552
|
+
DEFINE_KEYCODE(PERCENT);
|
553
|
+
DEFINE_KEYCODE(DOLLAR);
|
554
|
+
DEFINE_KEYCODE(AMPERSAND);
|
555
|
+
DEFINE_KEYCODE(QUOTE);
|
556
|
+
DEFINE_KEYCODE(LEFTPAREN);
|
557
|
+
DEFINE_KEYCODE(RIGHTPAREN);
|
558
|
+
DEFINE_KEYCODE(ASTERISK);
|
559
|
+
DEFINE_KEYCODE(PLUS);
|
560
|
+
DEFINE_KEYCODE(COMMA);
|
561
|
+
DEFINE_KEYCODE(MINUS);
|
562
|
+
DEFINE_KEYCODE(PERIOD);
|
563
|
+
DEFINE_KEYCODE(SLASH);
|
564
|
+
DEFINE_KEYCODE_NUMBER(0);
|
565
|
+
DEFINE_KEYCODE_NUMBER(1);
|
566
|
+
DEFINE_KEYCODE_NUMBER(2);
|
567
|
+
DEFINE_KEYCODE_NUMBER(3);
|
568
|
+
DEFINE_KEYCODE_NUMBER(4);
|
569
|
+
DEFINE_KEYCODE_NUMBER(5);
|
570
|
+
DEFINE_KEYCODE_NUMBER(6);
|
571
|
+
DEFINE_KEYCODE_NUMBER(7);
|
572
|
+
DEFINE_KEYCODE_NUMBER(8);
|
573
|
+
DEFINE_KEYCODE_NUMBER(9);
|
574
|
+
DEFINE_KEYCODE(COLON);
|
575
|
+
DEFINE_KEYCODE(SEMICOLON);
|
576
|
+
DEFINE_KEYCODE(LESS);
|
577
|
+
DEFINE_KEYCODE(EQUALS);
|
578
|
+
DEFINE_KEYCODE(GREATER);
|
579
|
+
DEFINE_KEYCODE(QUESTION);
|
580
|
+
DEFINE_KEYCODE(AT);
|
581
|
+
/*
|
582
|
+
Skip uppercase letters
|
583
|
+
*/
|
584
|
+
DEFINE_KEYCODE(LEFTBRACKET);
|
585
|
+
DEFINE_KEYCODE(BACKSLASH);
|
586
|
+
DEFINE_KEYCODE(RIGHTBRACKET);
|
587
|
+
DEFINE_KEYCODE(CARET);
|
588
|
+
DEFINE_KEYCODE(UNDERSCORE);
|
589
|
+
DEFINE_KEYCODE(BACKQUOTE);
|
590
|
+
|
591
|
+
DEFINE_KEYCODE_ALPH(a);
|
592
|
+
DEFINE_KEYCODE_ALPH(b);
|
593
|
+
DEFINE_KEYCODE_ALPH(c);
|
594
|
+
DEFINE_KEYCODE_ALPH(d);
|
595
|
+
DEFINE_KEYCODE_ALPH(e);
|
596
|
+
DEFINE_KEYCODE_ALPH(f);
|
597
|
+
DEFINE_KEYCODE_ALPH(g);
|
598
|
+
DEFINE_KEYCODE_ALPH(h);
|
599
|
+
DEFINE_KEYCODE_ALPH(i);
|
600
|
+
DEFINE_KEYCODE_ALPH(j);
|
601
|
+
DEFINE_KEYCODE_ALPH(k);
|
602
|
+
DEFINE_KEYCODE_ALPH(l);
|
603
|
+
DEFINE_KEYCODE_ALPH(m);
|
604
|
+
DEFINE_KEYCODE_ALPH(n);
|
605
|
+
DEFINE_KEYCODE_ALPH(o);
|
606
|
+
DEFINE_KEYCODE_ALPH(p);
|
607
|
+
DEFINE_KEYCODE_ALPH(q);
|
608
|
+
DEFINE_KEYCODE_ALPH(r);
|
609
|
+
DEFINE_KEYCODE_ALPH(s);
|
610
|
+
DEFINE_KEYCODE_ALPH(t);
|
611
|
+
DEFINE_KEYCODE_ALPH(u);
|
612
|
+
DEFINE_KEYCODE_ALPH(v);
|
613
|
+
DEFINE_KEYCODE_ALPH(w);
|
614
|
+
DEFINE_KEYCODE_ALPH(x);
|
615
|
+
DEFINE_KEYCODE_ALPH(y);
|
616
|
+
DEFINE_KEYCODE_ALPH(z);
|
617
|
+
|
618
|
+
DEFINE_KEYCODE(CAPSLOCK);
|
619
|
+
|
620
|
+
DEFINE_KEYCODE(F1);
|
621
|
+
DEFINE_KEYCODE(F2);
|
622
|
+
DEFINE_KEYCODE(F3);
|
623
|
+
DEFINE_KEYCODE(F4);
|
624
|
+
DEFINE_KEYCODE(F5);
|
625
|
+
DEFINE_KEYCODE(F6);
|
626
|
+
DEFINE_KEYCODE(F7);
|
627
|
+
DEFINE_KEYCODE(F8);
|
628
|
+
DEFINE_KEYCODE(F9);
|
629
|
+
DEFINE_KEYCODE(F10);
|
630
|
+
DEFINE_KEYCODE(F11);
|
631
|
+
DEFINE_KEYCODE(F12);
|
632
|
+
|
633
|
+
DEFINE_KEYCODE(PRINTSCREEN);
|
634
|
+
DEFINE_KEYCODE(SCROLLLOCK);
|
635
|
+
DEFINE_KEYCODE(PAUSE);
|
636
|
+
DEFINE_KEYCODE(INSERT);
|
637
|
+
DEFINE_KEYCODE(HOME);
|
638
|
+
DEFINE_KEYCODE(PAGEUP);
|
639
|
+
DEFINE_KEYCODE(DELETE);
|
640
|
+
DEFINE_KEYCODE(END);
|
641
|
+
DEFINE_KEYCODE(PAGEDOWN);
|
642
|
+
DEFINE_KEYCODE(RIGHT);
|
643
|
+
DEFINE_KEYCODE(LEFT);
|
644
|
+
DEFINE_KEYCODE(DOWN);
|
645
|
+
DEFINE_KEYCODE(UP);
|
646
|
+
|
647
|
+
DEFINE_KEYCODE(NUMLOCKCLEAR);
|
648
|
+
DEFINE_KEYCODE(KP_DIVIDE);
|
649
|
+
DEFINE_KEYCODE(KP_MULTIPLY);
|
650
|
+
DEFINE_KEYCODE(KP_MINUS);
|
651
|
+
DEFINE_KEYCODE(KP_PLUS);
|
652
|
+
DEFINE_KEYCODE(KP_ENTER);
|
653
|
+
DEFINE_KEYCODE(KP_1);
|
654
|
+
DEFINE_KEYCODE(KP_2);
|
655
|
+
DEFINE_KEYCODE(KP_3);
|
656
|
+
DEFINE_KEYCODE(KP_4);
|
657
|
+
DEFINE_KEYCODE(KP_5);
|
658
|
+
DEFINE_KEYCODE(KP_6);
|
659
|
+
DEFINE_KEYCODE(KP_7);
|
660
|
+
DEFINE_KEYCODE(KP_8);
|
661
|
+
DEFINE_KEYCODE(KP_9);
|
662
|
+
DEFINE_KEYCODE(KP_0);
|
663
|
+
DEFINE_KEYCODE(KP_PERIOD);
|
664
|
+
|
665
|
+
DEFINE_KEYCODE(APPLICATION);
|
666
|
+
DEFINE_KEYCODE(POWER);
|
667
|
+
DEFINE_KEYCODE(KP_EQUALS);
|
668
|
+
DEFINE_KEYCODE(F13);
|
669
|
+
DEFINE_KEYCODE(F14);
|
670
|
+
DEFINE_KEYCODE(F15);
|
671
|
+
DEFINE_KEYCODE(F16);
|
672
|
+
DEFINE_KEYCODE(F17);
|
673
|
+
DEFINE_KEYCODE(F18);
|
674
|
+
DEFINE_KEYCODE(F19);
|
675
|
+
DEFINE_KEYCODE(F20);
|
676
|
+
DEFINE_KEYCODE(F21);
|
677
|
+
DEFINE_KEYCODE(F22);
|
678
|
+
DEFINE_KEYCODE(F23);
|
679
|
+
DEFINE_KEYCODE(F24);
|
680
|
+
DEFINE_KEYCODE(EXECUTE);
|
681
|
+
DEFINE_KEYCODE(HELP);
|
682
|
+
DEFINE_KEYCODE(MENU);
|
683
|
+
DEFINE_KEYCODE(SELECT);
|
684
|
+
DEFINE_KEYCODE(STOP);
|
685
|
+
DEFINE_KEYCODE(AGAIN);
|
686
|
+
DEFINE_KEYCODE(UNDO);
|
687
|
+
DEFINE_KEYCODE(CUT);
|
688
|
+
DEFINE_KEYCODE(COPY);
|
689
|
+
DEFINE_KEYCODE(PASTE);
|
690
|
+
DEFINE_KEYCODE(FIND);
|
691
|
+
DEFINE_KEYCODE(MUTE);
|
692
|
+
DEFINE_KEYCODE(VOLUMEUP);
|
693
|
+
DEFINE_KEYCODE(VOLUMEDOWN);
|
694
|
+
DEFINE_KEYCODE(KP_COMMA);
|
695
|
+
DEFINE_KEYCODE(KP_EQUALSAS400);
|
696
|
+
|
697
|
+
DEFINE_KEYCODE(ALTERASE);
|
698
|
+
DEFINE_KEYCODE(SYSREQ);
|
699
|
+
DEFINE_KEYCODE(CANCEL);
|
700
|
+
DEFINE_KEYCODE(CLEAR);
|
701
|
+
DEFINE_KEYCODE(PRIOR);
|
702
|
+
DEFINE_KEYCODE(RETURN2);
|
703
|
+
DEFINE_KEYCODE(SEPARATOR);
|
704
|
+
DEFINE_KEYCODE(OUT);
|
705
|
+
DEFINE_KEYCODE(OPER);
|
706
|
+
DEFINE_KEYCODE(CLEARAGAIN);
|
707
|
+
DEFINE_KEYCODE(CRSEL);
|
708
|
+
DEFINE_KEYCODE(EXSEL);
|
709
|
+
|
710
|
+
DEFINE_KEYCODE(KP_00);
|
711
|
+
DEFINE_KEYCODE(KP_000);
|
712
|
+
DEFINE_KEYCODE(THOUSANDSSEPARATOR);
|
713
|
+
|
714
|
+
DEFINE_KEYCODE(DECIMALSEPARATOR);
|
715
|
+
|
716
|
+
DEFINE_KEYCODE(CURRENCYUNIT);
|
717
|
+
DEFINE_KEYCODE(CURRENCYSUBUNIT);
|
718
|
+
DEFINE_KEYCODE(KP_LEFTPAREN);
|
719
|
+
DEFINE_KEYCODE(KP_RIGHTPAREN);
|
720
|
+
DEFINE_KEYCODE(KP_LEFTBRACE);
|
721
|
+
DEFINE_KEYCODE(KP_RIGHTBRACE);
|
722
|
+
DEFINE_KEYCODE(KP_TAB);
|
723
|
+
DEFINE_KEYCODE(KP_BACKSPACE);
|
724
|
+
DEFINE_KEYCODE(KP_A);
|
725
|
+
DEFINE_KEYCODE(KP_B);
|
726
|
+
DEFINE_KEYCODE(KP_C);
|
727
|
+
DEFINE_KEYCODE(KP_D);
|
728
|
+
DEFINE_KEYCODE(KP_E);
|
729
|
+
DEFINE_KEYCODE(KP_F);
|
730
|
+
DEFINE_KEYCODE(KP_XOR);
|
731
|
+
DEFINE_KEYCODE(KP_POWER);
|
732
|
+
DEFINE_KEYCODE(KP_PERCENT);
|
733
|
+
DEFINE_KEYCODE(KP_LESS);
|
734
|
+
DEFINE_KEYCODE(KP_GREATER);
|
735
|
+
DEFINE_KEYCODE(KP_AMPERSAND);
|
736
|
+
DEFINE_KEYCODE(KP_DBLAMPERSAND);
|
737
|
+
DEFINE_KEYCODE(KP_VERTICALBAR);
|
738
|
+
DEFINE_KEYCODE(KP_DBLVERTICALBAR);
|
739
|
+
DEFINE_KEYCODE(KP_COLON);
|
740
|
+
DEFINE_KEYCODE(KP_HASH);
|
741
|
+
DEFINE_KEYCODE(KP_SPACE);
|
742
|
+
DEFINE_KEYCODE(KP_AT);
|
743
|
+
DEFINE_KEYCODE(KP_EXCLAM);
|
744
|
+
DEFINE_KEYCODE(KP_MEMSTORE);
|
745
|
+
DEFINE_KEYCODE(KP_MEMRECALL);
|
746
|
+
DEFINE_KEYCODE(KP_MEMCLEAR);
|
747
|
+
DEFINE_KEYCODE(KP_MEMADD);
|
748
|
+
DEFINE_KEYCODE(KP_MEMSUBTRACT);
|
749
|
+
DEFINE_KEYCODE(KP_MEMMULTIPLY);
|
750
|
+
DEFINE_KEYCODE(KP_MEMDIVIDE);
|
751
|
+
DEFINE_KEYCODE(KP_PLUSMINUS);
|
752
|
+
DEFINE_KEYCODE(KP_CLEAR);
|
753
|
+
DEFINE_KEYCODE(KP_CLEARENTRY);
|
754
|
+
DEFINE_KEYCODE(KP_BINARY);
|
755
|
+
DEFINE_KEYCODE(KP_OCTAL);
|
756
|
+
DEFINE_KEYCODE(KP_DECIMAL);
|
757
|
+
DEFINE_KEYCODE(KP_HEXADECIMAL);
|
758
|
+
|
759
|
+
DEFINE_KEYCODE(LCTRL);
|
760
|
+
DEFINE_KEYCODE(LSHIFT);
|
761
|
+
DEFINE_KEYCODE(LALT);
|
762
|
+
DEFINE_KEYCODE(LGUI);
|
763
|
+
DEFINE_KEYCODE(RCTRL);
|
764
|
+
DEFINE_KEYCODE(RSHIFT);
|
765
|
+
DEFINE_KEYCODE(RALT);
|
766
|
+
DEFINE_KEYCODE(RGUI);
|
767
|
+
|
768
|
+
DEFINE_KEYCODE(MODE);
|
769
|
+
|
770
|
+
DEFINE_KEYCODE(AUDIONEXT);
|
771
|
+
DEFINE_KEYCODE(AUDIOPREV);
|
772
|
+
DEFINE_KEYCODE(AUDIOSTOP);
|
773
|
+
DEFINE_KEYCODE(AUDIOPLAY);
|
774
|
+
DEFINE_KEYCODE(AUDIOMUTE);
|
775
|
+
DEFINE_KEYCODE(MEDIASELECT);
|
776
|
+
DEFINE_KEYCODE(WWW);
|
777
|
+
DEFINE_KEYCODE(MAIL);
|
778
|
+
DEFINE_KEYCODE(CALCULATOR);
|
779
|
+
DEFINE_KEYCODE(COMPUTER);
|
780
|
+
DEFINE_KEYCODE(AC_SEARCH);
|
781
|
+
DEFINE_KEYCODE(AC_HOME);
|
782
|
+
DEFINE_KEYCODE(AC_BACK);
|
783
|
+
DEFINE_KEYCODE(AC_FORWARD);
|
784
|
+
DEFINE_KEYCODE(AC_STOP);
|
785
|
+
DEFINE_KEYCODE(AC_REFRESH);
|
786
|
+
DEFINE_KEYCODE(AC_BOOKMARKS);
|
787
|
+
|
788
|
+
DEFINE_KEYCODE(BRIGHTNESSDOWN);
|
789
|
+
|
790
|
+
DEFINE_KEYCODE(BRIGHTNESSUP);
|
791
|
+
DEFINE_KEYCODE(DISPLAYSWITCH);
|
792
|
+
DEFINE_KEYCODE(KBDILLUMTOGGLE);
|
793
|
+
|
794
|
+
DEFINE_KEYCODE(KBDILLUMDOWN);
|
795
|
+
DEFINE_KEYCODE(KBDILLUMUP);
|
796
|
+
DEFINE_KEYCODE(EJECT);
|
797
|
+
DEFINE_KEYCODE(SLEEP);
|
798
|
+
|
799
|
+
/* 0 (no modifier is applicable) */
|
800
|
+
DEFINE_KEYMOD(NONE);
|
801
|
+
/* the modifier key bit mask for the left shift key */
|
802
|
+
DEFINE_KEYMOD(LSHIFT);
|
803
|
+
/* the modifier key bit mask for the right shift key */
|
804
|
+
DEFINE_KEYMOD(RSHIFT);
|
805
|
+
/* the modifier key bit mask for the left control key */
|
806
|
+
DEFINE_KEYMOD(LCTRL);
|
807
|
+
/* the modifier key bit mask for the right control key */
|
808
|
+
DEFINE_KEYMOD(RCTRL);
|
809
|
+
/* the modifier key bit mask for the left alt key */
|
810
|
+
DEFINE_KEYMOD(LALT);
|
811
|
+
/* the modifier key bit mask for the right alt key */
|
812
|
+
DEFINE_KEYMOD(RALT);
|
813
|
+
/* the modifier key bit mask for the left GUI key (often the window key) */
|
814
|
+
DEFINE_KEYMOD(LGUI);
|
815
|
+
/* the modifier key bit mask for the right GUI key (often the window key) */
|
816
|
+
DEFINE_KEYMOD(RGUI);
|
817
|
+
/* the modifier key bit mask for the numlock key */
|
818
|
+
DEFINE_KEYMOD(NUM);
|
819
|
+
/* the modifier key bit mask for the capslock key */
|
820
|
+
DEFINE_KEYMOD(CAPS);
|
821
|
+
/* the modifier key bit mask for the mode key (AltGr) */
|
822
|
+
DEFINE_KEYMOD(MODE);
|
823
|
+
/* the modifier key bit mask for the left and right control key */
|
824
|
+
DEFINE_KEYMOD(CTRL);
|
825
|
+
/* the modifier key bit mask for the left and right shift key */
|
826
|
+
DEFINE_KEYMOD(SHIFT);
|
827
|
+
/* the modifier key bit mask for the left and right alt key */
|
828
|
+
DEFINE_KEYMOD(ALT);
|
829
|
+
/* the modifier key bit mask for the left and right GUI key */
|
830
|
+
DEFINE_KEYMOD(GUI);
|
831
|
+
/* reserved for future use */
|
832
|
+
DEFINE_KEYMOD(RESERVED);
|
833
|
+
}
|