1 #include "SDL2GL.h" 2 3 namespace Upp { 4 5 Tuple<int, int> SDL_key_map[] = { 6 #if 0 7 { K_BACK, SDLK_BACKSPACE }, 8 { K_BACKSPACE, SDLK_BACKSPACE }, 9 10 //handled extra in fbKEYtoK 11 { K_TAB, SDLK_TAB }, 12 13 { K_SPACE, SDLK_SPACE }, 14 15 { K_RETURN, SDLK_RETURN }, 16 { K_ENTER, K_RETURN }, 17 #endif 18 19 { K_SHIFT_KEY, SDLK_LSHIFT }, 20 { K_CTRL_KEY, SDLK_LCTRL }, 21 { K_ALT_KEY, SDLK_LALT }, 22 { K_CAPSLOCK, SDLK_CAPSLOCK }, 23 { K_ESCAPE, SDLK_ESCAPE }, 24 { K_PAGEUP, SDLK_PAGEUP }, 25 { K_PAGEDOWN, SDLK_PAGEDOWN }, 26 { K_END, SDLK_END }, 27 { K_HOME, SDLK_HOME }, 28 { K_LEFT, SDLK_LEFT }, 29 { K_UP, SDLK_UP }, 30 { K_RIGHT, SDLK_RIGHT }, 31 { K_DOWN, SDLK_DOWN }, 32 { K_INSERT, SDLK_INSERT }, 33 { K_DELETE, SDLK_DELETE }, 34 35 { K_NUMPAD0, SDLK_KP_0 }, 36 { K_NUMPAD1, SDLK_KP_1 }, 37 { K_NUMPAD2, SDLK_KP_2 }, 38 { K_NUMPAD3, SDLK_KP_3 }, 39 { K_NUMPAD4, SDLK_KP_4 }, 40 { K_NUMPAD5, SDLK_KP_5 }, 41 { K_NUMPAD6, SDLK_KP_6 }, 42 { K_NUMPAD7, SDLK_KP_7 }, 43 { K_NUMPAD8, SDLK_KP_8 }, 44 { K_NUMPAD9, SDLK_KP_9 }, 45 { K_MULTIPLY, SDLK_KP_MULTIPLY }, 46 { K_ADD, SDLK_KP_PLUS }, 47 { K_SEPARATOR, SDLK_KP_PERIOD }, 48 { K_SUBTRACT, SDLK_KP_MINUS }, 49 { K_DECIMAL, SDLK_KP_PERIOD }, 50 { K_DIVIDE, SDLK_KP_DIVIDE }, 51 { K_SCROLL, SDLK_SCROLLLOCK }, 52 53 { K_F1, SDLK_F1 }, 54 { K_F2, SDLK_F2 }, 55 { K_F3, SDLK_F3 }, 56 { K_F4, SDLK_F4 }, 57 { K_F5, SDLK_F5 }, 58 { K_F6, SDLK_F6 }, 59 { K_F7, SDLK_F7 }, 60 { K_F8, SDLK_F8 }, 61 { K_F9, SDLK_F9 }, 62 { K_F10, SDLK_F10 }, 63 { K_F11, SDLK_F11 }, 64 { K_F12, SDLK_F12 }, 65 66 { K_A, SDLK_a }, 67 { K_B, SDLK_b }, 68 { K_C, SDLK_c }, 69 { K_D, SDLK_d }, 70 { K_E, SDLK_e }, 71 { K_F, SDLK_f }, 72 { K_G, SDLK_g }, 73 { K_H, SDLK_h }, 74 { K_I, SDLK_i }, 75 { K_J, SDLK_j }, 76 { K_K, SDLK_k }, 77 { K_L, SDLK_l }, 78 { K_M, SDLK_m }, 79 { K_N, SDLK_n }, 80 { K_O, SDLK_o }, 81 { K_P, SDLK_p }, 82 { K_Q, SDLK_q }, 83 { K_R, SDLK_r }, 84 { K_S, SDLK_s }, 85 { K_T, SDLK_t }, 86 { K_U, SDLK_u }, 87 { K_V, SDLK_v }, 88 { K_W, SDLK_w }, 89 { K_X, SDLK_x }, 90 { K_Y, SDLK_y }, 91 { K_Z, SDLK_z }, 92 { K_0, SDLK_0 }, 93 { K_1, SDLK_1 }, 94 { K_2, SDLK_2 }, 95 { K_3, SDLK_3 }, 96 { K_4, SDLK_4 }, 97 { K_5, SDLK_5 }, 98 { K_6, SDLK_6 }, 99 { K_7, SDLK_7 }, 100 { K_8, SDLK_8 }, 101 { K_9, SDLK_9 }, 102 103 { K_CTRL_LBRACKET, K_CTRL|219 }, 104 { K_CTRL_RBRACKET, K_CTRL|221 }, 105 { K_CTRL_MINUS, K_CTRL|0xbd }, 106 { K_CTRL_GRAVE, K_CTRL|0xc0 }, 107 { K_CTRL_SLASH, K_CTRL|0xbf }, 108 { K_CTRL_BACKSLASH, K_CTRL|0xdc }, 109 { K_CTRL_COMMA, K_CTRL|0xbc }, 110 { K_CTRL_PERIOD, K_CTRL|0xbe }, 111 { K_CTRL_SEMICOLON, K_CTRL|0xbe }, 112 { K_CTRL_EQUAL, K_CTRL|0xbb }, 113 { K_CTRL_APOSTROPHE, K_CTRL|0xde }, 114 115 { K_BREAK, SDLK_PAUSE }, // Is it really? 116 117 { K_PLUS, SDLK_PLUS }, 118 { K_MINUS, SDLK_MINUS }, 119 { K_COMMA, SDLK_COMMA }, 120 { K_PERIOD, SDLK_PERIOD }, 121 { K_SEMICOLON, SDLK_SEMICOLON }, 122 123 { K_SLASH, SDLK_SLASH }, 124 { K_GRAVE, SDLK_CARET }, 125 { K_LBRACKET, SDLK_LEFTBRACKET }, 126 { K_BACKSLASH, SDLK_BACKSLASH }, 127 { K_RBRACKET, SDLK_RIGHTBRACKET }, 128 { K_QUOTEDBL, SDLK_QUOTEDBL }, 129 130 { 0, 0 }, 131 }; 132 133 }