#ifndef KEYTABLE_H #define KEYTABLE_H #include /** \brief Defines the key codes for mouse buttons * * With this enum we can treat mouse button events the same way as we treat * keyboard events. To do so we define the left button as the last keyboard * button. */ enum MouseButton { MouseButtonUnknown = SDLK_LAST, MouseButtonLeft, MouseButtonMiddle, MouseButtonRight, MouseButtonWheelUp, MouseButtonWheelDown, MouseButtonLast }; struct key_definition { int keynum; const char *keystr; }; const int keytable_last = MouseButtonLast; static const key_definition key_table[] = { {SDLK_BACKSPACE, "backspace"}, {SDLK_TAB, "tab"}, // {SDLK_CLEAR, "12"}, {SDLK_RETURN, "return"}, {SDLK_PAUSE, "pause"}, {SDLK_ESCAPE, "escape"}, {SDLK_SPACE, "space"}, {SDLK_EXCLAIM, "exclaim"}, // {SDLK_QUOTEDBL, ""}, {SDLK_HASH, "#"}, {SDLK_DOLLAR, "$"}, {SDLK_AMPERSAND, "&"}, // {SDLK_QUOTE, "39"}, // {SDLK_LEFTPAREN, "("}, // {SDLK_RIGHTPAREN, ")"}, // {SDLK_ASTERISK, "*"}, {SDLK_PLUS, "+"}, {SDLK_COMMA, ","}, {SDLK_MINUS, "-"}, {SDLK_PERIOD, "."}, {SDLK_SLASH, "/"}, {SDLK_0, "0"}, {SDLK_1, "1"}, {SDLK_2, "2"}, {SDLK_3, "3"}, {SDLK_4, "4"}, {SDLK_5, "5"}, {SDLK_6, "6"}, {SDLK_7, "7"}, {SDLK_8, "8"}, {SDLK_9, "9"}, {SDLK_COLON, ":"}, {SDLK_SEMICOLON, ";"}, {SDLK_LESS, "<"}, {SDLK_EQUALS, "="}, {SDLK_GREATER, ">"}, {SDLK_QUESTION, "?"}, {SDLK_AT, "@"}, {SDLK_LEFTBRACKET, "["}, {SDLK_BACKSLASH, "\\"}, {SDLK_RIGHTBRACKET, "]"}, {SDLK_CARET, "^"}, {SDLK_UNDERSCORE, "_"}, {SDLK_BACKQUOTE, "`"}, {SDLK_a, "a"}, {SDLK_b, "b"}, {SDLK_c, "c"}, {SDLK_d, "d"}, {SDLK_e, "e"}, {SDLK_f, "f"}, {SDLK_g, "g"}, {SDLK_h, "h"}, {SDLK_i, "i"}, {SDLK_j, "j"}, {SDLK_k, "k"}, {SDLK_l, "l"}, {SDLK_m, "m"}, {SDLK_n, "n"}, {SDLK_o, "o"}, {SDLK_p, "p"}, {SDLK_q, "q"}, {SDLK_r, "r"}, {SDLK_s, "s"}, {SDLK_t, "t"}, {SDLK_u, "u"}, {SDLK_v, "v"}, {SDLK_w, "w"}, {SDLK_x, "x"}, {SDLK_y, "y"}, {SDLK_z, "z"}, {SDLK_KP0, "keypad_0"}, {SDLK_KP1, "keypad_1"}, {SDLK_KP2, "keypad_2"}, {SDLK_KP3, "keypad_3"}, {SDLK_KP4, "keypad_4"}, {SDLK_KP5, "keypad_5"}, {SDLK_KP6, "keypad_6"}, {SDLK_KP7, "keypad_7"}, {SDLK_KP8, "keypad_8"}, {SDLK_KP9, "keypad_9"}, {SDLK_KP_PERIOD, "keypad_period"}, {SDLK_KP_DIVIDE, "keypad_devide"}, {SDLK_KP_MULTIPLY, "keypad_multiply"}, {SDLK_KP_MINUS, "keypad_minus"}, {SDLK_KP_PLUS, "keypad_plus"}, {SDLK_KP_ENTER, "keypad_enter"}, {SDLK_KP_EQUALS, "keypad_equals"}, {SDLK_UP, "up"}, {SDLK_DOWN, "down"}, {SDLK_RIGHT, "right"}, {SDLK_LEFT, "left"}, {SDLK_INSERT, "insert"}, {SDLK_HOME, "home"}, {SDLK_END, "end"}, {SDLK_PAGEUP, "pageup"}, {SDLK_PAGEDOWN, "pagedown"}, {SDLK_F1, "f1"}, {SDLK_F2, "f2"}, {SDLK_F3, "f3"}, {SDLK_F4, "f4"}, {SDLK_F5, "f5"}, {SDLK_F6, "f6"}, {SDLK_F7, "f7"}, {SDLK_F8, "f8"}, {SDLK_F9, "f9"}, {SDLK_F10, "f10"}, {SDLK_F11, "f11"}, {SDLK_F12, "f12"}, {SDLK_F13, "f13"}, {SDLK_F14, "f14"}, {SDLK_F15, "f15"}, {SDLK_NUMLOCK, "numlock"}, {SDLK_CAPSLOCK, "capslock"}, {SDLK_SCROLLOCK, "scrollock"}, {SDLK_RSHIFT, "right_shift"}, {SDLK_LSHIFT, "left_shift"}, {SDLK_RCTRL, "right_ctrl"}, {SDLK_LCTRL, "left_ctrl"}, {SDLK_RALT, "right_alt"}, {SDLK_LALT, "left_alt"}, {SDLK_RMETA, "right_meta"}, {SDLK_LMETA, "left_meta"}, {SDLK_LSUPER, "left_super"}, /* Left "Windows" key */ {SDLK_RSUPER, "right_super"}, /* Right "Windows" key */ {SDLK_MODE, "altgr"}, /* "Alt Gr" key */ {SDLK_COMPOSE, "compose"}, /* Multi-key compose key */ {SDLK_DELETE, "delete"}, {MouseButtonLeft, "mouse_left"}, {MouseButtonMiddle, "mouse_middle"}, {MouseButtonRight, "mouse_right"}, {MouseButtonWheelUp, "mouse_wheelup"}, {MouseButtonWheelDown, "mouse_wheeldown"}, {keytable_last, NULL} }; #endif /* KEYTABLE_H */