master uint/magnolia / include / platform / keys.h
  1#ifndef KEYS_H
  2#define KEYS_H
  3
  4#define MG_KEYS_DOWN_MAX 64
  5
  6/* clang-format off */
  7#ifdef MG_PLATFORM_SDL
  8#include <SDL2/SDL_keycode.h>
  9typedef SDL_Keycode MGKey;
 10enum {
 11	MGK_UNKNOWN = SDLK_UNKNOWN,
 12
 13	MGK_A = SDLK_a, MGK_B = SDLK_b, MGK_C = SDLK_c,
 14	MGK_D = SDLK_d, MGK_E = SDLK_e, MGK_F = SDLK_f,
 15	MGK_G = SDLK_g, MGK_H = SDLK_h, MGK_I = SDLK_i,
 16	MGK_J = SDLK_j, MGK_K = SDLK_k, MGK_L = SDLK_l,
 17	MGK_M = SDLK_m, MGK_N = SDLK_n, MGK_O = SDLK_o,
 18	MGK_P = SDLK_p, MGK_Q = SDLK_q, MGK_R = SDLK_r,
 19	MGK_S = SDLK_s, MGK_T = SDLK_t, MGK_U = SDLK_u,
 20	MGK_V = SDLK_v, MGK_W = SDLK_w, MGK_X = SDLK_x,
 21	MGK_Y = SDLK_y, MGK_Z = SDLK_z,
 22
 23	MGK_0 = SDLK_0, MGK_1 = SDLK_1, MGK_2 = SDLK_2,
 24	MGK_3 = SDLK_3, MGK_4 = SDLK_4, MGK_5 = SDLK_5,
 25	MGK_6 = SDLK_6, MGK_7 = SDLK_7, MGK_8 = SDLK_8,
 26	MGK_9 = SDLK_9,
 27
 28	MGK_RETURN = SDLK_RETURN,
 29	MGK_ESCAPE = SDLK_ESCAPE,
 30	MGK_BACKSPACE = SDLK_BACKSPACE,
 31	MGK_TAB = SDLK_TAB,
 32	MGK_SPACE = SDLK_SPACE,
 33
 34	MGK_MINUS = SDLK_MINUS,
 35	MGK_EQUALS = SDLK_EQUALS,
 36	MGK_LEFTBRACKET = SDLK_LEFTBRACKET,
 37	MGK_RIGHTBRACKET = SDLK_RIGHTBRACKET,
 38	MGK_BACKSLASH = SDLK_BACKSLASH,
 39	MGK_SEMICOLON = SDLK_SEMICOLON,
 40	MGK_APOSTROPHE = SDLK_QUOTE,
 41	MGK_GRAVE = SDLK_BACKQUOTE,
 42	MGK_COMMA = SDLK_COMMA,
 43	MGK_PERIOD = SDLK_PERIOD,
 44	MGK_SLASH = SDLK_SLASH,
 45
 46	MGK_CAPSLOCK = SDLK_CAPSLOCK,
 47
 48	MGK_F1 = SDLK_F1, MGK_F2 = SDLK_F2, MGK_F3 = SDLK_F3,
 49	MGK_F4 = SDLK_F4, MGK_F5 = SDLK_F5, MGK_F6 = SDLK_F6,
 50	MGK_F7 = SDLK_F7, MGK_F8 = SDLK_F8, MGK_F9 = SDLK_F9,
 51	MGK_F10 = SDLK_F10, MGK_F11 = SDLK_F11, MGK_F12 = SDLK_F12,
 52
 53	MGK_PRINTSCREEN = SDLK_PRINTSCREEN,
 54	MGK_SCROLLLOCK = SDLK_SCROLLLOCK,
 55	MGK_PAUSE = SDLK_PAUSE,
 56	MGK_INSERT = SDLK_INSERT,
 57	MGK_HOME = SDLK_HOME,
 58	MGK_PAGEUP = SDLK_PAGEUP,
 59	MGK_DELETE = SDLK_DELETE,
 60	MGK_END = SDLK_END,
 61	MGK_PAGEDOWN = SDLK_PAGEDOWN,
 62	MGK_RIGHT = SDLK_RIGHT,
 63	MGK_LEFT = SDLK_LEFT,
 64	MGK_DOWN = SDLK_DOWN,
 65	MGK_UP = SDLK_UP,
 66
 67	MGK_NUMLOCKCLEAR = SDLK_NUMLOCKCLEAR,
 68	MGK_KP_DIVIDE = SDLK_KP_DIVIDE,
 69	MGK_KP_MULTIPLY = SDLK_KP_MULTIPLY,
 70	MGK_KP_MINUS = SDLK_KP_MINUS,
 71	MGK_KP_PLUS = SDLK_KP_PLUS,
 72	MGK_KP_ENTER = SDLK_KP_ENTER,
 73	MGK_KP_0 = SDLK_KP_0,
 74	MGK_KP_1 = SDLK_KP_1,
 75	MGK_KP_2 = SDLK_KP_2,
 76	MGK_KP_3 = SDLK_KP_3,
 77	MGK_KP_4 = SDLK_KP_4,
 78	MGK_KP_5 = SDLK_KP_5,
 79	MGK_KP_6 = SDLK_KP_6,
 80	MGK_KP_7 = SDLK_KP_7,
 81	MGK_KP_8 = SDLK_KP_8,
 82	MGK_KP_9 = SDLK_KP_9,
 83	MGK_KP_PERIOD = SDLK_KP_PERIOD,
 84
 85	MGK_LCTRL = SDLK_LCTRL,
 86	MGK_LSHIFT = SDLK_LSHIFT,
 87	MGK_LALT = SDLK_LALT,
 88	MGK_LGUI = SDLK_LGUI,
 89	MGK_RCTRL = SDLK_RCTRL,
 90	MGK_RSHIFT = SDLK_RSHIFT,
 91	MGK_RALT = SDLK_RALT,
 92	MGK_RGUI = SDLK_RGUI
 93};
 94
 95#elif MG_PLATFORM_MAUS
 96#include <maus_input.h>
 97typedef int MGKey;
 98enum {
 99	MGK_UNKNOWN = MAUS_KEY_NONE,
100
101	MGK_A = MAUS_KEY_A, MGK_B = MAUS_KEY_B, MGK_C = MAUS_KEY_C,
102	MGK_D = MAUS_KEY_D, MGK_E = MAUS_KEY_E, MGK_F = MAUS_KEY_F,
103	MGK_G = MAUS_KEY_G, MGK_H = MAUS_KEY_H, MGK_I = MAUS_KEY_I,
104	MGK_J = MAUS_KEY_J, MGK_K = MAUS_KEY_K, MGK_L = MAUS_KEY_L,
105	MGK_M = MAUS_KEY_M, MGK_N = MAUS_KEY_N, MGK_O = MAUS_KEY_O,
106	MGK_P = MAUS_KEY_P, MGK_Q = MAUS_KEY_Q, MGK_R = MAUS_KEY_R,
107	MGK_S = MAUS_KEY_S, MGK_T = MAUS_KEY_T, MGK_U = MAUS_KEY_U,
108	MGK_V = MAUS_KEY_V, MGK_W = MAUS_KEY_W, MGK_X = MAUS_KEY_X,
109	MGK_Y = MAUS_KEY_Y, MGK_Z = MAUS_KEY_Z,
110
111	MGK_0 = MAUS_KEY_0, MGK_1 = MAUS_KEY_1, MGK_2 = MAUS_KEY_2,
112	MGK_3 = MAUS_KEY_3, MGK_4 = MAUS_KEY_4, MGK_5 = MAUS_KEY_5,
113	MGK_6 = MAUS_KEY_6, MGK_7 = MAUS_KEY_7, MGK_8 = MAUS_KEY_8,
114	MGK_9 = MAUS_KEY_9,
115
116	MGK_RETURN = MAUS_KEY_ENTER,
117	MGK_ESCAPE = MAUS_KEY_ESCAPE,
118	MGK_BACKSPACE = MAUS_KEY_BACKSPACE,
119	MGK_TAB = MAUS_KEY_TAB,
120	MGK_SPACE = MAUS_KEY_SPACE,
121
122	MGK_MINUS = MAUS_KEY_MINUS,
123	MGK_EQUALS = MAUS_KEY_EQUAL,
124	MGK_LEFTBRACKET = MAUS_KEY_LEFT_BRACKET,
125	MGK_RIGHTBRACKET = MAUS_KEY_RIGHT_BRACKET,
126	MGK_BACKSLASH = MAUS_KEY_BACKSLASH,
127	MGK_SEMICOLON = MAUS_KEY_SEMICOLON,
128	MGK_APOSTROPHE = MAUS_KEY_APOSTROPHE,
129	MGK_GRAVE = MAUS_KEY_GRAVE,
130	MGK_COMMA = MAUS_KEY_COMMA,
131	MGK_PERIOD = MAUS_KEY_PERIOD,
132	MGK_SLASH = MAUS_KEY_SLASH,
133
134	MGK_CAPSLOCK = MAUS_KEY_CAPS_LOCK,
135
136	MGK_F1 = MAUS_KEY_F1, MGK_F2 = MAUS_KEY_F2, MGK_F3 = MAUS_KEY_F3,
137	MGK_F4 = MAUS_KEY_F4, MGK_F5 = MAUS_KEY_F5, MGK_F6 = MAUS_KEY_F6,
138	MGK_F7 = MAUS_KEY_F7, MGK_F8 = MAUS_KEY_F8, MGK_F9 = MAUS_KEY_F9,
139	MGK_F10 = MAUS_KEY_F10, MGK_F11 = MAUS_KEY_F11, MGK_F12 = MAUS_KEY_F12,
140
141	MGK_PRINTSCREEN = MAUS_KEY_PRINT_SCREEN,
142	MGK_SCROLLLOCK = MAUS_KEY_SCROLL_LOCK,
143	MGK_PAUSE = MAUS_KEY_PAUSE,
144	MGK_INSERT = MAUS_KEY_INSERT,
145	MGK_HOME = MAUS_KEY_HOME,
146	MGK_PAGEUP = MAUS_KEY_PAGE_UP,
147	MGK_DELETE = MAUS_KEY_DELETE,
148	MGK_END = MAUS_KEY_END,
149	MGK_PAGEDOWN = MAUS_KEY_PAGE_DOWN,
150	MGK_RIGHT = MAUS_KEY_RIGHT,
151	MGK_LEFT = MAUS_KEY_LEFT,
152	MGK_DOWN = MAUS_KEY_DOWN,
153	MGK_UP = MAUS_KEY_UP,
154
155	MGK_NUMLOCKCLEAR = MAUS_KEY_NUM_LOCK,
156	MGK_KP_DIVIDE = MAUS_KEY_KP_DIVIDE,
157	MGK_KP_MULTIPLY = MAUS_KEY_KP_MULTIPLY,
158	MGK_KP_MINUS = MAUS_KEY_KP_SUBTRACT,
159	MGK_KP_PLUS = MAUS_KEY_KP_ADD,
160	MGK_KP_ENTER = MAUS_KEY_KP_ENTER,
161	MGK_KP_0 = MAUS_KEY_KP_0,
162	MGK_KP_1 = MAUS_KEY_KP_1,
163	MGK_KP_2 = MAUS_KEY_KP_2,
164	MGK_KP_3 = MAUS_KEY_KP_3,
165	MGK_KP_4 = MAUS_KEY_KP_4,
166	MGK_KP_5 = MAUS_KEY_KP_5,
167	MGK_KP_6 = MAUS_KEY_KP_6,
168	MGK_KP_7 = MAUS_KEY_KP_7,
169	MGK_KP_8 = MAUS_KEY_KP_8,
170	MGK_KP_9 = MAUS_KEY_KP_9,
171	MGK_KP_PERIOD = MAUS_KEY_KP_DECIMAL,
172
173	MGK_LCTRL = MAUS_KEY_CONTROL_L,
174	MGK_LSHIFT = MAUS_KEY_SHIFT_L,
175	MGK_LALT = MAUS_KEY_ALT_L,
176	MGK_LGUI = MAUS_KEY_SUPER_L,
177	MGK_RCTRL = MAUS_KEY_CONTROL_R,
178	MGK_RSHIFT = MAUS_KEY_SHIFT_R,
179	MGK_RALT = MAUS_KEY_ALT_R,
180	MGK_RGUI = MAUS_KEY_SUPER_R
181};
182#endif
183/* clang-format on */
184
185#endif /* KEYS_H */