galaxy 1.0.0
Real-Time C++23 Game Programming Framework. Built on data-driven design principles and agile software engineering.
Loading...
Searching...
No Matches
Keys.hpp
Go to the documentation of this file.
1
7
8#ifndef GALAXY_INPUT_KEYS_HPP_
9#define GALAXY_INPUT_KEYS_HPP_
10
11#include <SDL3/SDL_keycode.h>
12
13#undef KEY_EXECUTE
14#undef MOD_SHIFT
15#undef MOD_ALT
16
17namespace galaxy
18{
22 enum class Keys : SDL_Keycode
23 {
24 KEY_UNKNOWN = SDLK_UNKNOWN,
25 KEY_RETURN = SDLK_RETURN,
26 KEY_ESCAPE = SDLK_ESCAPE,
27 KEY_BACKSPACE = SDLK_BACKSPACE,
28 KEY_TAB = SDLK_TAB,
29 KEY_SPACE = SDLK_SPACE,
30 KEY_EXCLAIM = SDLK_EXCLAIM,
31 KEY_DBLAPOSTROPHE = SDLK_DBLAPOSTROPHE,
32 KEY_HASH = SDLK_HASH,
33 KEY_DOLLAR = SDLK_DOLLAR,
34 KEY_PERCENT = SDLK_PERCENT,
35 KEY_AMPERSAND = SDLK_AMPERSAND,
36 KEY_APOSTROPHE = SDLK_APOSTROPHE,
37 KEY_LEFTPAREN = SDLK_LEFTPAREN,
38 KEY_RIGHTPAREN = SDLK_RIGHTPAREN,
39 KEY_ASTERISK = SDLK_ASTERISK,
40 KEY_PLUS = SDLK_PLUS,
41 KEY_COMMA = SDLK_COMMA,
42 KEY_MINUS = SDLK_MINUS,
43 KEY_PERIOD = SDLK_PERIOD,
44 KEY_SLASH = SDLK_SLASH,
45 KEY_0 = SDLK_0,
46 KEY_1 = SDLK_1,
47 KEY_2 = SDLK_2,
48 KEY_3 = SDLK_3,
49 KEY_4 = SDLK_4,
50 KEY_5 = SDLK_5,
51 KEY_6 = SDLK_6,
52 KEY_7 = SDLK_7,
53 KEY_8 = SDLK_8,
54 KEY_9 = SDLK_9,
55 KEY_COLON = SDLK_COLON,
56 KEY_SEMICOLON = SDLK_SEMICOLON,
57 KEY_LESS = SDLK_LESS,
58 KEY_EQUALS = SDLK_EQUALS,
59 KEY_GREATER = SDLK_GREATER,
60 KEY_QUESTION = SDLK_QUESTION,
61 KEY_AT = SDLK_AT,
62 KEY_LEFTBRACKET = SDLK_LEFTBRACKET,
63 KEY_BACKSLASH = SDLK_BACKSLASH,
64 KEY_RIGHTBRACKET = SDLK_RIGHTBRACKET,
65 KEY_CARET = SDLK_CARET,
66 KEY_UNDERSCORE = SDLK_UNDERSCORE,
67 KEY_GRAVE = SDLK_GRAVE,
68 KEY_A = SDLK_A,
69 KEY_B = SDLK_B,
70 KEY_C = SDLK_C,
71 KEY_D = SDLK_D,
72 KEY_E = SDLK_E,
73 KEY_F = SDLK_F,
74 KEY_G = SDLK_G,
75 KEY_H = SDLK_H,
76 KEY_I = SDLK_I,
77 KEY_J = SDLK_J,
78 KEY_K = SDLK_K,
79 KEY_L = SDLK_L,
80 KEY_M = SDLK_M,
81 KEY_N = SDLK_N,
82 KEY_O = SDLK_O,
83 KEY_P = SDLK_P,
84 KEY_Q = SDLK_Q,
85 KEY_R = SDLK_R,
86 KEY_S = SDLK_S,
87 KEY_T = SDLK_T,
88 KEY_U = SDLK_U,
89 KEY_V = SDLK_V,
90 KEY_W = SDLK_W,
91 KEY_X = SDLK_X,
92 KEY_Y = SDLK_Y,
93 KEY_Z = SDLK_Z,
94 KEY_LEFTBRACE = SDLK_LEFTBRACE,
95 KEY_PIPE = SDLK_PIPE,
96 KEY_RIGHTBRACE = SDLK_RIGHTBRACE,
97 KEY_TILDE = SDLK_TILDE,
98 KEY_DELETE = SDLK_DELETE,
99 KEY_PLUSMINUS = SDLK_PLUSMINUS,
100 KEY_CAPSLOCK = SDLK_CAPSLOCK,
101 KEY_F1 = SDLK_F1,
102 KEY_F2 = SDLK_F2,
103 KEY_F3 = SDLK_F3,
104 KEY_F4 = SDLK_F4,
105 KEY_F5 = SDLK_F5,
106 KEY_F6 = SDLK_F6,
107 KEY_F7 = SDLK_F7,
108 KEY_F8 = SDLK_F8,
109 KEY_F9 = SDLK_F9,
110 KEY_F10 = SDLK_F10,
111 KEY_F11 = SDLK_F11,
112 KEY_F12 = SDLK_F12,
113 KEY_PRINTSCREEN = SDLK_PRINTSCREEN,
114 KEY_SCROLLLOCK = SDLK_SCROLLLOCK,
115 KEY_PAUSE = SDLK_PAUSE,
116 KEY_INSERT = SDLK_INSERT,
117 KEY_HOME = SDLK_HOME,
118 KEY_PAGEUP = SDLK_PAGEUP,
119 KEY_END = SDLK_END,
120 KEY_PAGEDOWN = SDLK_PAGEDOWN,
121 KEY_RIGHT = SDLK_RIGHT,
122 KEY_LEFT = SDLK_LEFT,
123 KEY_DOWN = SDLK_DOWN,
124 KEY_UP = SDLK_UP,
125 KEY_NUMLOCKCLEAR = SDLK_NUMLOCKCLEAR,
126 KEY_KP_DIVIDE = SDLK_KP_DIVIDE,
127 KEY_KP_MULTIPLY = SDLK_KP_MULTIPLY,
128 KEY_KP_MINUS = SDLK_KP_MINUS,
129 KEY_KP_PLUS = SDLK_KP_PLUS,
130 KEY_KP_ENTER = SDLK_KP_ENTER,
131 KEY_KP_1 = SDLK_KP_1,
132 KEY_KP_2 = SDLK_KP_2,
133 KEY_KP_3 = SDLK_KP_3,
134 KEY_KP_4 = SDLK_KP_4,
135 KEY_KP_5 = SDLK_KP_5,
136 KEY_KP_6 = SDLK_KP_6,
137 KEY_KP_7 = SDLK_KP_7,
138 KEY_KP_8 = SDLK_KP_8,
139 KEY_KP_9 = SDLK_KP_9,
140 KEY_KP_0 = SDLK_KP_0,
141 KEY_KP_PERIOD = SDLK_KP_PERIOD,
142 KEY_APPLICATION = SDLK_APPLICATION,
143 KEY_POWER = SDLK_POWER,
144 KEY_KP_EQUALS = SDLK_KP_EQUALS,
145 KEY_F13 = SDLK_F13,
146 KEY_F14 = SDLK_F14,
147 KEY_F15 = SDLK_F15,
148 KEY_F16 = SDLK_F16,
149 KEY_F17 = SDLK_F17,
150 KEY_F18 = SDLK_F18,
151 KEY_F19 = SDLK_F19,
152 KEY_F20 = SDLK_F20,
153 KEY_F21 = SDLK_F21,
154 KEY_F22 = SDLK_F22,
155 KEY_F23 = SDLK_F23,
156 KEY_F24 = SDLK_F24,
157 KEY_EXECUTE = SDLK_EXECUTE,
158 KEY_HELP = SDLK_HELP,
159 KEY_MENU = SDLK_MENU,
160 KEY_SELECT = SDLK_SELECT,
161 KEY_STOP = SDLK_STOP,
162 KEY_AGAIN = SDLK_AGAIN,
163 KEY_UNDO = SDLK_UNDO,
164 KEY_CUT = SDLK_CUT,
165 KEY_COPY = SDLK_COPY,
166 KEY_PASTE = SDLK_PASTE,
167 KEY_FIND = SDLK_FIND,
168 KEY_MUTE = SDLK_MUTE,
169 KEY_VOLUMEUP = SDLK_VOLUMEUP,
170 KEY_VOLUMEDOWN = SDLK_VOLUMEDOWN,
171 KEY_KP_COMMA = SDLK_KP_COMMA,
172 KEY_KP_EQUALSAS400 = SDLK_KP_EQUALSAS400,
173 KEY_ALTERASE = SDLK_ALTERASE,
174 KEY_SYSREQ = SDLK_SYSREQ,
175 KEY_CANCEL = SDLK_CANCEL,
176 KEY_CLEAR = SDLK_CLEAR,
177 KEY_PRIOR = SDLK_PRIOR,
178 KEY_RETURN2 = SDLK_RETURN2,
179 KEY_SEPARATOR = SDLK_SEPARATOR,
180 KEY_OUT = SDLK_OUT,
181 KEY_OPER = SDLK_OPER,
182 KEY_CLEARAGAIN = SDLK_CLEARAGAIN,
183 KEY_CRSEL = SDLK_CRSEL,
184 KEY_EXSEL = SDLK_EXSEL,
185 KEY_KP_00 = SDLK_KP_00,
186 KEY_KP_000 = SDLK_KP_000,
187 KEY_THOUSANDSSEPARATOR = SDLK_THOUSANDSSEPARATOR,
188 KEY_DECIMALSEPARATOR = SDLK_DECIMALSEPARATOR,
189 KEY_CURRENCYUNIT = SDLK_CURRENCYUNIT,
190 KEY_CURRENCYSUBUNIT = SDLK_CURRENCYSUBUNIT,
191 KEY_KP_LEFTPAREN = SDLK_KP_LEFTPAREN,
192 KEY_KP_RIGHTPAREN = SDLK_KP_RIGHTPAREN,
193 KEY_KP_LEFTBRACE = SDLK_KP_LEFTBRACE,
194 KEY_KP_RIGHTBRACE = SDLK_KP_RIGHTBRACE,
195 KEY_KP_TAB = SDLK_KP_TAB,
196 KEY_KP_BACKSPACE = SDLK_KP_BACKSPACE,
197 KEY_KP_A = SDLK_KP_A,
198 KEY_KP_B = SDLK_KP_B,
199 KEY_KP_C = SDLK_KP_C,
200 KEY_KP_D = SDLK_KP_D,
201 KEY_KP_E = SDLK_KP_E,
202 KEY_KP_F = SDLK_KP_F,
203 KEY_KP_XOR = SDLK_KP_XOR,
204 KEY_KP_POWER = SDLK_KP_POWER,
205 KEY_KP_PERCENT = SDLK_KP_PERCENT,
206 KEY_KP_LESS = SDLK_KP_LESS,
207 KEY_KP_GREATER = SDLK_KP_GREATER,
208 KEY_KP_AMPERSAND = SDLK_KP_AMPERSAND,
209 KEY_KP_DBLAMPERSAND = SDLK_KP_DBLAMPERSAND,
210 KEY_KP_VERTICALBAR = SDLK_KP_VERTICALBAR,
211 KEY_KP_DBLVERTICALBAR = SDLK_KP_DBLVERTICALBAR,
212 KEY_KP_COLON = SDLK_KP_COLON,
213 KEY_KP_HASH = SDLK_KP_HASH,
214 KEY_KP_SPACE = SDLK_KP_SPACE,
215 KEY_KP_AT = SDLK_KP_AT,
216 KEY_KP_EXCLAM = SDLK_KP_EXCLAM,
217 KEY_KP_MEMSTORE = SDLK_KP_MEMSTORE,
218 KEY_KP_MEMRECALL = SDLK_KP_MEMRECALL,
219 KEY_KP_MEMCLEAR = SDLK_KP_MEMCLEAR,
220 KEY_KP_MEMADD = SDLK_KP_MEMADD,
221 KEY_KP_MEMSUBTRACT = SDLK_KP_MEMSUBTRACT,
222 KEY_KP_MEMMULTIPLY = SDLK_KP_MEMMULTIPLY,
223 KEY_KP_MEMDIVIDE = SDLK_KP_MEMDIVIDE,
224 KEY_KP_PLUSMINUS = SDLK_KP_PLUSMINUS,
225 KEY_KP_CLEAR = SDLK_KP_CLEAR,
226 KEY_KP_CLEARENTRY = SDLK_KP_CLEARENTRY,
227 KEY_KP_BINARY = SDLK_KP_BINARY,
228 KEY_KP_OCTAL = SDLK_KP_OCTAL,
229 KEY_KP_DECIMAL = SDLK_KP_DECIMAL,
230 KEY_KP_HEXADECIMAL = SDLK_KP_HEXADECIMAL,
231 KEY_LCTRL = SDLK_LCTRL,
232 KEY_LSHIFT = SDLK_LSHIFT,
233 KEY_LALT = SDLK_LALT,
234 KEY_LGUI = SDLK_LGUI,
235 KEY_RCTRL = SDLK_RCTRL,
236 KEY_RSHIFT = SDLK_RSHIFT,
237 KEY_RALT = SDLK_RALT,
238 KEY_RGUI = SDLK_RGUI,
239 KEY_MODE = SDLK_MODE,
240 KEY_SLEEP = SDLK_SLEEP,
241 KEY_WAKE = SDLK_WAKE,
242 KEY_CHANNEL_INCREMENT = SDLK_CHANNEL_INCREMENT,
243 KEY_CHANNEL_DECREMENT = SDLK_CHANNEL_DECREMENT,
244 KEY_MEDIA_PLAY = SDLK_MEDIA_PLAY,
245 KEY_MEDIA_PAUSE = SDLK_MEDIA_PAUSE,
246 KEY_MEDIA_RECORD = SDLK_MEDIA_RECORD,
247 KEY_MEDIA_FAST_FORWARD = SDLK_MEDIA_FAST_FORWARD,
248 KEY_MEDIA_REWIND = SDLK_MEDIA_REWIND,
249 KEY_MEDIA_NEXT_TRACK = SDLK_MEDIA_NEXT_TRACK,
250 KEY_MEDIA_PREVIOUS_TRACK = SDLK_MEDIA_PREVIOUS_TRACK,
251 KEY_MEDIA_STOP = SDLK_MEDIA_STOP,
252 KEY_MEDIA_EJECT = SDLK_MEDIA_EJECT,
253 KEY_MEDIA_PLAY_PAUSE = SDLK_MEDIA_PLAY_PAUSE,
254 KEY_MEDIA_SELECT = SDLK_MEDIA_SELECT,
255 KEY_AC_NEW = SDLK_AC_NEW,
256 KEY_AC_OPEN = SDLK_AC_OPEN,
257 KEY_AC_CLOSE = SDLK_AC_CLOSE,
258 KEY_AC_EXIT = SDLK_AC_EXIT,
259 KEY_AC_SAVE = SDLK_AC_SAVE,
260 KEY_AC_PRINT = SDLK_AC_PRINT,
261 KEY_AC_PROPERTIES = SDLK_AC_PROPERTIES,
262 KEY_AC_SEARCH = SDLK_AC_SEARCH,
263 KEY_AC_HOME = SDLK_AC_HOME,
264 KEY_AC_BACK = SDLK_AC_BACK,
265 KEY_AC_FORWARD = SDLK_AC_FORWARD,
266 KEY_AC_STOP = SDLK_AC_STOP,
267 KEY_AC_REFRESH = SDLK_AC_REFRESH,
268 KEY_AC_BOOKMARKS = SDLK_AC_BOOKMARKS,
269 KEY_SOFTLEFT = SDLK_SOFTLEFT,
270 KEY_SOFTRIGHT = SDLK_SOFTRIGHT,
271 KEY_CALL = SDLK_CALL,
272 KEY_ENDCALL = SDLK_ENDCALL,
273 KEY_LEFT_TAB = SDLK_LEFT_TAB,
274 KEY_LEVEL5_SHIFT = SDLK_LEVEL5_SHIFT,
275 KEY_MULTI_KEY_COMPOSE = SDLK_MULTI_KEY_COMPOSE,
276 KEY_LMETA = SDLK_LMETA,
277 KEY_RMETA = SDLK_RMETA,
278 KEY_LHYPER = SDLK_LHYPER,
279 KEY_RHYPER = SDLK_RHYPER
280 };
281
285 enum class KeyMods : SDL_Keymod
286 {
287 MOD_NONE = SDL_KMOD_NONE,
288 MOD_LSHIFT = SDL_KMOD_LSHIFT,
289 MOD_RSHIFT = SDL_KMOD_RSHIFT,
290 MOD_LEVEL5 = SDL_KMOD_LEVEL5,
291 MOD_LCTRL = SDL_KMOD_LCTRL,
292 MOD_RCTRL = SDL_KMOD_RCTRL,
293 MOD_LALT = SDL_KMOD_LALT,
294 MOD_RALT = SDL_KMOD_RALT,
295 MOD_LGUI = SDL_KMOD_LGUI,
296 MOD_RGUI = SDL_KMOD_RGUI,
297 MOD_NUM = SDL_KMOD_NUM,
298 MOD_CAPS = SDL_KMOD_CAPS,
299 MOD_MODE = SDL_KMOD_MODE,
300 MOD_SCROLL = SDL_KMOD_SCROLL,
301 MOD_CTRL = SDL_KMOD_CTRL,
302 MOD_SHIFT = SDL_KMOD_SHIFT,
303 MOD_ALT = SDL_KMOD_ALT,
304 MOD_GUI = SDL_KMOD_GUI
305 };
306} // namespace galaxy
307
308#endif
Application.hpp galaxy.
Keys
Enum class representing keys.
Definition Keys.hpp:23
@ KEY_THOUSANDSSEPARATOR
@ KEY_MEDIA_PREVIOUS_TRACK
@ KEY_MEDIA_FAST_FORWARD
KeyMods
Enum class for key modifiers.
Definition Keys.hpp:286