SDL3pp
A slim C++ wrapper for SDL3
Loading...
Searching...
No Matches
SDL3pp_keycode.h
1#ifndef SDL3PP_KEYCODE_H_
2#define SDL3PP_KEYCODE_H_
3
4#include <SDL3/SDL_keycode.h>
5#include "SDL3pp_scancode.h"
6#include "SDL3pp_stdinc.h"
7
8namespace SDL {
9
29using Keymod = Uint16;
30
31// To remove clash with old names:
32#undef KMOD_ALT
33#undef KMOD_CAPS
34#undef KMOD_CTRL
35#undef KMOD_GUI
36#undef KMOD_LALT
37#undef KMOD_LCTRL
38#undef KMOD_LGUI
39#undef KMOD_LSHIFT
40#undef KMOD_MODE
41#undef KMOD_NONE
42#undef KMOD_NUM
43#undef KMOD_RALT
44#undef KMOD_RCTRL
45#undef KMOD_RGUI
46#undef KMOD_RSHIFT
47#undef KMOD_SCROLL
48#undef KMOD_SHIFT
49
50constexpr Keymod KMOD_NONE = SDL_KMOD_NONE;
51
52constexpr Keymod KMOD_LSHIFT = SDL_KMOD_LSHIFT;
53
55 SDL_KMOD_RSHIFT;
56
58 SDL_KMOD_LEVEL5;
59
60constexpr Keymod KMOD_LCTRL =
61 SDL_KMOD_LCTRL;
62
63constexpr Keymod KMOD_RCTRL =
64 SDL_KMOD_RCTRL;
65
66constexpr Keymod KMOD_LALT = SDL_KMOD_LALT;
67
68constexpr Keymod KMOD_RALT = SDL_KMOD_RALT;
69
70constexpr Keymod KMOD_LGUI =
71 SDL_KMOD_LGUI;
72
73constexpr Keymod KMOD_RGUI =
74 SDL_KMOD_RGUI;
75
79constexpr Keymod KMOD_NUM = SDL_KMOD_NUM;
80
81constexpr Keymod KMOD_CAPS = SDL_KMOD_CAPS;
82
83constexpr Keymod KMOD_MODE = SDL_KMOD_MODE;
84
86 SDL_KMOD_SCROLL;
87
88constexpr Keymod KMOD_CTRL = SDL_KMOD_CTRL;
89
90constexpr Keymod KMOD_SHIFT = SDL_KMOD_SHIFT;
91
92constexpr Keymod KMOD_ALT = SDL_KMOD_ALT;
93
94constexpr Keymod KMOD_GUI = SDL_KMOD_GUI;
95
113{
114 SDL_Keycode m_keycode;
115
116public:
122 constexpr Keycode(SDL_Keycode keycode = {})
123 : m_keycode(keycode)
124 {
125 }
126
130 constexpr auto operator<=>(const Keycode& other) const = default;
131
135 constexpr auto operator<=>(SDL_Keycode keycode) const
136 {
137 return operator<=>(Keycode(keycode));
138 }
139
140 // Convert from scancode
141 explicit Keycode(Scancode scancode,
142 Keymod modstate = 0,
143 bool key_event = false);
144
145 // Create from key name
146 explicit Keycode(StringParam name);
147
153 constexpr operator SDL_Keycode() const { return m_keycode; }
154
160 constexpr explicit operator bool() const { return m_keycode != SDLK_UNKNOWN; }
161
163 constexpr bool IsExtended() const { return m_keycode & SDLK_EXTENDED_MASK; }
164
166 constexpr bool IsScancode() const { return m_keycode & SDLK_SCANCODE_MASK; }
167
168 Scancode GetScancode(Keymod* modstate) const;
169
170 // Get name.
171 const char* GetName() const;
172};
173
174constexpr SDL_Keycode KEYCODE_EXTENDED_MASK =
175 SDLK_EXTENDED_MASK;
176
177constexpr SDL_Keycode KEYCODE_SCANCODE_MASK =
178 SDLK_SCANCODE_MASK;
179
187{
188 return SDL_SCANCODE_TO_KEYCODE(x);
189}
190
191constexpr SDL_Keycode KEYCODE_UNKNOWN = SDLK_UNKNOWN;
192
193constexpr SDL_Keycode KEYCODE_RETURN = SDLK_RETURN;
194
195constexpr SDL_Keycode KEYCODE_ESCAPE = SDLK_ESCAPE;
196
197constexpr SDL_Keycode KEYCODE_BACKSPACE = SDLK_BACKSPACE;
198
199constexpr SDL_Keycode KEYCODE_TAB = SDLK_TAB;
200
201constexpr SDL_Keycode KEYCODE_SPACE = SDLK_SPACE;
202
203constexpr SDL_Keycode KEYCODE_EXCLAIM = SDLK_EXCLAIM;
204
205constexpr SDL_Keycode KEYCODE_DBLAPOSTROPHE = SDLK_DBLAPOSTROPHE;
206
207constexpr SDL_Keycode KEYCODE_HASH = SDLK_HASH;
208
209constexpr SDL_Keycode KEYCODE_DOLLAR = SDLK_DOLLAR;
210
211constexpr SDL_Keycode KEYCODE_PERCENT = SDLK_PERCENT;
212
213constexpr SDL_Keycode KEYCODE_AMPERSAND = SDLK_AMPERSAND;
214
215constexpr SDL_Keycode KEYCODE_APOSTROPHE = SDLK_APOSTROPHE;
216
217constexpr SDL_Keycode KEYCODE_LEFTPAREN = SDLK_LEFTPAREN;
218
219constexpr SDL_Keycode KEYCODE_RIGHTPAREN = SDLK_RIGHTPAREN;
220
221constexpr SDL_Keycode KEYCODE_ASTERISK = SDLK_ASTERISK;
222
223constexpr SDL_Keycode KEYCODE_PLUS = SDLK_PLUS;
224
225constexpr SDL_Keycode KEYCODE_COMMA = SDLK_COMMA;
226
227constexpr SDL_Keycode KEYCODE_MINUS = SDLK_MINUS;
228
229constexpr SDL_Keycode KEYCODE_PERIOD = SDLK_PERIOD;
230
231constexpr SDL_Keycode KEYCODE_SLASH = SDLK_SLASH;
232
233constexpr SDL_Keycode KEYCODE_0 = SDLK_0;
234
235constexpr SDL_Keycode KEYCODE_1 = SDLK_1;
236
237constexpr SDL_Keycode KEYCODE_2 = SDLK_2;
238
239constexpr SDL_Keycode KEYCODE_3 = SDLK_3;
240
241constexpr SDL_Keycode KEYCODE_4 = SDLK_4;
242
243constexpr SDL_Keycode KEYCODE_5 = SDLK_5;
244
245constexpr SDL_Keycode KEYCODE_6 = SDLK_6;
246
247constexpr SDL_Keycode KEYCODE_7 = SDLK_7;
248
249constexpr SDL_Keycode KEYCODE_8 = SDLK_8;
250
251constexpr SDL_Keycode KEYCODE_9 = SDLK_9;
252
253constexpr SDL_Keycode KEYCODE_COLON = SDLK_COLON;
254
255constexpr SDL_Keycode KEYCODE_SEMICOLON = SDLK_SEMICOLON;
256
257constexpr SDL_Keycode KEYCODE_LESS = SDLK_LESS;
258
259constexpr SDL_Keycode KEYCODE_EQUALS = SDLK_EQUALS;
260
261constexpr SDL_Keycode KEYCODE_GREATER = SDLK_GREATER;
262
263constexpr SDL_Keycode KEYCODE_QUESTION = SDLK_QUESTION;
264
265constexpr SDL_Keycode KEYCODE_AT = SDLK_AT;
266
267constexpr SDL_Keycode KEYCODE_LEFTBRACKET = SDLK_LEFTBRACKET;
268
269constexpr SDL_Keycode KEYCODE_BACKSLASH = SDLK_BACKSLASH;
270
271constexpr SDL_Keycode KEYCODE_RIGHTBRACKET = SDLK_RIGHTBRACKET;
272
273constexpr SDL_Keycode KEYCODE_CARET = SDLK_CARET;
274
275constexpr SDL_Keycode KEYCODE_UNDERSCORE = SDLK_UNDERSCORE;
276
277constexpr SDL_Keycode KEYCODE_GRAVE = SDLK_GRAVE;
278
279constexpr SDL_Keycode KEYCODE_A = SDLK_A;
280
281constexpr SDL_Keycode KEYCODE_B = SDLK_B;
282
283constexpr SDL_Keycode KEYCODE_C = SDLK_C;
284
285constexpr SDL_Keycode KEYCODE_D = SDLK_D;
286
287constexpr SDL_Keycode KEYCODE_E = SDLK_E;
288
289constexpr SDL_Keycode KEYCODE_F = SDLK_F;
290
291constexpr SDL_Keycode KEYCODE_G = SDLK_G;
292
293constexpr SDL_Keycode KEYCODE_H = SDLK_H;
294
295constexpr SDL_Keycode KEYCODE_I = SDLK_I;
296
297constexpr SDL_Keycode KEYCODE_J = SDLK_J;
298
299constexpr SDL_Keycode KEYCODE_K = SDLK_K;
300
301constexpr SDL_Keycode KEYCODE_L = SDLK_L;
302
303constexpr SDL_Keycode KEYCODE_M = SDLK_M;
304
305constexpr SDL_Keycode KEYCODE_N = SDLK_N;
306
307constexpr SDL_Keycode KEYCODE_O = SDLK_O;
308
309constexpr SDL_Keycode KEYCODE_P = SDLK_P;
310
311constexpr SDL_Keycode KEYCODE_Q = SDLK_Q;
312
313constexpr SDL_Keycode KEYCODE_R = SDLK_R;
314
315constexpr SDL_Keycode KEYCODE_S = SDLK_S;
316
317constexpr SDL_Keycode KEYCODE_T = SDLK_T;
318
319constexpr SDL_Keycode KEYCODE_U = SDLK_U;
320
321constexpr SDL_Keycode KEYCODE_V = SDLK_V;
322
323constexpr SDL_Keycode KEYCODE_W = SDLK_W;
324
325constexpr SDL_Keycode KEYCODE_X = SDLK_X;
326
327constexpr SDL_Keycode KEYCODE_Y = SDLK_Y;
328
329constexpr SDL_Keycode KEYCODE_Z = SDLK_Z;
330
331constexpr SDL_Keycode KEYCODE_LEFTBRACE = SDLK_LEFTBRACE;
332
333constexpr SDL_Keycode KEYCODE_PIPE = SDLK_PIPE;
334
335constexpr SDL_Keycode KEYCODE_RIGHTBRACE = SDLK_RIGHTBRACE;
336
337constexpr SDL_Keycode KEYCODE_TILDE = SDLK_TILDE;
338
339constexpr SDL_Keycode KEYCODE_DELETE = SDLK_DELETE;
340
341constexpr SDL_Keycode KEYCODE_PLUSMINUS = SDLK_PLUSMINUS;
342
343constexpr SDL_Keycode KEYCODE_CAPSLOCK =
344 SDLK_CAPSLOCK;
345
346constexpr SDL_Keycode KEYCODE_F1 = SDLK_F1;
347
348constexpr SDL_Keycode KEYCODE_F2 = SDLK_F2;
349
350constexpr SDL_Keycode KEYCODE_F3 = SDLK_F3;
351
352constexpr SDL_Keycode KEYCODE_F4 = SDLK_F4;
353
354constexpr SDL_Keycode KEYCODE_F5 = SDLK_F5;
355
356constexpr SDL_Keycode KEYCODE_F6 = SDLK_F6;
357
358constexpr SDL_Keycode KEYCODE_F7 = SDLK_F7;
359
360constexpr SDL_Keycode KEYCODE_F8 = SDLK_F8;
361
362constexpr SDL_Keycode KEYCODE_F9 = SDLK_F9;
363
364constexpr SDL_Keycode KEYCODE_F10 =
365 SDLK_F10;
366
367constexpr SDL_Keycode KEYCODE_F11 =
368 SDLK_F11;
369
370constexpr SDL_Keycode KEYCODE_F12 =
371 SDLK_F12;
372
373constexpr SDL_Keycode KEYCODE_PRINTSCREEN =
374 SDLK_PRINTSCREEN;
375
376constexpr SDL_Keycode KEYCODE_SCROLLLOCK =
377 SDLK_SCROLLLOCK;
378
379constexpr SDL_Keycode KEYCODE_PAUSE =
380 SDLK_PAUSE;
381
382constexpr SDL_Keycode KEYCODE_INSERT =
383 SDLK_INSERT;
384
385constexpr SDL_Keycode KEYCODE_HOME =
386 SDLK_HOME;
387
388constexpr SDL_Keycode KEYCODE_PAGEUP =
389 SDLK_PAGEUP;
390
391constexpr SDL_Keycode KEYCODE_END =
392 SDLK_END;
393
394constexpr SDL_Keycode KEYCODE_PAGEDOWN =
395 SDLK_PAGEDOWN;
396
397constexpr SDL_Keycode KEYCODE_RIGHT =
398 SDLK_RIGHT;
399
400constexpr SDL_Keycode KEYCODE_LEFT =
401 SDLK_LEFT;
402
403constexpr SDL_Keycode KEYCODE_DOWN =
404 SDLK_DOWN;
405
406constexpr SDL_Keycode KEYCODE_UP = SDLK_UP;
407
408constexpr SDL_Keycode KEYCODE_NUMLOCKCLEAR =
409 SDLK_NUMLOCKCLEAR;
410
411constexpr SDL_Keycode KEYCODE_KP_DIVIDE =
412 SDLK_KP_DIVIDE;
413
414constexpr SDL_Keycode KEYCODE_KP_MULTIPLY =
415 SDLK_KP_MULTIPLY;
416
417constexpr SDL_Keycode KEYCODE_KP_MINUS =
418 SDLK_KP_MINUS;
419
420constexpr SDL_Keycode KEYCODE_KP_PLUS =
421 SDLK_KP_PLUS;
422
423constexpr SDL_Keycode KEYCODE_KP_ENTER =
424 SDLK_KP_ENTER;
425
426constexpr SDL_Keycode KEYCODE_KP_1 =
427 SDLK_KP_1;
428
429constexpr SDL_Keycode KEYCODE_KP_2 =
430 SDLK_KP_2;
431
432constexpr SDL_Keycode KEYCODE_KP_3 =
433 SDLK_KP_3;
434
435constexpr SDL_Keycode KEYCODE_KP_4 =
436 SDLK_KP_4;
437
438constexpr SDL_Keycode KEYCODE_KP_5 =
439 SDLK_KP_5;
440
441constexpr SDL_Keycode KEYCODE_KP_6 =
442 SDLK_KP_6;
443
444constexpr SDL_Keycode KEYCODE_KP_7 =
445 SDLK_KP_7;
446
447constexpr SDL_Keycode KEYCODE_KP_8 =
448 SDLK_KP_8;
449
450constexpr SDL_Keycode KEYCODE_KP_9 =
451 SDLK_KP_9;
452
453constexpr SDL_Keycode KEYCODE_KP_0 =
454 SDLK_KP_0;
455
456constexpr SDL_Keycode KEYCODE_KP_PERIOD =
457 SDLK_KP_PERIOD;
458
459constexpr SDL_Keycode KEYCODE_APPLICATION =
460 SDLK_APPLICATION;
461
462constexpr SDL_Keycode KEYCODE_POWER =
463 SDLK_POWER;
464
465constexpr SDL_Keycode KEYCODE_KP_EQUALS =
466 SDLK_KP_EQUALS;
467
468constexpr SDL_Keycode KEYCODE_F13 =
469 SDLK_F13;
470
471constexpr SDL_Keycode KEYCODE_F14 =
472 SDLK_F14;
473
474constexpr SDL_Keycode KEYCODE_F15 =
475 SDLK_F15;
476
477constexpr SDL_Keycode KEYCODE_F16 =
478 SDLK_F16;
479
480constexpr SDL_Keycode KEYCODE_F17 =
481 SDLK_F17;
482
483constexpr SDL_Keycode KEYCODE_F18 =
484 SDLK_F18;
485
486constexpr SDL_Keycode KEYCODE_F19 =
487 SDLK_F19;
488
489constexpr SDL_Keycode KEYCODE_F20 =
490 SDLK_F20;
491
492constexpr SDL_Keycode KEYCODE_F21 =
493 SDLK_F21;
494
495constexpr SDL_Keycode KEYCODE_F22 =
496 SDLK_F22;
497
498constexpr SDL_Keycode KEYCODE_F23 =
499 SDLK_F23;
500
501constexpr SDL_Keycode KEYCODE_F24 =
502 SDLK_F24;
503
504constexpr SDL_Keycode KEYCODE_EXECUTE =
505 SDLK_EXECUTE;
506
507constexpr SDL_Keycode KEYCODE_HELP =
508 SDLK_HELP;
509
510constexpr SDL_Keycode KEYCODE_MENU =
511 SDLK_MENU;
512
513constexpr SDL_Keycode KEYCODE_SELECT =
514 SDLK_SELECT;
515
516constexpr SDL_Keycode KEYCODE_STOP =
517 SDLK_STOP;
518
519constexpr SDL_Keycode KEYCODE_AGAIN =
520 SDLK_AGAIN;
521
522constexpr SDL_Keycode KEYCODE_UNDO =
523 SDLK_UNDO;
524
525constexpr SDL_Keycode KEYCODE_CUT =
526 SDLK_CUT;
527
528constexpr SDL_Keycode KEYCODE_COPY =
529 SDLK_COPY;
530
531constexpr SDL_Keycode KEYCODE_PASTE =
532 SDLK_PASTE;
533
534constexpr SDL_Keycode KEYCODE_FIND =
535 SDLK_FIND;
536
537constexpr SDL_Keycode KEYCODE_MUTE =
538 SDLK_MUTE;
539
540constexpr SDL_Keycode KEYCODE_VOLUMEUP =
541 SDLK_VOLUMEUP;
542
543constexpr SDL_Keycode KEYCODE_VOLUMEDOWN =
544 SDLK_VOLUMEDOWN;
545
546constexpr SDL_Keycode KEYCODE_KP_COMMA =
547 SDLK_KP_COMMA;
548
549constexpr SDL_Keycode KEYCODE_KP_EQUALSAS400 =
550 SDLK_KP_EQUALSAS400;
551
552constexpr SDL_Keycode KEYCODE_ALTERASE =
553 SDLK_ALTERASE;
554
555constexpr SDL_Keycode KEYCODE_SYSREQ =
556 SDLK_SYSREQ;
557
558constexpr SDL_Keycode KEYCODE_CANCEL =
559 SDLK_CANCEL;
560
561constexpr SDL_Keycode KEYCODE_CLEAR =
562 SDLK_CLEAR;
563
564constexpr SDL_Keycode KEYCODE_PRIOR =
565 SDLK_PRIOR;
566
567constexpr SDL_Keycode KEYCODE_RETURN2 =
568 SDLK_RETURN2;
569
570constexpr SDL_Keycode KEYCODE_SEPARATOR =
571 SDLK_SEPARATOR;
572
573constexpr SDL_Keycode KEYCODE_OUT =
574 SDLK_OUT;
575
576constexpr SDL_Keycode KEYCODE_OPER =
577 SDLK_OPER;
578
579constexpr SDL_Keycode KEYCODE_CLEARAGAIN =
580 SDLK_CLEARAGAIN;
581
582constexpr SDL_Keycode KEYCODE_CRSEL =
583 SDLK_CRSEL;
584
585constexpr SDL_Keycode KEYCODE_EXSEL =
586 SDLK_EXSEL;
587
588constexpr SDL_Keycode KEYCODE_KP_00 =
589 SDLK_KP_00;
590
591constexpr SDL_Keycode KEYCODE_KP_000 =
592 SDLK_KP_000;
593
594constexpr SDL_Keycode KEYCODE_THOUSANDSSEPARATOR =
595 SDLK_THOUSANDSSEPARATOR;
596
597constexpr SDL_Keycode KEYCODE_DECIMALSEPARATOR =
598 SDLK_DECIMALSEPARATOR;
599
600constexpr SDL_Keycode KEYCODE_CURRENCYUNIT =
601 SDLK_CURRENCYUNIT;
602
603constexpr SDL_Keycode KEYCODE_CURRENCYSUBUNIT =
604 SDLK_CURRENCYSUBUNIT;
605
606constexpr SDL_Keycode KEYCODE_KP_LEFTPAREN =
607 SDLK_KP_LEFTPAREN;
608
609constexpr SDL_Keycode KEYCODE_KP_RIGHTPAREN =
610 SDLK_KP_RIGHTPAREN;
611
612constexpr SDL_Keycode KEYCODE_KP_LEFTBRACE =
613 SDLK_KP_LEFTBRACE;
614
615constexpr SDL_Keycode KEYCODE_KP_RIGHTBRACE =
616 SDLK_KP_RIGHTBRACE;
617
618constexpr SDL_Keycode KEYCODE_KP_TAB =
619 SDLK_KP_TAB;
620
621constexpr SDL_Keycode KEYCODE_KP_BACKSPACE =
622 SDLK_KP_BACKSPACE;
623
624constexpr SDL_Keycode KEYCODE_KP_A =
625 SDLK_KP_A;
626
627constexpr SDL_Keycode KEYCODE_KP_B =
628 SDLK_KP_B;
629
630constexpr SDL_Keycode KEYCODE_KP_C =
631 SDLK_KP_C;
632
633constexpr SDL_Keycode KEYCODE_KP_D =
634 SDLK_KP_D;
635
636constexpr SDL_Keycode KEYCODE_KP_E =
637 SDLK_KP_E;
638
639constexpr SDL_Keycode KEYCODE_KP_F =
640 SDLK_KP_F;
641
642constexpr SDL_Keycode KEYCODE_KP_XOR =
643 SDLK_KP_XOR;
644
645constexpr SDL_Keycode KEYCODE_KP_POWER =
646 SDLK_KP_POWER;
647
648constexpr SDL_Keycode KEYCODE_KP_PERCENT =
649 SDLK_KP_PERCENT;
650
651constexpr SDL_Keycode KEYCODE_KP_LESS =
652 SDLK_KP_LESS;
653
654constexpr SDL_Keycode KEYCODE_KP_GREATER =
655 SDLK_KP_GREATER;
656
657constexpr SDL_Keycode KEYCODE_KP_AMPERSAND =
658 SDLK_KP_AMPERSAND;
659
660constexpr SDL_Keycode KEYCODE_KP_DBLAMPERSAND =
661 SDLK_KP_DBLAMPERSAND;
662
663constexpr SDL_Keycode KEYCODE_KP_VERTICALBAR =
664 SDLK_KP_VERTICALBAR;
665
666constexpr SDL_Keycode KEYCODE_KP_DBLVERTICALBAR =
667 SDLK_KP_DBLVERTICALBAR;
668
669constexpr SDL_Keycode KEYCODE_KP_COLON =
670 SDLK_KP_COLON;
671
672constexpr SDL_Keycode KEYCODE_KP_HASH =
673 SDLK_KP_HASH;
674
675constexpr SDL_Keycode KEYCODE_KP_SPACE =
676 SDLK_KP_SPACE;
677
678constexpr SDL_Keycode KEYCODE_KP_AT =
679 SDLK_KP_AT;
680
681constexpr SDL_Keycode KEYCODE_KP_EXCLAM =
682 SDLK_KP_EXCLAM;
683
684constexpr SDL_Keycode KEYCODE_KP_MEMSTORE =
685 SDLK_KP_MEMSTORE;
686
687constexpr SDL_Keycode KEYCODE_KP_MEMRECALL =
688 SDLK_KP_MEMRECALL;
689
690constexpr SDL_Keycode KEYCODE_KP_MEMCLEAR =
691 SDLK_KP_MEMCLEAR;
692
693constexpr SDL_Keycode KEYCODE_KP_MEMADD =
694 SDLK_KP_MEMADD;
695
696constexpr SDL_Keycode KEYCODE_KP_MEMSUBTRACT =
697 SDLK_KP_MEMSUBTRACT;
698
699constexpr SDL_Keycode KEYCODE_KP_MEMMULTIPLY =
700 SDLK_KP_MEMMULTIPLY;
701
702constexpr SDL_Keycode KEYCODE_KP_MEMDIVIDE =
703 SDLK_KP_MEMDIVIDE;
704
705constexpr SDL_Keycode KEYCODE_KP_PLUSMINUS =
706 SDLK_KP_PLUSMINUS;
707
708constexpr SDL_Keycode KEYCODE_KP_CLEAR =
709 SDLK_KP_CLEAR;
710
711constexpr SDL_Keycode KEYCODE_KP_CLEARENTRY =
712 SDLK_KP_CLEARENTRY;
713
714constexpr SDL_Keycode KEYCODE_KP_BINARY =
715 SDLK_KP_BINARY;
716
717constexpr SDL_Keycode KEYCODE_KP_OCTAL =
718 SDLK_KP_OCTAL;
719
720constexpr SDL_Keycode KEYCODE_KP_DECIMAL =
721 SDLK_KP_DECIMAL;
722
723constexpr SDL_Keycode KEYCODE_KP_HEXADECIMAL =
724 SDLK_KP_HEXADECIMAL;
725
726constexpr SDL_Keycode KEYCODE_LCTRL =
727 SDLK_LCTRL;
728
729constexpr SDL_Keycode KEYCODE_LSHIFT =
730 SDLK_LSHIFT;
731
732constexpr SDL_Keycode KEYCODE_LALT =
733 SDLK_LALT;
734
735constexpr SDL_Keycode KEYCODE_LGUI =
736 SDLK_LGUI;
737
738constexpr SDL_Keycode KEYCODE_RCTRL =
739 SDLK_RCTRL;
740
741constexpr SDL_Keycode KEYCODE_RSHIFT =
742 SDLK_RSHIFT;
743
744constexpr SDL_Keycode KEYCODE_RALT =
745 SDLK_RALT;
746
747constexpr SDL_Keycode KEYCODE_RGUI =
748 SDLK_RGUI;
749
750constexpr SDL_Keycode KEYCODE_MODE =
751 SDLK_MODE;
752
753constexpr SDL_Keycode KEYCODE_SLEEP =
754 SDLK_SLEEP;
755
756constexpr SDL_Keycode KEYCODE_WAKE =
757 SDLK_WAKE;
758
759constexpr SDL_Keycode KEYCODE_CHANNEL_INCREMENT =
760 SDLK_CHANNEL_INCREMENT;
761
762constexpr SDL_Keycode KEYCODE_CHANNEL_DECREMENT =
763 SDLK_CHANNEL_DECREMENT;
764
765constexpr SDL_Keycode KEYCODE_MEDIA_PLAY =
766 SDLK_MEDIA_PLAY;
767
768constexpr SDL_Keycode KEYCODE_MEDIA_PAUSE =
769 SDLK_MEDIA_PAUSE;
770
771constexpr SDL_Keycode KEYCODE_MEDIA_RECORD =
772 SDLK_MEDIA_RECORD;
773
774constexpr SDL_Keycode KEYCODE_MEDIA_FAST_FORWARD =
775 SDLK_MEDIA_FAST_FORWARD;
776
777constexpr SDL_Keycode KEYCODE_MEDIA_REWIND =
778 SDLK_MEDIA_REWIND;
779
780constexpr SDL_Keycode KEYCODE_MEDIA_NEXT_TRACK =
781 SDLK_MEDIA_NEXT_TRACK;
782
783constexpr SDL_Keycode KEYCODE_MEDIA_PREVIOUS_TRACK =
784 SDLK_MEDIA_PREVIOUS_TRACK;
785
786constexpr SDL_Keycode KEYCODE_MEDIA_STOP =
787 SDLK_MEDIA_STOP;
788
789constexpr SDL_Keycode KEYCODE_MEDIA_EJECT =
790 SDLK_MEDIA_EJECT;
791
792constexpr SDL_Keycode KEYCODE_MEDIA_PLAY_PAUSE =
793 SDLK_MEDIA_PLAY_PAUSE;
794
795constexpr SDL_Keycode KEYCODE_MEDIA_SELECT =
796 SDLK_MEDIA_SELECT;
797
798constexpr SDL_Keycode KEYCODE_AC_NEW =
799 SDLK_AC_NEW;
800
801constexpr SDL_Keycode KEYCODE_AC_OPEN =
802 SDLK_AC_OPEN;
803
804constexpr SDL_Keycode KEYCODE_AC_CLOSE =
805 SDLK_AC_CLOSE;
806
807constexpr SDL_Keycode KEYCODE_AC_EXIT =
808 SDLK_AC_EXIT;
809
810constexpr SDL_Keycode KEYCODE_AC_SAVE =
811 SDLK_AC_SAVE;
812
813constexpr SDL_Keycode KEYCODE_AC_PRINT =
814 SDLK_AC_PRINT;
815
816constexpr SDL_Keycode KEYCODE_AC_PROPERTIES =
817 SDLK_AC_PROPERTIES;
818
819constexpr SDL_Keycode KEYCODE_AC_SEARCH =
820 SDLK_AC_SEARCH;
821
822constexpr SDL_Keycode KEYCODE_AC_HOME =
823 SDLK_AC_HOME;
824
825constexpr SDL_Keycode KEYCODE_AC_BACK =
826 SDLK_AC_BACK;
827
828constexpr SDL_Keycode KEYCODE_AC_FORWARD =
829 SDLK_AC_FORWARD;
830
831constexpr SDL_Keycode KEYCODE_AC_STOP =
832 SDLK_AC_STOP;
833
834constexpr SDL_Keycode KEYCODE_AC_REFRESH =
835 SDLK_AC_REFRESH;
836
837constexpr SDL_Keycode KEYCODE_AC_BOOKMARKS =
838 SDLK_AC_BOOKMARKS;
839
840constexpr SDL_Keycode KEYCODE_SOFTLEFT =
841 SDLK_SOFTLEFT;
842
843constexpr SDL_Keycode KEYCODE_SOFTRIGHT =
844 SDLK_SOFTRIGHT;
845
846constexpr SDL_Keycode KEYCODE_CALL =
847 SDLK_CALL;
848
849constexpr SDL_Keycode KEYCODE_ENDCALL =
850 SDLK_ENDCALL;
851
852constexpr SDL_Keycode KEYCODE_LEFT_TAB =
853 SDLK_LEFT_TAB;
854
855constexpr SDL_Keycode KEYCODE_LEVEL5_SHIFT =
856 SDLK_LEVEL5_SHIFT;
857
858constexpr SDL_Keycode KEYCODE_MULTI_KEY_COMPOSE =
859 SDLK_MULTI_KEY_COMPOSE;
860
861constexpr SDL_Keycode KEYCODE_LMETA = SDLK_LMETA;
862
863constexpr SDL_Keycode KEYCODE_RMETA = SDLK_RMETA;
864
865constexpr SDL_Keycode KEYCODE_LHYPER = SDLK_LHYPER;
866
867constexpr SDL_Keycode KEYCODE_RHYPER =
868 SDLK_RHYPER;
869
871} // namespace SDL
872
873#endif /* SDL3PP_KEYCODE_H_ */
The SDL virtual key representation.
Definition SDL3pp_keycode.h:113
constexpr bool IsScancode() const
Has Scancode flag.
Definition SDL3pp_keycode.h:166
constexpr auto operator<=>(SDL_Keycode keycode) const
Compares with the underlying type.
Definition SDL3pp_keycode.h:135
constexpr Keycode(SDL_Keycode keycode={})
Wraps Keycode.
Definition SDL3pp_keycode.h:122
constexpr bool IsExtended() const
Has Extended flag.
Definition SDL3pp_keycode.h:163
constexpr auto operator<=>(const Keycode &other) const =default
Default comparison operator.
The SDL keyboard scancode representation.
Definition SDL3pp_scancode.h:41
Helpers to use C++ strings parameters.
Definition SDL3pp_strings.h:43
const char * GetName() const
Get a human-readable name for a key.
Definition SDL3pp_keyboard.h:347
Scancode GetScancode(Keymod *modstate) const
Get the scancode corresponding to the given key code according to the current keyboard layout.
Definition SDL3pp_keyboard.h:258
constexpr SDL_Keycode KEYCODE_RCTRL
ScancodeToKeycode(SCANCODE_RCTRL)
Definition SDL3pp_keycode.h:738
constexpr SDL_Keycode KEYCODE_WAKE
ScancodeToKeycode(SCANCODE_WAKE)
Definition SDL3pp_keycode.h:756
constexpr SDL_Keycode KEYCODE_SCANCODE_MASK
SCANCODE_MASK.
Definition SDL3pp_keycode.h:177
constexpr SDL_Keycode KEYCODE_PAUSE
ScancodeToKeycode(SCANCODE_PAUSE)
Definition SDL3pp_keycode.h:379
constexpr SDL_Keycode KEYCODE_MEDIA_EJECT
ScancodeToKeycode(SCANCODE_MEDIA_EJECT)
Definition SDL3pp_keycode.h:789
constexpr SDL_Keycode KEYCODE_MEDIA_RECORD
ScancodeToKeycode(SCANCODE_MEDIA_RECORD)
Definition SDL3pp_keycode.h:771
constexpr SDL_Keycode KEYCODE_KP_DBLVERTICALBAR
ScancodeToKeycode(SCANCODE_KP_DBLVERTICALBAR)
Definition SDL3pp_keycode.h:666
constexpr SDL_Keycode KEYCODE_CURRENCYSUBUNIT
ScancodeToKeycode(SCANCODE_CURRENCYSUBUNIT)
Definition SDL3pp_keycode.h:603
constexpr SDL_Keycode KEYCODE_CARET
'^'
Definition SDL3pp_keycode.h:273
constexpr SDL_Keycode KEYCODE_5
'5'
Definition SDL3pp_keycode.h:243
constexpr SDL_Keycode KEYCODE_KP_PERCENT
ScancodeToKeycode(SCANCODE_KP_PERCENT)
Definition SDL3pp_keycode.h:648
constexpr SDL_Keycode KEYCODE_KP_BACKSPACE
ScancodeToKeycode(SCANCODE_KP_BACKSPACE)
Definition SDL3pp_keycode.h:621
constexpr SDL_Keycode KEYCODE_6
'6'
Definition SDL3pp_keycode.h:245
constexpr SDL_Keycode KEYCODE_V
'v'
Definition SDL3pp_keycode.h:321
constexpr Keymod KMOD_NUM
the Num Lock key (may be located on an extended keypad) is down.
Definition SDL3pp_keycode.h:79
constexpr SDL_Keycode KEYCODE_LESS
'<'
Definition SDL3pp_keycode.h:257
constexpr SDL_Keycode KEYCODE_SEMICOLON
';'
Definition SDL3pp_keycode.h:255
constexpr SDL_Keycode KEYCODE_0
'0'
Definition SDL3pp_keycode.h:233
constexpr SDL_Keycode KEYCODE_NUMLOCKCLEAR
ScancodeToKeycode(SCANCODE_NUMLOCKCLEAR)
Definition SDL3pp_keycode.h:408
constexpr SDL_Keycode KEYCODE_PRINTSCREEN
ScancodeToKeycode(SCANCODE_PRINTSCREEN)
Definition SDL3pp_keycode.h:373
constexpr SDL_Keycode KEYCODE_KP_VERTICALBAR
ScancodeToKeycode(SCANCODE_KP_VERTICALBAR)
Definition SDL3pp_keycode.h:663
constexpr SDL_Keycode KEYCODE_KP_0
ScancodeToKeycode(SCANCODE_KP_0)
Definition SDL3pp_keycode.h:453
constexpr SDL_Keycode KEYCODE_G
'g'
Definition SDL3pp_keycode.h:291
constexpr SDL_Keycode KEYCODE_SLASH
'/'
Definition SDL3pp_keycode.h:231
constexpr SDL_Keycode KEYCODE_KP_MEMDIVIDE
ScancodeToKeycode(SCANCODE_KP_MEMDIVIDE)
Definition SDL3pp_keycode.h:702
constexpr SDL_Keycode KEYCODE_RALT
ScancodeToKeycode(SCANCODE_RALT)
Definition SDL3pp_keycode.h:744
constexpr SDL_Keycode KEYCODE_PLUS
'+'
Definition SDL3pp_keycode.h:223
constexpr Keymod KMOD_MODE
the !AltGr key is down.
Definition SDL3pp_keycode.h:83
constexpr SDL_Keycode KEYCODE_CRSEL
ScancodeToKeycode(SCANCODE_CRSEL)
Definition SDL3pp_keycode.h:582
constexpr SDL_Keycode KEYCODE_D
'd'
Definition SDL3pp_keycode.h:285
constexpr SDL_Keycode KEYCODE_UP
ScancodeToKeycode(SCANCODE_UP)
Definition SDL3pp_keycode.h:406
constexpr SDL_Keycode KEYCODE_LGUI
ScancodeToKeycode(SCANCODE_LGUI)
Definition SDL3pp_keycode.h:735
constexpr Keymod KMOD_RSHIFT
the right Shift key is down.
Definition SDL3pp_keycode.h:54
constexpr SDL_Keycode KEYCODE_CAPSLOCK
ScancodeToKeycode(SCANCODE_CAPSLOCK)
Definition SDL3pp_keycode.h:343
constexpr SDL_Keycode KEYCODE_ASTERISK
'*'
Definition SDL3pp_keycode.h:221
constexpr SDL_Keycode KEYCODE_EXSEL
ScancodeToKeycode(SCANCODE_EXSEL)
Definition SDL3pp_keycode.h:585
constexpr Keymod KMOD_LALT
the left Alt key is down.
Definition SDL3pp_keycode.h:66
constexpr SDL_Keycode KEYCODE_KP_000
ScancodeToKeycode(SCANCODE_KP_000)
Definition SDL3pp_keycode.h:591
constexpr SDL_Keycode KEYCODE_KP_7
ScancodeToKeycode(SCANCODE_KP_7)
Definition SDL3pp_keycode.h:444
constexpr SDL_Keycode KEYCODE_W
'w'
Definition SDL3pp_keycode.h:323
constexpr Keycode ScancodeToKeycode(Scancode x)
Transform scancode to keycode.
Definition SDL3pp_keycode.h:186
constexpr SDL_Keycode KEYCODE_SPACE
' '
Definition SDL3pp_keycode.h:201
constexpr SDL_Keycode KEYCODE_F19
ScancodeToKeycode(SCANCODE_F19)
Definition SDL3pp_keycode.h:486
constexpr SDL_Keycode KEYCODE_PRIOR
ScancodeToKeycode(SCANCODE_PRIOR)
Definition SDL3pp_keycode.h:564
constexpr SDL_Keycode KEYCODE_AC_REFRESH
ScancodeToKeycode(SCANCODE_AC_REFRESH)
Definition SDL3pp_keycode.h:834
constexpr SDL_Keycode KEYCODE_RSHIFT
ScancodeToKeycode(SCANCODE_RSHIFT)
Definition SDL3pp_keycode.h:741
constexpr SDL_Keycode KEYCODE_POWER
ScancodeToKeycode(SCANCODE_POWER)
Definition SDL3pp_keycode.h:462
constexpr SDL_Keycode KEYCODE_PERIOD
'.'
Definition SDL3pp_keycode.h:229
constexpr SDL_Keycode KEYCODE_F7
ScancodeToKeycode(SCANCODE_F7)
Definition SDL3pp_keycode.h:358
constexpr SDL_Keycode KEYCODE_MEDIA_REWIND
ScancodeToKeycode(SCANCODE_MEDIA_REWIND)
Definition SDL3pp_keycode.h:777
constexpr SDL_Keycode KEYCODE_F5
ScancodeToKeycode(SCANCODE_F5)
Definition SDL3pp_keycode.h:354
constexpr SDL_Keycode KEYCODE_KP_POWER
ScancodeToKeycode(SCANCODE_KP_POWER)
Definition SDL3pp_keycode.h:645
Uint16 Keymod
Valid key modifiers (possibly OR'd together).
Definition SDL3pp_keycode.h:29
constexpr Keymod KMOD_NONE
no modifier is applicable.
Definition SDL3pp_keycode.h:50
constexpr SDL_Keycode KEYCODE_MULTI_KEY_COMPOSE
Extended key Multi-key Compose.
Definition SDL3pp_keycode.h:858
constexpr SDL_Keycode KEYCODE_ESCAPE
'\x1B'
Definition SDL3pp_keycode.h:195
constexpr SDL_Keycode KEYCODE_MEDIA_STOP
ScancodeToKeycode(SCANCODE_MEDIA_STOP)
Definition SDL3pp_keycode.h:786
constexpr SDL_Keycode KEYCODE_RIGHTBRACKET
']'
Definition SDL3pp_keycode.h:271
constexpr SDL_Keycode KEYCODE_ALTERASE
ScancodeToKeycode(SCANCODE_ALTERASE)
Definition SDL3pp_keycode.h:552
constexpr SDL_Keycode KEYCODE_KP_AT
ScancodeToKeycode(SCANCODE_KP_AT)
Definition SDL3pp_keycode.h:678
constexpr SDL_Keycode KEYCODE_OUT
ScancodeToKeycode(SCANCODE_OUT)
Definition SDL3pp_keycode.h:573
constexpr SDL_Keycode KEYCODE_LEFTBRACKET
'['
Definition SDL3pp_keycode.h:267
constexpr SDL_Keycode KEYCODE_CANCEL
ScancodeToKeycode(SCANCODE_CANCEL)
Definition SDL3pp_keycode.h:558
constexpr SDL_Keycode KEYCODE_SOFTRIGHT
ScancodeToKeycode(SCANCODE_SOFTRIGHT)
Definition SDL3pp_keycode.h:843
constexpr SDL_Keycode KEYCODE_F21
ScancodeToKeycode(SCANCODE_F21)
Definition SDL3pp_keycode.h:492
constexpr Keymod KMOD_SCROLL
the Scroll Lock key is down.
Definition SDL3pp_keycode.h:85
constexpr SDL_Keycode KEYCODE_AC_FORWARD
ScancodeToKeycode(SCANCODE_AC_FORWARD)
Definition SDL3pp_keycode.h:828
constexpr SDL_Keycode KEYCODE_F24
ScancodeToKeycode(SCANCODE_F24)
Definition SDL3pp_keycode.h:501
constexpr SDL_Keycode KEYCODE_MEDIA_FAST_FORWARD
ScancodeToKeycode(SCANCODE_MEDIA_FAST_FORWARD)
Definition SDL3pp_keycode.h:774
constexpr Keymod KMOD_RCTRL
the right Ctrl (Control) key is down.
Definition SDL3pp_keycode.h:63
constexpr SDL_Keycode KEYCODE_SYSREQ
ScancodeToKeycode(SCANCODE_SYSREQ)
Definition SDL3pp_keycode.h:555
constexpr SDL_Keycode KEYCODE_KP_1
ScancodeToKeycode(SCANCODE_KP_1)
Definition SDL3pp_keycode.h:426
constexpr SDL_Keycode KEYCODE_KP_MEMMULTIPLY
ScancodeToKeycode(SCANCODE_KP_MEMMULTIPLY)
Definition SDL3pp_keycode.h:699
constexpr SDL_Keycode KEYCODE_AC_PROPERTIES
ScancodeToKeycode(SCANCODE_AC_PROPERTIES)
Definition SDL3pp_keycode.h:816
constexpr SDL_Keycode KEYCODE_PAGEUP
ScancodeToKeycode(SCANCODE_PAGEUP)
Definition SDL3pp_keycode.h:388
constexpr SDL_Keycode KEYCODE_LEFTBRACE
'{'
Definition SDL3pp_keycode.h:331
constexpr SDL_Keycode KEYCODE_C
'c'
Definition SDL3pp_keycode.h:283
constexpr SDL_Keycode KEYCODE_3
'3'
Definition SDL3pp_keycode.h:239
constexpr SDL_Keycode KEYCODE_RHYPER
Extended key Right Hyper.
Definition SDL3pp_keycode.h:867
constexpr SDL_Keycode KEYCODE_KP_ENTER
ScancodeToKeycode(SCANCODE_KP_ENTER)
Definition SDL3pp_keycode.h:423
constexpr SDL_Keycode KEYCODE_8
'8'
Definition SDL3pp_keycode.h:249
constexpr SDL_Keycode KEYCODE_DOWN
ScancodeToKeycode(SCANCODE_DOWN)
Definition SDL3pp_keycode.h:403
constexpr SDL_Keycode KEYCODE_KP_DECIMAL
ScancodeToKeycode(SCANCODE_KP_DECIMAL)
Definition SDL3pp_keycode.h:720
constexpr SDL_Keycode KEYCODE_MEDIA_PLAY_PAUSE
ScancodeToKeycode(SCANCODE_MEDIA_PLAY_PAUSE)
Definition SDL3pp_keycode.h:792
constexpr SDL_Keycode KEYCODE_F2
ScancodeToKeycode(SCANCODE_F2)
Definition SDL3pp_keycode.h:348
constexpr SDL_Keycode KEYCODE_EQUALS
'='
Definition SDL3pp_keycode.h:259
constexpr SDL_Keycode KEYCODE_CUT
ScancodeToKeycode(SCANCODE_CUT)
Definition SDL3pp_keycode.h:525
constexpr SDL_Keycode KEYCODE_UNDERSCORE
'_'
Definition SDL3pp_keycode.h:275
constexpr SDL_Keycode KEYCODE_KP_MEMADD
ScancodeToKeycode(SCANCODE_KP_MEMADD)
Definition SDL3pp_keycode.h:693
constexpr SDL_Keycode KEYCODE_F14
ScancodeToKeycode(SCANCODE_F14)
Definition SDL3pp_keycode.h:471
constexpr SDL_Keycode KEYCODE_KP_RIGHTPAREN
ScancodeToKeycode(SCANCODE_KP_RIGHTPAREN)
Definition SDL3pp_keycode.h:609
constexpr SDL_Keycode KEYCODE_SCROLLLOCK
ScancodeToKeycode(SCANCODE_SCROLLLOCK)
Definition SDL3pp_keycode.h:376
constexpr SDL_Keycode KEYCODE_DOLLAR
'$'
Definition SDL3pp_keycode.h:209
constexpr SDL_Keycode KEYCODE_F22
ScancodeToKeycode(SCANCODE_F22)
Definition SDL3pp_keycode.h:495
constexpr SDL_Keycode KEYCODE_F
'f'
Definition SDL3pp_keycode.h:289
constexpr SDL_Keycode KEYCODE_HELP
ScancodeToKeycode(SCANCODE_HELP)
Definition SDL3pp_keycode.h:507
constexpr SDL_Keycode KEYCODE_MEDIA_PAUSE
ScancodeToKeycode(SCANCODE_MEDIA_PAUSE)
Definition SDL3pp_keycode.h:768
constexpr SDL_Keycode KEYCODE_KP_BINARY
ScancodeToKeycode(SCANCODE_KP_BINARY)
Definition SDL3pp_keycode.h:714
constexpr SDL_Keycode KEYCODE_MEDIA_PLAY
ScancodeToKeycode(SCANCODE_MEDIA_PLAY)
Definition SDL3pp_keycode.h:765
constexpr SDL_Keycode KEYCODE_KP_EXCLAM
ScancodeToKeycode(SCANCODE_KP_EXCLAM)
Definition SDL3pp_keycode.h:681
constexpr SDL_Keycode KEYCODE_U
'u'
Definition SDL3pp_keycode.h:319
constexpr SDL_Keycode KEYCODE_L
'l'
Definition SDL3pp_keycode.h:301
constexpr SDL_Keycode KEYCODE_F23
ScancodeToKeycode(SCANCODE_F23)
Definition SDL3pp_keycode.h:498
constexpr SDL_Keycode KEYCODE_KP_RIGHTBRACE
ScancodeToKeycode(SCANCODE_KP_RIGHTBRACE)
Definition SDL3pp_keycode.h:615
constexpr SDL_Keycode KEYCODE_LEFT_TAB
Extended key Left Tab.
Definition SDL3pp_keycode.h:852
constexpr SDL_Keycode KEYCODE_F16
ScancodeToKeycode(SCANCODE_F16)
Definition SDL3pp_keycode.h:477
constexpr SDL_Keycode KEYCODE_SELECT
ScancodeToKeycode(SCANCODE_SELECT)
Definition SDL3pp_keycode.h:513
constexpr SDL_Keycode KEYCODE_F8
ScancodeToKeycode(SCANCODE_F8)
Definition SDL3pp_keycode.h:360
constexpr SDL_Keycode KEYCODE_CHANNEL_DECREMENT
ScancodeToKeycode(SCANCODE_CHANNEL_DECREMENT)
Definition SDL3pp_keycode.h:762
constexpr SDL_Keycode KEYCODE_1
'1'
Definition SDL3pp_keycode.h:235
constexpr SDL_Keycode KEYCODE_HASH
'#'
Definition SDL3pp_keycode.h:207
constexpr SDL_Keycode KEYCODE_J
'j'
Definition SDL3pp_keycode.h:297
constexpr SDL_Keycode KEYCODE_AMPERSAND
'&'
Definition SDL3pp_keycode.h:213
constexpr SDL_Keycode KEYCODE_KP_A
ScancodeToKeycode(SCANCODE_KP_A)
Definition SDL3pp_keycode.h:624
constexpr SDL_Keycode KEYCODE_BACKSLASH
'\'
Definition SDL3pp_keycode.h:269
constexpr SDL_Keycode KEYCODE_PAGEDOWN
ScancodeToKeycode(SCANCODE_PAGEDOWN)
Definition SDL3pp_keycode.h:394
constexpr SDL_Keycode KEYCODE_KP_MEMSUBTRACT
ScancodeToKeycode(SCANCODE_KP_MEMSUBTRACT)
Definition SDL3pp_keycode.h:696
constexpr SDL_Keycode KEYCODE_UNDO
ScancodeToKeycode(SCANCODE_UNDO)
Definition SDL3pp_keycode.h:522
constexpr Keymod KMOD_GUI
Any GUI key is down.
Definition SDL3pp_keycode.h:94
constexpr SDL_Keycode KEYCODE_MUTE
ScancodeToKeycode(SCANCODE_MUTE)
Definition SDL3pp_keycode.h:537
constexpr SDL_Keycode KEYCODE_QUESTION
'?'
Definition SDL3pp_keycode.h:263
constexpr SDL_Keycode KEYCODE_RIGHTPAREN
')'
Definition SDL3pp_keycode.h:219
constexpr SDL_Keycode KEYCODE_F17
ScancodeToKeycode(SCANCODE_F17)
Definition SDL3pp_keycode.h:480
constexpr SDL_Keycode KEYCODE_PASTE
ScancodeToKeycode(SCANCODE_PASTE)
Definition SDL3pp_keycode.h:531
constexpr SDL_Keycode KEYCODE_KP_LEFTPAREN
ScancodeToKeycode(SCANCODE_KP_LEFTPAREN)
Definition SDL3pp_keycode.h:606
constexpr SDL_Keycode KEYCODE_KP_AMPERSAND
ScancodeToKeycode(SCANCODE_KP_AMPERSAND)
Definition SDL3pp_keycode.h:657
constexpr SDL_Keycode KEYCODE_KP_EQUALS
ScancodeToKeycode(SCANCODE_KP_EQUALS)
Definition SDL3pp_keycode.h:465
constexpr SDL_Keycode KEYCODE_KP_MEMCLEAR
ScancodeToKeycode(SCANCODE_KP_MEMCLEAR)
Definition SDL3pp_keycode.h:690
constexpr SDL_Keycode KEYCODE_PIPE
'|'
Definition SDL3pp_keycode.h:333
constexpr SDL_Keycode KEYCODE_APOSTROPHE
'\''
Definition SDL3pp_keycode.h:215
constexpr SDL_Keycode KEYCODE_F13
ScancodeToKeycode(SCANCODE_F13)
Definition SDL3pp_keycode.h:468
constexpr SDL_Keycode KEYCODE_DECIMALSEPARATOR
ScancodeToKeycode(SCANCODE_DECIMALSEPARATOR)
Definition SDL3pp_keycode.h:597
constexpr SDL_Keycode KEYCODE_KP_PLUS
ScancodeToKeycode(SCANCODE_KP_PLUS)
Definition SDL3pp_keycode.h:420
constexpr SDL_Keycode KEYCODE_KP_LESS
ScancodeToKeycode(SCANCODE_KP_LESS)
Definition SDL3pp_keycode.h:651
constexpr SDL_Keycode KEYCODE_GREATER
'>'
Definition SDL3pp_keycode.h:261
constexpr SDL_Keycode KEYCODE_LALT
ScancodeToKeycode(SCANCODE_LALT)
Definition SDL3pp_keycode.h:732
constexpr SDL_Keycode KEYCODE_LHYPER
Extended key Left Hyper.
Definition SDL3pp_keycode.h:865
constexpr SDL_Keycode KEYCODE_KP_B
ScancodeToKeycode(SCANCODE_KP_B)
Definition SDL3pp_keycode.h:627
constexpr Keymod KMOD_RGUI
the right GUI key (often the Windows key) is down.
Definition SDL3pp_keycode.h:73
constexpr SDL_Keycode KEYCODE_AC_CLOSE
ScancodeToKeycode(SCANCODE_AC_CLOSE)
Definition SDL3pp_keycode.h:804
constexpr SDL_Keycode KEYCODE_F15
ScancodeToKeycode(SCANCODE_F15)
Definition SDL3pp_keycode.h:474
constexpr SDL_Keycode KEYCODE_KP_8
ScancodeToKeycode(SCANCODE_KP_8)
Definition SDL3pp_keycode.h:447
constexpr SDL_Keycode KEYCODE_PLUSMINUS
'\xB1'
Definition SDL3pp_keycode.h:341
constexpr SDL_Keycode KEYCODE_COLON
':'
Definition SDL3pp_keycode.h:253
constexpr SDL_Keycode KEYCODE_GRAVE
'‘’
Definition SDL3pp_keycode.h:277
constexpr SDL_Keycode KEYCODE_EXECUTE
ScancodeToKeycode(SCANCODE_EXECUTE)
Definition SDL3pp_keycode.h:504
constexpr SDL_Keycode KEYCODE_COMMA
','
Definition SDL3pp_keycode.h:225
constexpr SDL_Keycode KEYCODE_SOFTLEFT
ScancodeToKeycode(SCANCODE_SOFTLEFT)
Definition SDL3pp_keycode.h:840
constexpr SDL_Keycode KEYCODE_Y
'y'
Definition SDL3pp_keycode.h:327
constexpr SDL_Keycode KEYCODE_F4
ScancodeToKeycode(SCANCODE_F4)
Definition SDL3pp_keycode.h:352
constexpr SDL_Keycode KEYCODE_F6
ScancodeToKeycode(SCANCODE_F6)
Definition SDL3pp_keycode.h:356
constexpr SDL_Keycode KEYCODE_HOME
ScancodeToKeycode(SCANCODE_HOME)
Definition SDL3pp_keycode.h:385
constexpr SDL_Keycode KEYCODE_FIND
ScancodeToKeycode(SCANCODE_FIND)
Definition SDL3pp_keycode.h:534
constexpr SDL_Keycode KEYCODE_END
ScancodeToKeycode(SCANCODE_END)
Definition SDL3pp_keycode.h:391
constexpr SDL_Keycode KEYCODE_KP_MEMSTORE
ScancodeToKeycode(SCANCODE_KP_MEMSTORE)
Definition SDL3pp_keycode.h:684
constexpr SDL_Keycode KEYCODE_I
'i'
Definition SDL3pp_keycode.h:295
constexpr SDL_Keycode KEYCODE_AC_PRINT
ScancodeToKeycode(SCANCODE_AC_PRINT)
Definition SDL3pp_keycode.h:813
constexpr SDL_Keycode KEYCODE_MINUS
'-'
Definition SDL3pp_keycode.h:227
constexpr SDL_Keycode KEYCODE_F20
ScancodeToKeycode(SCANCODE_F20)
Definition SDL3pp_keycode.h:489
constexpr SDL_Keycode KEYCODE_KP_GREATER
ScancodeToKeycode(SCANCODE_KP_GREATER)
Definition SDL3pp_keycode.h:654
constexpr SDL_Keycode KEYCODE_APPLICATION
ScancodeToKeycode(SCANCODE_APPLICATION)
Definition SDL3pp_keycode.h:459
constexpr SDL_Keycode KEYCODE_KP_5
ScancodeToKeycode(SCANCODE_KP_5)
Definition SDL3pp_keycode.h:438
constexpr SDL_Keycode KEYCODE_KP_CLEARENTRY
ScancodeToKeycode(SCANCODE_KP_CLEARENTRY)
Definition SDL3pp_keycode.h:711
constexpr SDL_Keycode KEYCODE_CLEAR
ScancodeToKeycode(SCANCODE_CLEAR)
Definition SDL3pp_keycode.h:561
constexpr SDL_Keycode KEYCODE_9
'9'
Definition SDL3pp_keycode.h:251
constexpr SDL_Keycode KEYCODE_BACKSPACE
'\b'
Definition SDL3pp_keycode.h:197
constexpr SDL_Keycode KEYCODE_X
'x'
Definition SDL3pp_keycode.h:325
constexpr SDL_Keycode KEYCODE_CHANNEL_INCREMENT
ScancodeToKeycode(SCANCODE_CHANNEL_INCREMENT)
Definition SDL3pp_keycode.h:759
constexpr Keymod KMOD_SHIFT
Any Shift key is down.
Definition SDL3pp_keycode.h:90
constexpr SDL_Keycode KEYCODE_7
'7'
Definition SDL3pp_keycode.h:247
constexpr SDL_Keycode KEYCODE_DBLAPOSTROPHE
'"'
Definition SDL3pp_keycode.h:205
constexpr SDL_Keycode KEYCODE_KP_2
ScancodeToKeycode(SCANCODE_KP_2)
Definition SDL3pp_keycode.h:429
constexpr SDL_Keycode KEYCODE_K
'k'
Definition SDL3pp_keycode.h:299
constexpr SDL_Keycode KEYCODE_AC_BOOKMARKS
ScancodeToKeycode(SCANCODE_AC_BOOKMARKS)
Definition SDL3pp_keycode.h:837
constexpr SDL_Keycode KEYCODE_F12
ScancodeToKeycode(SCANCODE_F12)
Definition SDL3pp_keycode.h:370
constexpr SDL_Keycode KEYCODE_P
'p'
Definition SDL3pp_keycode.h:309
constexpr SDL_Keycode KEYCODE_KP_HASH
ScancodeToKeycode(SCANCODE_KP_HASH)
Definition SDL3pp_keycode.h:672
constexpr SDL_Keycode KEYCODE_LCTRL
ScancodeToKeycode(SCANCODE_LCTRL)
Definition SDL3pp_keycode.h:726
constexpr SDL_Keycode KEYCODE_KP_MULTIPLY
ScancodeToKeycode(SCANCODE_KP_MULTIPLY)
Definition SDL3pp_keycode.h:414
constexpr SDL_Keycode KEYCODE_AT
'@'
Definition SDL3pp_keycode.h:265
constexpr SDL_Keycode KEYCODE_B
'b'
Definition SDL3pp_keycode.h:281
constexpr SDL_Keycode KEYCODE_KP_D
ScancodeToKeycode(SCANCODE_KP_D)
Definition SDL3pp_keycode.h:633
constexpr SDL_Keycode KEYCODE_INSERT
ScancodeToKeycode(SCANCODE_INSERT)
Definition SDL3pp_keycode.h:382
constexpr SDL_Keycode KEYCODE_LEFT
ScancodeToKeycode(SCANCODE_LEFT)
Definition SDL3pp_keycode.h:400
constexpr SDL_Keycode KEYCODE_M
'm'
Definition SDL3pp_keycode.h:303
constexpr SDL_Keycode KEYCODE_KP_4
ScancodeToKeycode(SCANCODE_KP_4)
Definition SDL3pp_keycode.h:435
constexpr SDL_Keycode KEYCODE_RETURN
'\r'
Definition SDL3pp_keycode.h:193
constexpr SDL_Keycode KEYCODE_KP_00
ScancodeToKeycode(SCANCODE_KP_00)
Definition SDL3pp_keycode.h:588
constexpr SDL_Keycode KEYCODE_SEPARATOR
ScancodeToKeycode(SCANCODE_SEPARATOR)
Definition SDL3pp_keycode.h:570
constexpr SDL_Keycode KEYCODE_KP_LEFTBRACE
ScancodeToKeycode(SCANCODE_KP_LEFTBRACE)
Definition SDL3pp_keycode.h:612
constexpr Keymod KMOD_LGUI
the left GUI key (often the Windows key) is down.
Definition SDL3pp_keycode.h:70
constexpr SDL_Keycode KEYCODE_KP_TAB
ScancodeToKeycode(SCANCODE_KP_TAB)
Definition SDL3pp_keycode.h:618
constexpr SDL_Keycode KEYCODE_F9
ScancodeToKeycode(SCANCODE_F9)
Definition SDL3pp_keycode.h:362
constexpr SDL_Keycode KEYCODE_AC_OPEN
ScancodeToKeycode(SCANCODE_AC_OPEN)
Definition SDL3pp_keycode.h:801
constexpr SDL_Keycode KEYCODE_F11
ScancodeToKeycode(SCANCODE_F11)
Definition SDL3pp_keycode.h:367
constexpr SDL_Keycode KEYCODE_R
'r'
Definition SDL3pp_keycode.h:313
constexpr SDL_Keycode KEYCODE_RGUI
ScancodeToKeycode(SCANCODE_RGUI)
Definition SDL3pp_keycode.h:747
constexpr SDL_Keycode KEYCODE_T
't'
Definition SDL3pp_keycode.h:317
constexpr SDL_Keycode KEYCODE_2
'2'
Definition SDL3pp_keycode.h:237
constexpr Keymod KMOD_CTRL
Any Ctrl key is down.
Definition SDL3pp_keycode.h:88
constexpr Keymod KMOD_ALT
Any Alt key is down.
Definition SDL3pp_keycode.h:92
constexpr SDL_Keycode KEYCODE_AC_EXIT
ScancodeToKeycode(SCANCODE_AC_EXIT)
Definition SDL3pp_keycode.h:807
constexpr Keymod KMOD_LSHIFT
the left Shift key is down.
Definition SDL3pp_keycode.h:52
constexpr SDL_Keycode KEYCODE_TILDE
'~'
Definition SDL3pp_keycode.h:337
constexpr SDL_Keycode KEYCODE_AGAIN
ScancodeToKeycode(SCANCODE_AGAIN)
Definition SDL3pp_keycode.h:519
constexpr SDL_Keycode KEYCODE_MEDIA_SELECT
ScancodeToKeycode(SCANCODE_MEDIA_SELECT)
Definition SDL3pp_keycode.h:795
constexpr SDL_Keycode KEYCODE_CLEARAGAIN
ScancodeToKeycode(SCANCODE_CLEARAGAIN)
Definition SDL3pp_keycode.h:579
constexpr SDL_Keycode KEYCODE_O
'o'
Definition SDL3pp_keycode.h:307
constexpr SDL_Keycode KEYCODE_KP_SPACE
ScancodeToKeycode(SCANCODE_KP_SPACE)
Definition SDL3pp_keycode.h:675
constexpr SDL_Keycode KEYCODE_Q
'q'
Definition SDL3pp_keycode.h:311
constexpr SDL_Keycode KEYCODE_F3
ScancodeToKeycode(SCANCODE_F3)
Definition SDL3pp_keycode.h:350
constexpr SDL_Keycode KEYCODE_AC_NEW
ScancodeToKeycode(SCANCODE_AC_NEW)
Definition SDL3pp_keycode.h:798
constexpr SDL_Keycode KEYCODE_CALL
ScancodeToKeycode(SCANCODE_CALL)
Definition SDL3pp_keycode.h:846
constexpr SDL_Keycode KEYCODE_N
'n'
Definition SDL3pp_keycode.h:305
constexpr SDL_Keycode KEYCODE_A
'a'
Definition SDL3pp_keycode.h:279
constexpr SDL_Keycode KEYCODE_AC_SEARCH
ScancodeToKeycode(SCANCODE_AC_SEARCH)
Definition SDL3pp_keycode.h:819
constexpr SDL_Keycode KEYCODE_CURRENCYUNIT
ScancodeToKeycode(SCANCODE_CURRENCYUNIT)
Definition SDL3pp_keycode.h:600
constexpr SDL_Keycode KEYCODE_KP_DBLAMPERSAND
ScancodeToKeycode(SCANCODE_KP_DBLAMPERSAND)
Definition SDL3pp_keycode.h:660
constexpr SDL_Keycode KEYCODE_KP_PERIOD
ScancodeToKeycode(SCANCODE_KP_PERIOD)
Definition SDL3pp_keycode.h:456
constexpr Keymod KMOD_LEVEL5
the Level 5 Shift key is down.
Definition SDL3pp_keycode.h:57
constexpr SDL_Keycode KEYCODE_H
'h'
Definition SDL3pp_keycode.h:293
constexpr SDL_Keycode KEYCODE_KP_DIVIDE
ScancodeToKeycode(SCANCODE_KP_DIVIDE)
Definition SDL3pp_keycode.h:411
constexpr SDL_Keycode KEYCODE_THOUSANDSSEPARATOR
ScancodeToKeycode(SCANCODE_THOUSANDSSEPARATOR)
Definition SDL3pp_keycode.h:594
constexpr SDL_Keycode KEYCODE_MENU
ScancodeToKeycode(SCANCODE_MENU)
Definition SDL3pp_keycode.h:510
constexpr SDL_Keycode KEYCODE_F18
ScancodeToKeycode(SCANCODE_F18)
Definition SDL3pp_keycode.h:483
constexpr SDL_Keycode KEYCODE_F1
ScancodeToKeycode(SCANCODE_F1)
Definition SDL3pp_keycode.h:346
constexpr SDL_Keycode KEYCODE_S
's'
Definition SDL3pp_keycode.h:315
constexpr SDL_Keycode KEYCODE_AC_HOME
ScancodeToKeycode(SCANCODE_AC_HOME)
Definition SDL3pp_keycode.h:822
constexpr SDL_Keycode KEYCODE_RETURN2
ScancodeToKeycode(SCANCODE_RETURN2)
Definition SDL3pp_keycode.h:567
constexpr SDL_Keycode KEYCODE_DELETE
'\x7F'
Definition SDL3pp_keycode.h:339
constexpr SDL_Keycode KEYCODE_EXTENDED_MASK
EXTENDED_MASK.
Definition SDL3pp_keycode.h:174
constexpr SDL_Keycode KEYCODE_OPER
ScancodeToKeycode(SCANCODE_OPER)
Definition SDL3pp_keycode.h:576
constexpr SDL_Keycode KEYCODE_LMETA
Extended key Left Meta.
Definition SDL3pp_keycode.h:861
constexpr SDL_Keycode KEYCODE_KP_COLON
ScancodeToKeycode(SCANCODE_KP_COLON)
Definition SDL3pp_keycode.h:669
constexpr SDL_Keycode KEYCODE_AC_SAVE
ScancodeToKeycode(SCANCODE_AC_SAVE)
Definition SDL3pp_keycode.h:810
constexpr SDL_Keycode KEYCODE_KP_HEXADECIMAL
ScancodeToKeycode(SCANCODE_KP_HEXADECIMAL)
Definition SDL3pp_keycode.h:723
constexpr SDL_Keycode KEYCODE_KP_MEMRECALL
ScancodeToKeycode(SCANCODE_KP_MEMRECALL)
Definition SDL3pp_keycode.h:687
constexpr SDL_Keycode KEYCODE_KP_3
ScancodeToKeycode(SCANCODE_KP_3)
Definition SDL3pp_keycode.h:432
constexpr SDL_Keycode KEYCODE_F10
ScancodeToKeycode(SCANCODE_F10)
Definition SDL3pp_keycode.h:364
constexpr SDL_Keycode KEYCODE_KP_MINUS
ScancodeToKeycode(SCANCODE_KP_MINUS)
Definition SDL3pp_keycode.h:417
constexpr Keymod KMOD_RALT
the right Alt key is down.
Definition SDL3pp_keycode.h:68
constexpr SDL_Keycode KEYCODE_SLEEP
ScancodeToKeycode(SCANCODE_SLEEP)
Definition SDL3pp_keycode.h:753
constexpr SDL_Keycode KEYCODE_KP_COMMA
ScancodeToKeycode(SCANCODE_KP_COMMA)
Definition SDL3pp_keycode.h:546
constexpr SDL_Keycode KEYCODE_VOLUMEUP
ScancodeToKeycode(SCANCODE_VOLUMEUP)
Definition SDL3pp_keycode.h:540
constexpr SDL_Keycode KEYCODE_KP_9
ScancodeToKeycode(SCANCODE_KP_9)
Definition SDL3pp_keycode.h:450
constexpr SDL_Keycode KEYCODE_STOP
ScancodeToKeycode(SCANCODE_STOP)
Definition SDL3pp_keycode.h:516
constexpr SDL_Keycode KEYCODE_COPY
ScancodeToKeycode(SCANCODE_COPY)
Definition SDL3pp_keycode.h:528
constexpr SDL_Keycode KEYCODE_RIGHT
ScancodeToKeycode(SCANCODE_RIGHT)
Definition SDL3pp_keycode.h:397
constexpr SDL_Keycode KEYCODE_LEFTPAREN
'('
Definition SDL3pp_keycode.h:217
constexpr SDL_Keycode KEYCODE_LEVEL5_SHIFT
Extended key Level 5 Shift.
Definition SDL3pp_keycode.h:855
constexpr SDL_Keycode KEYCODE_UNKNOWN
0
Definition SDL3pp_keycode.h:191
constexpr SDL_Keycode KEYCODE_AC_BACK
ScancodeToKeycode(SCANCODE_AC_BACK)
Definition SDL3pp_keycode.h:825
constexpr SDL_Keycode KEYCODE_VOLUMEDOWN
ScancodeToKeycode(SCANCODE_VOLUMEDOWN)
Definition SDL3pp_keycode.h:543
constexpr SDL_Keycode KEYCODE_4
'4'
Definition SDL3pp_keycode.h:241
constexpr SDL_Keycode KEYCODE_PERCENT
''
Definition SDL3pp_keycode.h:211
constexpr SDL_Keycode KEYCODE_KP_F
ScancodeToKeycode(SCANCODE_KP_F)
Definition SDL3pp_keycode.h:639
constexpr SDL_Keycode KEYCODE_MODE
ScancodeToKeycode(SCANCODE_MODE)
Definition SDL3pp_keycode.h:750
constexpr SDL_Keycode KEYCODE_KP_PLUSMINUS
ScancodeToKeycode(SCANCODE_KP_PLUSMINUS)
Definition SDL3pp_keycode.h:705
constexpr SDL_Keycode KEYCODE_RIGHTBRACE
'}'
Definition SDL3pp_keycode.h:335
constexpr SDL_Keycode KEYCODE_MEDIA_NEXT_TRACK
ScancodeToKeycode(SCANCODE_MEDIA_NEXT_TRACK)
Definition SDL3pp_keycode.h:780
constexpr SDL_Keycode KEYCODE_KP_OCTAL
ScancodeToKeycode(SCANCODE_KP_OCTAL)
Definition SDL3pp_keycode.h:717
constexpr Keymod KMOD_CAPS
the Caps Lock key is down.
Definition SDL3pp_keycode.h:81
constexpr SDL_Keycode KEYCODE_MEDIA_PREVIOUS_TRACK
ScancodeToKeycode(SCANCODE_MEDIA_PREVIOUS_TRACK)
Definition SDL3pp_keycode.h:783
constexpr SDL_Keycode KEYCODE_KP_E
ScancodeToKeycode(SCANCODE_KP_E)
Definition SDL3pp_keycode.h:636
constexpr SDL_Keycode KEYCODE_AC_STOP
ScancodeToKeycode(SCANCODE_AC_STOP)
Definition SDL3pp_keycode.h:831
constexpr SDL_Keycode KEYCODE_KP_XOR
ScancodeToKeycode(SCANCODE_KP_XOR)
Definition SDL3pp_keycode.h:642
constexpr SDL_Keycode KEYCODE_KP_6
ScancodeToKeycode(SCANCODE_KP_6)
Definition SDL3pp_keycode.h:441
constexpr SDL_Keycode KEYCODE_KP_C
ScancodeToKeycode(SCANCODE_KP_C)
Definition SDL3pp_keycode.h:630
constexpr SDL_Keycode KEYCODE_E
'e'
Definition SDL3pp_keycode.h:287
constexpr SDL_Keycode KEYCODE_RMETA
Extended key Right Meta.
Definition SDL3pp_keycode.h:863
constexpr SDL_Keycode KEYCODE_KP_EQUALSAS400
ScancodeToKeycode(SCANCODE_KP_EQUALSAS400)
Definition SDL3pp_keycode.h:549
constexpr SDL_Keycode KEYCODE_TAB
'\t'
Definition SDL3pp_keycode.h:199
constexpr SDL_Keycode KEYCODE_LSHIFT
ScancodeToKeycode(SCANCODE_LSHIFT)
Definition SDL3pp_keycode.h:729
constexpr SDL_Keycode KEYCODE_Z
'z'
Definition SDL3pp_keycode.h:329
constexpr SDL_Keycode KEYCODE_KP_CLEAR
ScancodeToKeycode(SCANCODE_KP_CLEAR)
Definition SDL3pp_keycode.h:708
constexpr SDL_Keycode KEYCODE_EXCLAIM
'!'
Definition SDL3pp_keycode.h:203
constexpr SDL_Keycode KEYCODE_ENDCALL
ScancodeToKeycode(SCANCODE_ENDCALL)
Definition SDL3pp_keycode.h:849
constexpr Keymod KMOD_LCTRL
the left Ctrl (Control) key is down.
Definition SDL3pp_keycode.h:60
the main namespace where all SDL3pp public functions and types live
Definition SDL3pp_assert.h:7