diff options
Diffstat (limited to 'src/contrib/SDL-3.2.20/include/SDL3/SDL_keycode.h')
-rw-r--r-- | src/contrib/SDL-3.2.20/include/SDL3/SDL_keycode.h | 343 |
1 files changed, 343 insertions, 0 deletions
diff --git a/src/contrib/SDL-3.2.20/include/SDL3/SDL_keycode.h b/src/contrib/SDL-3.2.20/include/SDL3/SDL_keycode.h new file mode 100644 index 0000000..61b68e7 --- /dev/null +++ b/src/contrib/SDL-3.2.20/include/SDL3/SDL_keycode.h | |||
@@ -0,0 +1,343 @@ | |||
1 | /* | ||
2 | Simple DirectMedia Layer | ||
3 | Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org> | ||
4 | |||
5 | This software is provided 'as-is', without any express or implied | ||
6 | warranty. In no event will the authors be held liable for any damages | ||
7 | arising from the use of this software. | ||
8 | |||
9 | Permission is granted to anyone to use this software for any purpose, | ||
10 | including commercial applications, and to alter it and redistribute it | ||
11 | freely, subject to the following restrictions: | ||
12 | |||
13 | 1. The origin of this software must not be misrepresented; you must not | ||
14 | claim that you wrote the original software. If you use this software | ||
15 | in a product, an acknowledgment in the product documentation would be | ||
16 | appreciated but is not required. | ||
17 | 2. Altered source versions must be plainly marked as such, and must not be | ||
18 | misrepresented as being the original software. | ||
19 | 3. This notice may not be removed or altered from any source distribution. | ||
20 | */ | ||
21 | |||
22 | /** | ||
23 | * # CategoryKeycode | ||
24 | * | ||
25 | * Defines constants which identify keyboard keys and modifiers. | ||
26 | * | ||
27 | * Please refer to the Best Keyboard Practices document for details on what | ||
28 | * this information means and how best to use it. | ||
29 | * | ||
30 | * https://wiki.libsdl.org/SDL3/BestKeyboardPractices | ||
31 | */ | ||
32 | |||
33 | #ifndef SDL_keycode_h_ | ||
34 | #define SDL_keycode_h_ | ||
35 | |||
36 | #include <SDL3/SDL_stdinc.h> | ||
37 | #include <SDL3/SDL_scancode.h> | ||
38 | |||
39 | /** | ||
40 | * The SDL virtual key representation. | ||
41 | * | ||
42 | * Values of this type are used to represent keyboard keys using the current | ||
43 | * layout of the keyboard. These values include Unicode values representing | ||
44 | * the unmodified character that would be generated by pressing the key, or an | ||
45 | * `SDLK_*` constant for those keys that do not generate characters. | ||
46 | * | ||
47 | * A special exception is the number keys at the top of the keyboard which map | ||
48 | * to SDLK_0...SDLK_9 on AZERTY layouts. | ||
49 | * | ||
50 | * Keys with the `SDLK_EXTENDED_MASK` bit set do not map to a scancode or | ||
51 | * unicode code point. | ||
52 | * | ||
53 | * \since This datatype is available since SDL 3.2.0. | ||
54 | */ | ||
55 | typedef Uint32 SDL_Keycode; | ||
56 | |||
57 | #define SDLK_EXTENDED_MASK (1u << 29) | ||
58 | #define SDLK_SCANCODE_MASK (1u << 30) | ||
59 | #define SDL_SCANCODE_TO_KEYCODE(X) (X | SDLK_SCANCODE_MASK) | ||
60 | #define SDLK_UNKNOWN 0x00000000u /**< 0 */ | ||
61 | #define SDLK_RETURN 0x0000000du /**< '\r' */ | ||
62 | #define SDLK_ESCAPE 0x0000001bu /**< '\x1B' */ | ||
63 | #define SDLK_BACKSPACE 0x00000008u /**< '\b' */ | ||
64 | #define SDLK_TAB 0x00000009u /**< '\t' */ | ||
65 | #define SDLK_SPACE 0x00000020u /**< ' ' */ | ||
66 | #define SDLK_EXCLAIM 0x00000021u /**< '!' */ | ||
67 | #define SDLK_DBLAPOSTROPHE 0x00000022u /**< '"' */ | ||
68 | #define SDLK_HASH 0x00000023u /**< '#' */ | ||
69 | #define SDLK_DOLLAR 0x00000024u /**< '$' */ | ||
70 | #define SDLK_PERCENT 0x00000025u /**< '%' */ | ||
71 | #define SDLK_AMPERSAND 0x00000026u /**< '&' */ | ||
72 | #define SDLK_APOSTROPHE 0x00000027u /**< '\'' */ | ||
73 | #define SDLK_LEFTPAREN 0x00000028u /**< '(' */ | ||
74 | #define SDLK_RIGHTPAREN 0x00000029u /**< ')' */ | ||
75 | #define SDLK_ASTERISK 0x0000002au /**< '*' */ | ||
76 | #define SDLK_PLUS 0x0000002bu /**< '+' */ | ||
77 | #define SDLK_COMMA 0x0000002cu /**< ',' */ | ||
78 | #define SDLK_MINUS 0x0000002du /**< '-' */ | ||
79 | #define SDLK_PERIOD 0x0000002eu /**< '.' */ | ||
80 | #define SDLK_SLASH 0x0000002fu /**< '/' */ | ||
81 | #define SDLK_0 0x00000030u /**< '0' */ | ||
82 | #define SDLK_1 0x00000031u /**< '1' */ | ||
83 | #define SDLK_2 0x00000032u /**< '2' */ | ||
84 | #define SDLK_3 0x00000033u /**< '3' */ | ||
85 | #define SDLK_4 0x00000034u /**< '4' */ | ||
86 | #define SDLK_5 0x00000035u /**< '5' */ | ||
87 | #define SDLK_6 0x00000036u /**< '6' */ | ||
88 | #define SDLK_7 0x00000037u /**< '7' */ | ||
89 | #define SDLK_8 0x00000038u /**< '8' */ | ||
90 | #define SDLK_9 0x00000039u /**< '9' */ | ||
91 | #define SDLK_COLON 0x0000003au /**< ':' */ | ||
92 | #define SDLK_SEMICOLON 0x0000003bu /**< ';' */ | ||
93 | #define SDLK_LESS 0x0000003cu /**< '<' */ | ||
94 | #define SDLK_EQUALS 0x0000003du /**< '=' */ | ||
95 | #define SDLK_GREATER 0x0000003eu /**< '>' */ | ||
96 | #define SDLK_QUESTION 0x0000003fu /**< '?' */ | ||
97 | #define SDLK_AT 0x00000040u /**< '@' */ | ||
98 | #define SDLK_LEFTBRACKET 0x0000005bu /**< '[' */ | ||
99 | #define SDLK_BACKSLASH 0x0000005cu /**< '\\' */ | ||
100 | #define SDLK_RIGHTBRACKET 0x0000005du /**< ']' */ | ||
101 | #define SDLK_CARET 0x0000005eu /**< '^' */ | ||
102 | #define SDLK_UNDERSCORE 0x0000005fu /**< '_' */ | ||
103 | #define SDLK_GRAVE 0x00000060u /**< '`' */ | ||
104 | #define SDLK_A 0x00000061u /**< 'a' */ | ||
105 | #define SDLK_B 0x00000062u /**< 'b' */ | ||
106 | #define SDLK_C 0x00000063u /**< 'c' */ | ||
107 | #define SDLK_D 0x00000064u /**< 'd' */ | ||
108 | #define SDLK_E 0x00000065u /**< 'e' */ | ||
109 | #define SDLK_F 0x00000066u /**< 'f' */ | ||
110 | #define SDLK_G 0x00000067u /**< 'g' */ | ||
111 | #define SDLK_H 0x00000068u /**< 'h' */ | ||
112 | #define SDLK_I 0x00000069u /**< 'i' */ | ||
113 | #define SDLK_J 0x0000006au /**< 'j' */ | ||
114 | #define SDLK_K 0x0000006bu /**< 'k' */ | ||
115 | #define SDLK_L 0x0000006cu /**< 'l' */ | ||
116 | #define SDLK_M 0x0000006du /**< 'm' */ | ||
117 | #define SDLK_N 0x0000006eu /**< 'n' */ | ||
118 | #define SDLK_O 0x0000006fu /**< 'o' */ | ||
119 | #define SDLK_P 0x00000070u /**< 'p' */ | ||
120 | #define SDLK_Q 0x00000071u /**< 'q' */ | ||
121 | #define SDLK_R 0x00000072u /**< 'r' */ | ||
122 | #define SDLK_S 0x00000073u /**< 's' */ | ||
123 | #define SDLK_T 0x00000074u /**< 't' */ | ||
124 | #define SDLK_U 0x00000075u /**< 'u' */ | ||
125 | #define SDLK_V 0x00000076u /**< 'v' */ | ||
126 | #define SDLK_W 0x00000077u /**< 'w' */ | ||
127 | #define SDLK_X 0x00000078u /**< 'x' */ | ||
128 | #define SDLK_Y 0x00000079u /**< 'y' */ | ||
129 | #define SDLK_Z 0x0000007au /**< 'z' */ | ||
130 | #define SDLK_LEFTBRACE 0x0000007bu /**< '{' */ | ||
131 | #define SDLK_PIPE 0x0000007cu /**< '|' */ | ||
132 | #define SDLK_RIGHTBRACE 0x0000007du /**< '}' */ | ||
133 | #define SDLK_TILDE 0x0000007eu /**< '~' */ | ||
134 | #define SDLK_DELETE 0x0000007fu /**< '\x7F' */ | ||
135 | #define SDLK_PLUSMINUS 0x000000b1u /**< '\xB1' */ | ||
136 | #define SDLK_CAPSLOCK 0x40000039u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CAPSLOCK) */ | ||
137 | #define SDLK_F1 0x4000003au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F1) */ | ||
138 | #define SDLK_F2 0x4000003bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F2) */ | ||
139 | #define SDLK_F3 0x4000003cu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F3) */ | ||
140 | #define SDLK_F4 0x4000003du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F4) */ | ||
141 | #define SDLK_F5 0x4000003eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F5) */ | ||
142 | #define SDLK_F6 0x4000003fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F6) */ | ||
143 | #define SDLK_F7 0x40000040u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F7) */ | ||
144 | #define SDLK_F8 0x40000041u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F8) */ | ||
145 | #define SDLK_F9 0x40000042u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F9) */ | ||
146 | #define SDLK_F10 0x40000043u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F10) */ | ||
147 | #define SDLK_F11 0x40000044u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F11) */ | ||
148 | #define SDLK_F12 0x40000045u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F12) */ | ||
149 | #define SDLK_PRINTSCREEN 0x40000046u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRINTSCREEN) */ | ||
150 | #define SDLK_SCROLLLOCK 0x40000047u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SCROLLLOCK) */ | ||
151 | #define SDLK_PAUSE 0x40000048u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAUSE) */ | ||
152 | #define SDLK_INSERT 0x40000049u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_INSERT) */ | ||
153 | #define SDLK_HOME 0x4000004au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HOME) */ | ||
154 | #define SDLK_PAGEUP 0x4000004bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEUP) */ | ||
155 | #define SDLK_END 0x4000004du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_END) */ | ||
156 | #define SDLK_PAGEDOWN 0x4000004eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEDOWN) */ | ||
157 | #define SDLK_RIGHT 0x4000004fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RIGHT) */ | ||
158 | #define SDLK_LEFT 0x40000050u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LEFT) */ | ||
159 | #define SDLK_DOWN 0x40000051u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DOWN) */ | ||
160 | #define SDLK_UP 0x40000052u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UP) */ | ||
161 | #define SDLK_NUMLOCKCLEAR 0x40000053u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_NUMLOCKCLEAR) */ | ||
162 | #define SDLK_KP_DIVIDE 0x40000054u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DIVIDE) */ | ||
163 | #define SDLK_KP_MULTIPLY 0x40000055u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MULTIPLY) */ | ||
164 | #define SDLK_KP_MINUS 0x40000056u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MINUS) */ | ||
165 | #define SDLK_KP_PLUS 0x40000057u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUS) */ | ||
166 | #define SDLK_KP_ENTER 0x40000058u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_ENTER) */ | ||
167 | #define SDLK_KP_1 0x40000059u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_1) */ | ||
168 | #define SDLK_KP_2 0x4000005au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_2) */ | ||
169 | #define SDLK_KP_3 0x4000005bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_3) */ | ||
170 | #define SDLK_KP_4 0x4000005cu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_4) */ | ||
171 | #define SDLK_KP_5 0x4000005du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_5) */ | ||
172 | #define SDLK_KP_6 0x4000005eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_6) */ | ||
173 | #define SDLK_KP_7 0x4000005fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_7) */ | ||
174 | #define SDLK_KP_8 0x40000060u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_8) */ | ||
175 | #define SDLK_KP_9 0x40000061u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_9) */ | ||
176 | #define SDLK_KP_0 0x40000062u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_0) */ | ||
177 | #define SDLK_KP_PERIOD 0x40000063u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERIOD) */ | ||
178 | #define SDLK_APPLICATION 0x40000065u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APPLICATION) */ | ||
179 | #define SDLK_POWER 0x40000066u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_POWER) */ | ||
180 | #define SDLK_KP_EQUALS 0x40000067u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALS) */ | ||
181 | #define SDLK_F13 0x40000068u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F13) */ | ||
182 | #define SDLK_F14 0x40000069u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F14) */ | ||
183 | #define SDLK_F15 0x4000006au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F15) */ | ||
184 | #define SDLK_F16 0x4000006bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F16) */ | ||
185 | #define SDLK_F17 0x4000006cu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F17) */ | ||
186 | #define SDLK_F18 0x4000006du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F18) */ | ||
187 | #define SDLK_F19 0x4000006eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F19) */ | ||
188 | #define SDLK_F20 0x4000006fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F20) */ | ||
189 | #define SDLK_F21 0x40000070u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F21) */ | ||
190 | #define SDLK_F22 0x40000071u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F22) */ | ||
191 | #define SDLK_F23 0x40000072u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F23) */ | ||
192 | #define SDLK_F24 0x40000073u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F24) */ | ||
193 | #define SDLK_EXECUTE 0x40000074u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXECUTE) */ | ||
194 | #define SDLK_HELP 0x40000075u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HELP) */ | ||
195 | #define SDLK_MENU 0x40000076u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MENU) */ | ||
196 | #define SDLK_SELECT 0x40000077u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SELECT) */ | ||
197 | #define SDLK_STOP 0x40000078u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_STOP) */ | ||
198 | #define SDLK_AGAIN 0x40000079u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AGAIN) */ | ||
199 | #define SDLK_UNDO 0x4000007au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UNDO) */ | ||
200 | #define SDLK_CUT 0x4000007bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CUT) */ | ||
201 | #define SDLK_COPY 0x4000007cu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_COPY) */ | ||
202 | #define SDLK_PASTE 0x4000007du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PASTE) */ | ||
203 | #define SDLK_FIND 0x4000007eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_FIND) */ | ||
204 | #define SDLK_MUTE 0x4000007fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MUTE) */ | ||
205 | #define SDLK_VOLUMEUP 0x40000080u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEUP) */ | ||
206 | #define SDLK_VOLUMEDOWN 0x40000081u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEDOWN) */ | ||
207 | #define SDLK_KP_COMMA 0x40000085u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COMMA) */ | ||
208 | #define SDLK_KP_EQUALSAS400 0x40000086u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALSAS400) */ | ||
209 | #define SDLK_ALTERASE 0x40000099u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_ALTERASE) */ | ||
210 | #define SDLK_SYSREQ 0x4000009au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SYSREQ) */ | ||
211 | #define SDLK_CANCEL 0x4000009bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CANCEL) */ | ||
212 | #define SDLK_CLEAR 0x4000009cu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEAR) */ | ||
213 | #define SDLK_PRIOR 0x4000009du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRIOR) */ | ||
214 | #define SDLK_RETURN2 0x4000009eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RETURN2) */ | ||
215 | #define SDLK_SEPARATOR 0x4000009fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SEPARATOR) */ | ||
216 | #define SDLK_OUT 0x400000a0u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OUT) */ | ||
217 | #define SDLK_OPER 0x400000a1u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OPER) */ | ||
218 | #define SDLK_CLEARAGAIN 0x400000a2u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEARAGAIN) */ | ||
219 | #define SDLK_CRSEL 0x400000a3u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CRSEL) */ | ||
220 | #define SDLK_EXSEL 0x400000a4u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXSEL) */ | ||
221 | #define SDLK_KP_00 0x400000b0u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_00) */ | ||
222 | #define SDLK_KP_000 0x400000b1u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_000) */ | ||
223 | #define SDLK_THOUSANDSSEPARATOR 0x400000b2u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_THOUSANDSSEPARATOR) */ | ||
224 | #define SDLK_DECIMALSEPARATOR 0x400000b3u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DECIMALSEPARATOR) */ | ||
225 | #define SDLK_CURRENCYUNIT 0x400000b4u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYUNIT) */ | ||
226 | #define SDLK_CURRENCYSUBUNIT 0x400000b5u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYSUBUNIT) */ | ||
227 | #define SDLK_KP_LEFTPAREN 0x400000b6u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTPAREN) */ | ||
228 | #define SDLK_KP_RIGHTPAREN 0x400000b7u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTPAREN) */ | ||
229 | #define SDLK_KP_LEFTBRACE 0x400000b8u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTBRACE) */ | ||
230 | #define SDLK_KP_RIGHTBRACE 0x400000b9u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTBRACE) */ | ||
231 | #define SDLK_KP_TAB 0x400000bau /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_TAB) */ | ||
232 | #define SDLK_KP_BACKSPACE 0x400000bbu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BACKSPACE) */ | ||
233 | #define SDLK_KP_A 0x400000bcu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_A) */ | ||
234 | #define SDLK_KP_B 0x400000bdu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_B) */ | ||
235 | #define SDLK_KP_C 0x400000beu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_C) */ | ||
236 | #define SDLK_KP_D 0x400000bfu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_D) */ | ||
237 | #define SDLK_KP_E 0x400000c0u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_E) */ | ||
238 | #define SDLK_KP_F 0x400000c1u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_F) */ | ||
239 | #define SDLK_KP_XOR 0x400000c2u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_XOR) */ | ||
240 | #define SDLK_KP_POWER 0x400000c3u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_POWER) */ | ||
241 | #define SDLK_KP_PERCENT 0x400000c4u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERCENT) */ | ||
242 | #define SDLK_KP_LESS 0x400000c5u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LESS) */ | ||
243 | #define SDLK_KP_GREATER 0x400000c6u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_GREATER) */ | ||
244 | #define SDLK_KP_AMPERSAND 0x400000c7u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AMPERSAND) */ | ||
245 | #define SDLK_KP_DBLAMPERSAND 0x400000c8u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLAMPERSAND) */ | ||
246 | #define SDLK_KP_VERTICALBAR 0x400000c9u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_VERTICALBAR) */ | ||
247 | #define SDLK_KP_DBLVERTICALBAR 0x400000cau /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLVERTICALBAR) */ | ||
248 | #define SDLK_KP_COLON 0x400000cbu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COLON) */ | ||
249 | #define SDLK_KP_HASH 0x400000ccu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HASH) */ | ||
250 | #define SDLK_KP_SPACE 0x400000cdu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_SPACE) */ | ||
251 | #define SDLK_KP_AT 0x400000ceu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AT) */ | ||
252 | #define SDLK_KP_EXCLAM 0x400000cfu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EXCLAM) */ | ||
253 | #define SDLK_KP_MEMSTORE 0x400000d0u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSTORE) */ | ||
254 | #define SDLK_KP_MEMRECALL 0x400000d1u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMRECALL) */ | ||
255 | #define SDLK_KP_MEMCLEAR 0x400000d2u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMCLEAR) */ | ||
256 | #define SDLK_KP_MEMADD 0x400000d3u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMADD) */ | ||
257 | #define SDLK_KP_MEMSUBTRACT 0x400000d4u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSUBTRACT) */ | ||
258 | #define SDLK_KP_MEMMULTIPLY 0x400000d5u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMMULTIPLY) */ | ||
259 | #define SDLK_KP_MEMDIVIDE 0x400000d6u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMDIVIDE) */ | ||
260 | #define SDLK_KP_PLUSMINUS 0x400000d7u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUSMINUS) */ | ||
261 | #define SDLK_KP_CLEAR 0x400000d8u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEAR) */ | ||
262 | #define SDLK_KP_CLEARENTRY 0x400000d9u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEARENTRY) */ | ||
263 | #define SDLK_KP_BINARY 0x400000dau /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BINARY) */ | ||
264 | #define SDLK_KP_OCTAL 0x400000dbu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_OCTAL) */ | ||
265 | #define SDLK_KP_DECIMAL 0x400000dcu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DECIMAL) */ | ||
266 | #define SDLK_KP_HEXADECIMAL 0x400000ddu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HEXADECIMAL) */ | ||
267 | #define SDLK_LCTRL 0x400000e0u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LCTRL) */ | ||
268 | #define SDLK_LSHIFT 0x400000e1u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LSHIFT) */ | ||
269 | #define SDLK_LALT 0x400000e2u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LALT) */ | ||
270 | #define SDLK_LGUI 0x400000e3u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LGUI) */ | ||
271 | #define SDLK_RCTRL 0x400000e4u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RCTRL) */ | ||
272 | #define SDLK_RSHIFT 0x400000e5u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RSHIFT) */ | ||
273 | #define SDLK_RALT 0x400000e6u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RALT) */ | ||
274 | #define SDLK_RGUI 0x400000e7u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RGUI) */ | ||
275 | #define SDLK_MODE 0x40000101u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MODE) */ | ||
276 | #define SDLK_SLEEP 0x40000102u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP) */ | ||
277 | #define SDLK_WAKE 0x40000103u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_WAKE) */ | ||
278 | #define SDLK_CHANNEL_INCREMENT 0x40000104u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CHANNEL_INCREMENT) */ | ||
279 | #define SDLK_CHANNEL_DECREMENT 0x40000105u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CHANNEL_DECREMENT) */ | ||
280 | #define SDLK_MEDIA_PLAY 0x40000106u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_PLAY) */ | ||
281 | #define SDLK_MEDIA_PAUSE 0x40000107u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_PAUSE) */ | ||
282 | #define SDLK_MEDIA_RECORD 0x40000108u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_RECORD) */ | ||
283 | #define SDLK_MEDIA_FAST_FORWARD 0x40000109u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_FAST_FORWARD) */ | ||
284 | #define SDLK_MEDIA_REWIND 0x4000010au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_REWIND) */ | ||
285 | #define SDLK_MEDIA_NEXT_TRACK 0x4000010bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_NEXT_TRACK) */ | ||
286 | #define SDLK_MEDIA_PREVIOUS_TRACK 0x4000010cu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_PREVIOUS_TRACK) */ | ||
287 | #define SDLK_MEDIA_STOP 0x4000010du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_STOP) */ | ||
288 | #define SDLK_MEDIA_EJECT 0x4000010eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_EJECT) */ | ||
289 | #define SDLK_MEDIA_PLAY_PAUSE 0x4000010fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_PLAY_PAUSE) */ | ||
290 | #define SDLK_MEDIA_SELECT 0x40000110u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIA_SELECT) */ | ||
291 | #define SDLK_AC_NEW 0x40000111u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_NEW) */ | ||
292 | #define SDLK_AC_OPEN 0x40000112u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_OPEN) */ | ||
293 | #define SDLK_AC_CLOSE 0x40000113u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_CLOSE) */ | ||
294 | #define SDLK_AC_EXIT 0x40000114u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_EXIT) */ | ||
295 | #define SDLK_AC_SAVE 0x40000115u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_SAVE) */ | ||
296 | #define SDLK_AC_PRINT 0x40000116u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_PRINT) */ | ||
297 | #define SDLK_AC_PROPERTIES 0x40000117u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_PROPERTIES) */ | ||
298 | #define SDLK_AC_SEARCH 0x40000118u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_SEARCH) */ | ||
299 | #define SDLK_AC_HOME 0x40000119u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_HOME) */ | ||
300 | #define SDLK_AC_BACK 0x4000011au /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BACK) */ | ||
301 | #define SDLK_AC_FORWARD 0x4000011bu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_FORWARD) */ | ||
302 | #define SDLK_AC_STOP 0x4000011cu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_STOP) */ | ||
303 | #define SDLK_AC_REFRESH 0x4000011du /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_REFRESH) */ | ||
304 | #define SDLK_AC_BOOKMARKS 0x4000011eu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BOOKMARKS) */ | ||
305 | #define SDLK_SOFTLEFT 0x4000011fu /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTLEFT) */ | ||
306 | #define SDLK_SOFTRIGHT 0x40000120u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTRIGHT) */ | ||
307 | #define SDLK_CALL 0x40000121u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CALL) */ | ||
308 | #define SDLK_ENDCALL 0x40000122u /**< SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_ENDCALL) */ | ||
309 | #define SDLK_LEFT_TAB 0x20000001u /**< Extended key Left Tab */ | ||
310 | #define SDLK_LEVEL5_SHIFT 0x20000002u /**< Extended key Level 5 Shift */ | ||
311 | #define SDLK_MULTI_KEY_COMPOSE 0x20000003u /**< Extended key Multi-key Compose */ | ||
312 | #define SDLK_LMETA 0x20000004u /**< Extended key Left Meta */ | ||
313 | #define SDLK_RMETA 0x20000005u /**< Extended key Right Meta */ | ||
314 | #define SDLK_LHYPER 0x20000006u /**< Extended key Left Hyper */ | ||
315 | #define SDLK_RHYPER 0x20000007u /**< Extended key Right Hyper */ | ||
316 | |||
317 | /** | ||
318 | * Valid key modifiers (possibly OR'd together). | ||
319 | * | ||
320 | * \since This datatype is available since SDL 3.2.0. | ||
321 | */ | ||
322 | typedef Uint16 SDL_Keymod; | ||
323 | |||
324 | #define SDL_KMOD_NONE 0x0000u /**< no modifier is applicable. */ | ||
325 | #define SDL_KMOD_LSHIFT 0x0001u /**< the left Shift key is down. */ | ||
326 | #define SDL_KMOD_RSHIFT 0x0002u /**< the right Shift key is down. */ | ||
327 | #define SDL_KMOD_LEVEL5 0x0004u /**< the Level 5 Shift key is down. */ | ||
328 | #define SDL_KMOD_LCTRL 0x0040u /**< the left Ctrl (Control) key is down. */ | ||
329 | #define SDL_KMOD_RCTRL 0x0080u /**< the right Ctrl (Control) key is down. */ | ||
330 | #define SDL_KMOD_LALT 0x0100u /**< the left Alt key is down. */ | ||
331 | #define SDL_KMOD_RALT 0x0200u /**< the right Alt key is down. */ | ||
332 | #define SDL_KMOD_LGUI 0x0400u /**< the left GUI key (often the Windows key) is down. */ | ||
333 | #define SDL_KMOD_RGUI 0x0800u /**< the right GUI key (often the Windows key) is down. */ | ||
334 | #define SDL_KMOD_NUM 0x1000u /**< the Num Lock key (may be located on an extended keypad) is down. */ | ||
335 | #define SDL_KMOD_CAPS 0x2000u /**< the Caps Lock key is down. */ | ||
336 | #define SDL_KMOD_MODE 0x4000u /**< the !AltGr key is down. */ | ||
337 | #define SDL_KMOD_SCROLL 0x8000u /**< the Scroll Lock key is down. */ | ||
338 | #define SDL_KMOD_CTRL (SDL_KMOD_LCTRL | SDL_KMOD_RCTRL) /**< Any Ctrl key is down. */ | ||
339 | #define SDL_KMOD_SHIFT (SDL_KMOD_LSHIFT | SDL_KMOD_RSHIFT) /**< Any Shift key is down. */ | ||
340 | #define SDL_KMOD_ALT (SDL_KMOD_LALT | SDL_KMOD_RALT) /**< Any Alt key is down. */ | ||
341 | #define SDL_KMOD_GUI (SDL_KMOD_LGUI | SDL_KMOD_RGUI) /**< Any GUI key is down. */ | ||
342 | |||
343 | #endif /* SDL_keycode_h_ */ | ||