From 30cd5551c4cdc7a2d9bbc92dfbc0313764d2bdad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Fri, 5 Jan 2018 16:32:06 +0100 Subject: Add the remaining keyboard functions Also adds defines for all the keycode and scancode in SDL 2.0.7. --- include/sdl_keycode.hrl | 261 +++++++++++++++++++++++++++++++++++++++++++++++ include/sdl_scancode.hrl | 261 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 522 insertions(+) create mode 100644 include/sdl_keycode.hrl create mode 100644 include/sdl_scancode.hrl (limited to 'include') diff --git a/include/sdl_keycode.hrl b/include/sdl_keycode.hrl new file mode 100644 index 0000000..f33765c --- /dev/null +++ b/include/sdl_keycode.hrl @@ -0,0 +1,261 @@ +%% Copyright (c) 2018, Loïc Hoguin +%% +%% Permission to use, copy, modify, and/or distribute this software for any +%% purpose with or without fee is hereby granted, provided that the above +%% copyright notice and this permission notice appear in all copies. +%% +%% THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +%% WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +%% MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +%% ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +%% WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +%% ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +%% OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +-ifndef(__SDL_KEYCODE_HRL__). +-define(__SDL_KEYCODE_HRL__, 1). + +-define(SDLK_SCANCODE_MASK, (1 bsl 30)). +-define(SDL_SCANCODE_TO_KEYCODE(X), (X bor ?SDLK_SCANCODE_MASK)). + +-define(SDLK_RETURN, $\r). +-define(SDLK_ESCAPE, $\033). +-define(SDLK_BACKSPACE, $\b). +-define(SDLK_TAB, $\t). +-define(SDLK_SPACE, $ ). +-define(SDLK_EXCLAIM, $!). +-define(SDLK_QUOTEDBL, $"). +-define(SDLK_HASH, $#). +-define(SDLK_PERCENT, $%). +-define(SDLK_DOLLAR, $$). +-define(SDLK_AMPERSAND, $&). +-define(SDLK_QUOTE, $'). +-define(SDLK_LEFTPAREN, $(). +-define(SDLK_RIGHTPAREN, $)). +-define(SDLK_ASTERISK, $*). +-define(SDLK_PLUS, $+). +-define(SDLK_COMMA, $,). +-define(SDLK_MINUS, $-). +-define(SDLK_PERIOD, $.). +-define(SDLK_SLASH, $/). +-define(SDLK_0, $0). +-define(SDLK_1, $1). +-define(SDLK_2, $2). +-define(SDLK_3, $3). +-define(SDLK_4, $4). +-define(SDLK_5, $5). +-define(SDLK_6, $6). +-define(SDLK_7, $7). +-define(SDLK_8, $8). +-define(SDLK_9, $9). +-define(SDLK_COLON, $:). +-define(SDLK_SEMICOLON, $;). +-define(SDLK_LESS, $<). +-define(SDLK_EQUALS, $=). +-define(SDLK_GREATER, $>). +-define(SDLK_QUESTION, $?). +-define(SDLK_AT, $@). +-define(SDLK_LEFTBRACKET, $[). +-define(SDLK_BACKSLASH, $\\). +-define(SDLK_RIGHTBRACKET, $]). +-define(SDLK_CARET, $^). +-define(SDLK_UNDERSCORE, $_). +-define(SDLK_BACKQUOTE, $`). +-define(SDLK_a, $a). +-define(SDLK_b, $b). +-define(SDLK_c, $c). +-define(SDLK_d, $d). +-define(SDLK_e, $e). +-define(SDLK_f, $f). +-define(SDLK_g, $g). +-define(SDLK_h, $h). +-define(SDLK_i, $i). +-define(SDLK_j, $j). +-define(SDLK_k, $k). +-define(SDLK_l, $l). +-define(SDLK_m, $m). +-define(SDLK_n, $n). +-define(SDLK_o, $o). +-define(SDLK_p, $p). +-define(SDLK_q, $q). +-define(SDLK_r, $r). +-define(SDLK_s, $s). +-define(SDLK_t, $t). +-define(SDLK_u, $u). +-define(SDLK_v, $v). +-define(SDLK_w, $w). +-define(SDLK_x, $x). +-define(SDLK_y, $y). +-define(SDLK_z, $z). +-define(SDLK_CAPSLOCK, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CAPSLOCK)). +-define(SDLK_F1, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F1)). +-define(SDLK_F2, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F2)). +-define(SDLK_F3, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F3)). +-define(SDLK_F4, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F4)). +-define(SDLK_F5, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F5)). +-define(SDLK_F6, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F6)). +-define(SDLK_F7, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F7)). +-define(SDLK_F8, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F8)). +-define(SDLK_F9, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F9)). +-define(SDLK_F10, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F10)). +-define(SDLK_F11, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F11)). +-define(SDLK_F12, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F12)). +-define(SDLK_PRINTSCREEN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_PRINTSCREEN)). +-define(SDLK_SCROLLLOCK, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_SCROLLLOCK)). +-define(SDLK_PAUSE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_PAUSE)). +-define(SDLK_INSERT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_INSERT)). +-define(SDLK_HOME, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_HOME)). +-define(SDLK_PAGEUP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_PAGEUP)). +-define(SDLK_DELETE, $\177). +-define(SDLK_END, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_END)). +-define(SDLK_PAGEDOWN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_PAGEDOWN)). +-define(SDLK_RIGHT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_RIGHT)). +-define(SDLK_LEFT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_LEFT)). +-define(SDLK_DOWN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_DOWN)). +-define(SDLK_UP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_UP)). +-define(SDLK_NUMLOCKCLEAR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_NUMLOCKCLEAR)). +-define(SDLK_KP_DIVIDE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_DIVIDE)). +-define(SDLK_KP_MULTIPLY, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MULTIPLY)). +-define(SDLK_KP_MINUS, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MINUS)). +-define(SDLK_KP_PLUS, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_PLUS)). +-define(SDLK_KP_ENTER, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_ENTER)). +-define(SDLK_KP_1, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_1)). +-define(SDLK_KP_2, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_2)). +-define(SDLK_KP_3, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_3)). +-define(SDLK_KP_4, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_4)). +-define(SDLK_KP_5, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_5)). +-define(SDLK_KP_6, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_6)). +-define(SDLK_KP_7, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_7)). +-define(SDLK_KP_8, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_8)). +-define(SDLK_KP_9, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_9)). +-define(SDLK_KP_0, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_0)). +-define(SDLK_KP_PERIOD, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_PERIOD)). +-define(SDLK_APPLICATION, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_APPLICATION)). +-define(SDLK_POWER, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_POWER)). +-define(SDLK_KP_EQUALS, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_EQUALS)). +-define(SDLK_F13, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F13)). +-define(SDLK_F14, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F14)). +-define(SDLK_F15, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F15)). +-define(SDLK_F16, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F16)). +-define(SDLK_F17, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F17)). +-define(SDLK_F18, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F18)). +-define(SDLK_F19, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F19)). +-define(SDLK_F20, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F20)). +-define(SDLK_F21, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F21)). +-define(SDLK_F22, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F22)). +-define(SDLK_F23, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F23)). +-define(SDLK_F24, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_F24)). +-define(SDLK_EXECUTE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_EXECUTE)). +-define(SDLK_HELP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_HELP)). +-define(SDLK_MENU, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_MENU)). +-define(SDLK_SELECT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_SELECT)). +-define(SDLK_STOP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_STOP)). +-define(SDLK_AGAIN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AGAIN)). +-define(SDLK_UNDO, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_UNDO)). +-define(SDLK_CUT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CUT)). +-define(SDLK_COPY, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_COPY)). +-define(SDLK_PASTE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_PASTE)). +-define(SDLK_FIND, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_FIND)). +-define(SDLK_MUTE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_MUTE)). +-define(SDLK_VOLUMEUP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_VOLUMEUP)). +-define(SDLK_VOLUMEDOWN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_VOLUMEDOWN)). +-define(SDLK_KP_COMMA, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_COMMA)). +-define(SDLK_KP_EQUALSAS400, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_EQUALSAS400)). +-define(SDLK_ALTERASE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_ALTERASE)). +-define(SDLK_SYSREQ, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_SYSREQ)). +-define(SDLK_CANCEL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CANCEL)). +-define(SDLK_CLEAR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CLEAR)). +-define(SDLK_PRIOR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_PRIOR)). +-define(SDLK_RETURN2, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_RETURN2)). +-define(SDLK_SEPARATOR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_SEPARATOR)). +-define(SDLK_OUT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_OUT)). +-define(SDLK_OPER, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_OPER)). +-define(SDLK_CLEARAGAIN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CLEARAGAIN)). +-define(SDLK_CRSEL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CRSEL)). +-define(SDLK_EXSEL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_EXSEL)). +-define(SDLK_KP_00, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_00)). +-define(SDLK_KP_000, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_000)). +-define(SDLK_THOUSANDSSEPARATOR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_THOUSANDSSEPARATOR)). +-define(SDLK_DECIMALSEPARATOR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_DECIMALSEPARATOR)). +-define(SDLK_CURRENCYUNIT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CURRENCYUNIT)). +-define(SDLK_CURRENCYSUBUNIT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CURRENCYSUBUNIT)). +-define(SDLK_KP_LEFTPAREN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_LEFTPAREN)). +-define(SDLK_KP_RIGHTPAREN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_RIGHTPAREN)). +-define(SDLK_KP_LEFTBRACE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_LEFTBRACE)). +-define(SDLK_KP_RIGHTBRACE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_RIGHTBRACE)). +-define(SDLK_KP_TAB, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_TAB)). +-define(SDLK_KP_BACKSPACE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_BACKSPACE)). +-define(SDLK_KP_A, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_A)). +-define(SDLK_KP_B, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_B)). +-define(SDLK_KP_C, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_C)). +-define(SDLK_KP_D, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_D)). +-define(SDLK_KP_E, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_E)). +-define(SDLK_KP_F, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_F)). +-define(SDLK_KP_XOR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_XOR)). +-define(SDLK_KP_POWER, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_POWER)). +-define(SDLK_KP_PERCENT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_PERCENT)). +-define(SDLK_KP_LESS, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_LESS)). +-define(SDLK_KP_GREATER, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_GREATER)). +-define(SDLK_KP_AMPERSAND, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_AMPERSAND)). +-define(SDLK_KP_DBLAMPERSAND, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_DBLAMPERSAND)). +-define(SDLK_KP_VERTICALBAR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_VERTICALBAR)). +-define(SDLK_KP_DBLVERTICALBAR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_DBLVERTICALBAR)). +-define(SDLK_KP_COLON, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_COLON)). +-define(SDLK_KP_HASH, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_HASH)). +-define(SDLK_KP_SPACE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_SPACE)). +-define(SDLK_KP_AT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_AT)). +-define(SDLK_KP_EXCLAM, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_EXCLAM)). +-define(SDLK_KP_MEMSTORE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MEMSTORE)). +-define(SDLK_KP_MEMRECALL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MEMRECALL)). +-define(SDLK_KP_MEMCLEAR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MEMCLEAR)). +-define(SDLK_KP_MEMADD, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MEMADD)). +-define(SDLK_KP_MEMSUBTRACT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MEMSUBTRACT)). +-define(SDLK_KP_MEMMULTIPLY, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MEMMULTIPLY)). +-define(SDLK_KP_MEMDIVIDE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_MEMDIVIDE)). +-define(SDLK_KP_PLUSMINUS, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_PLUSMINUS)). +-define(SDLK_KP_CLEAR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_CLEAR)). +-define(SDLK_KP_CLEARENTRY, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_CLEARENTRY)). +-define(SDLK_KP_BINARY, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_BINARY)). +-define(SDLK_KP_OCTAL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_OCTAL)). +-define(SDLK_KP_DECIMAL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_DECIMAL)). +-define(SDLK_KP_HEXADECIMAL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KP_HEXADECIMAL)). +-define(SDLK_LCTRL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_LCTRL)). +-define(SDLK_LSHIFT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_LSHIFT)). +-define(SDLK_LALT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_LALT)). +-define(SDLK_LGUI, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_LGUI)). +-define(SDLK_RCTRL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_RCTRL)). +-define(SDLK_RSHIFT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_RSHIFT)). +-define(SDLK_RALT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_RALT)). +-define(SDLK_RGUI, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_RGUI)). +-define(SDLK_MODE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_MODE)). +-define(SDLK_AUDIONEXT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AUDIONEXT)). +-define(SDLK_AUDIOPREV, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AUDIOPREV)). +-define(SDLK_AUDIOSTOP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AUDIOSTOP)). +-define(SDLK_AUDIOPLAY, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AUDIOPLAY)). +-define(SDLK_AUDIOMUTE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AUDIOMUTE)). +-define(SDLK_MEDIASELECT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_MEDIASELECT)). +-define(SDLK_WWW, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_WWW)). +-define(SDLK_MAIL, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_MAIL)). +-define(SDLK_CALCULATOR, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_CALCULATOR)). +-define(SDLK_COMPUTER, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_COMPUTER)). +-define(SDLK_AC_SEARCH, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AC_SEARCH)). +-define(SDLK_AC_HOME, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AC_HOME)). +-define(SDLK_AC_BACK, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AC_BACK)). +-define(SDLK_AC_FORWARD, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AC_FORWARD)). +-define(SDLK_AC_STOP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AC_STOP)). +-define(SDLK_AC_REFRESH, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AC_REFRESH)). +-define(SDLK_AC_BOOKMARKS, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AC_BOOKMARKS)). +-define(SDLK_BRIGHTNESSDOWN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_BRIGHTNESSDOWN)). +-define(SDLK_BRIGHTNESSUP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_BRIGHTNESSUP)). +-define(SDLK_DISPLAYSWITCH, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_DISPLAYSWITCH)). +-define(SDLK_KBDILLUMTOGGLE, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KBDILLUMTOGGLE)). +-define(SDLK_KBDILLUMDOWN, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KBDILLUMDOWN)). +-define(SDLK_KBDILLUMUP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_KBDILLUMUP)). +-define(SDLK_EJECT, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_EJECT)). +-define(SDLK_SLEEP, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_SLEEP)). +-define(SDLK_APP1, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_APP1)). +-define(SDLK_APP2, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_APP2)). +-define(SDLK_AUDIOREWIND, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AUDIOREWIND)). +-define(SDLK_AUDIOFASTFORWARD, ?SDL_SCANCODE_TO_KEYCODE(?SDL_SCANCODE_AUDIOFASTFORWARD)). + +-endif. diff --git a/include/sdl_scancode.hrl b/include/sdl_scancode.hrl new file mode 100644 index 0000000..54f9df6 --- /dev/null +++ b/include/sdl_scancode.hrl @@ -0,0 +1,261 @@ +%% Copyright (c) 2018, Loïc Hoguin +%% +%% Permission to use, copy, modify, and/or distribute this software for any +%% purpose with or without fee is hereby granted, provided that the above +%% copyright notice and this permission notice appear in all copies. +%% +%% THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +%% WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +%% MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +%% ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +%% WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +%% ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +%% OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +-ifndef(__SDL_SCANCODE_HRL__). +-define(__SDL_SCANCODE_HRL__, 1). + +-define(SDL_SCANCODE_A, 4). +-define(SDL_SCANCODE_B, 5). +-define(SDL_SCANCODE_C, 6). +-define(SDL_SCANCODE_D, 7). +-define(SDL_SCANCODE_E, 8). +-define(SDL_SCANCODE_F, 9). +-define(SDL_SCANCODE_G, 10). +-define(SDL_SCANCODE_H, 11). +-define(SDL_SCANCODE_I, 12). +-define(SDL_SCANCODE_J, 13). +-define(SDL_SCANCODE_K, 14). +-define(SDL_SCANCODE_L, 15). +-define(SDL_SCANCODE_M, 16). +-define(SDL_SCANCODE_N, 17). +-define(SDL_SCANCODE_O, 18). +-define(SDL_SCANCODE_P, 19). +-define(SDL_SCANCODE_Q, 20). +-define(SDL_SCANCODE_R, 21). +-define(SDL_SCANCODE_S, 22). +-define(SDL_SCANCODE_T, 23). +-define(SDL_SCANCODE_U, 24). +-define(SDL_SCANCODE_V, 25). +-define(SDL_SCANCODE_W, 26). +-define(SDL_SCANCODE_X, 27). +-define(SDL_SCANCODE_Y, 28). +-define(SDL_SCANCODE_Z, 29). +-define(SDL_SCANCODE_1, 30). +-define(SDL_SCANCODE_2, 31). +-define(SDL_SCANCODE_3, 32). +-define(SDL_SCANCODE_4, 33). +-define(SDL_SCANCODE_5, 34). +-define(SDL_SCANCODE_6, 35). +-define(SDL_SCANCODE_7, 36). +-define(SDL_SCANCODE_8, 37). +-define(SDL_SCANCODE_9, 38). +-define(SDL_SCANCODE_0, 39). +-define(SDL_SCANCODE_RETURN, 40). +-define(SDL_SCANCODE_ESCAPE, 41). +-define(SDL_SCANCODE_BACKSPACE, 42). +-define(SDL_SCANCODE_TAB, 43). +-define(SDL_SCANCODE_SPACE, 44). +-define(SDL_SCANCODE_MINUS, 45). +-define(SDL_SCANCODE_EQUALS, 46). +-define(SDL_SCANCODE_LEFTBRACKET, 47). +-define(SDL_SCANCODE_RIGHTBRACKET, 48). +-define(SDL_SCANCODE_BACKSLASH, 49). +-define(SDL_SCANCODE_NONUSHASH, 50). +-define(SDL_SCANCODE_SEMICOLON, 51). +-define(SDL_SCANCODE_APOSTROPHE, 52). +-define(SDL_SCANCODE_GRAVE, 53). +-define(SDL_SCANCODE_COMMA, 54). +-define(SDL_SCANCODE_PERIOD, 55). +-define(SDL_SCANCODE_SLASH, 56). +-define(SDL_SCANCODE_CAPSLOCK, 57). +-define(SDL_SCANCODE_F1, 58). +-define(SDL_SCANCODE_F2, 59). +-define(SDL_SCANCODE_F3, 60). +-define(SDL_SCANCODE_F4, 61). +-define(SDL_SCANCODE_F5, 62). +-define(SDL_SCANCODE_F6, 63). +-define(SDL_SCANCODE_F7, 64). +-define(SDL_SCANCODE_F8, 65). +-define(SDL_SCANCODE_F9, 66). +-define(SDL_SCANCODE_F10, 67). +-define(SDL_SCANCODE_F11, 68). +-define(SDL_SCANCODE_F12, 69). +-define(SDL_SCANCODE_PRINTSCREEN, 70). +-define(SDL_SCANCODE_SCROLLLOCK, 71). +-define(SDL_SCANCODE_PAUSE, 72). +-define(SDL_SCANCODE_INSERT, 73). +-define(SDL_SCANCODE_HOME, 74). +-define(SDL_SCANCODE_PAGEUP, 75). +-define(SDL_SCANCODE_DELETE, 76). +-define(SDL_SCANCODE_END, 77). +-define(SDL_SCANCODE_PAGEDOWN, 78). +-define(SDL_SCANCODE_RIGHT, 79). +-define(SDL_SCANCODE_LEFT, 80). +-define(SDL_SCANCODE_DOWN, 81). +-define(SDL_SCANCODE_UP, 82). +-define(SDL_SCANCODE_NUMLOCKCLEAR, 83). +-define(SDL_SCANCODE_KP_DIVIDE, 84). +-define(SDL_SCANCODE_KP_MULTIPLY, 85). +-define(SDL_SCANCODE_KP_MINUS, 86). +-define(SDL_SCANCODE_KP_PLUS, 87). +-define(SDL_SCANCODE_KP_ENTER, 88). +-define(SDL_SCANCODE_KP_1, 89). +-define(SDL_SCANCODE_KP_2, 90). +-define(SDL_SCANCODE_KP_3, 91). +-define(SDL_SCANCODE_KP_4, 92). +-define(SDL_SCANCODE_KP_5, 93). +-define(SDL_SCANCODE_KP_6, 94). +-define(SDL_SCANCODE_KP_7, 95). +-define(SDL_SCANCODE_KP_8, 96). +-define(SDL_SCANCODE_KP_9, 97). +-define(SDL_SCANCODE_KP_0, 98). +-define(SDL_SCANCODE_KP_PERIOD, 99). +-define(SDL_SCANCODE_NONUSBACKSLASH, 100). +-define(SDL_SCANCODE_APPLICATION, 101). +-define(SDL_SCANCODE_POWER, 102). +-define(SDL_SCANCODE_KP_EQUALS, 103). +-define(SDL_SCANCODE_F13, 104). +-define(SDL_SCANCODE_F14, 105). +-define(SDL_SCANCODE_F15, 106). +-define(SDL_SCANCODE_F16, 107). +-define(SDL_SCANCODE_F17, 108). +-define(SDL_SCANCODE_F18, 109). +-define(SDL_SCANCODE_F19, 110). +-define(SDL_SCANCODE_F20, 111). +-define(SDL_SCANCODE_F21, 112). +-define(SDL_SCANCODE_F22, 113). +-define(SDL_SCANCODE_F23, 114). +-define(SDL_SCANCODE_F24, 115). +-define(SDL_SCANCODE_EXECUTE, 116). +-define(SDL_SCANCODE_HELP, 117). +-define(SDL_SCANCODE_MENU, 118). +-define(SDL_SCANCODE_SELECT, 119). +-define(SDL_SCANCODE_STOP, 120). +-define(SDL_SCANCODE_AGAIN, 121). +-define(SDL_SCANCODE_UNDO, 122). +-define(SDL_SCANCODE_CUT, 123). +-define(SDL_SCANCODE_COPY, 124). +-define(SDL_SCANCODE_PASTE, 125). +-define(SDL_SCANCODE_FIND, 126). +-define(SDL_SCANCODE_MUTE, 127). +-define(SDL_SCANCODE_VOLUMEUP, 128). +-define(SDL_SCANCODE_VOLUMEDOWN, 129). +-define(SDL_SCANCODE_KP_COMMA, 133). +-define(SDL_SCANCODE_KP_EQUALSAS400, 134). +-define(SDL_SCANCODE_INTERNATIONAL1, 135). +-define(SDL_SCANCODE_INTERNATIONAL2, 136). +-define(SDL_SCANCODE_INTERNATIONAL3, 137). +-define(SDL_SCANCODE_INTERNATIONAL4, 138). +-define(SDL_SCANCODE_INTERNATIONAL5, 139). +-define(SDL_SCANCODE_INTERNATIONAL6, 140). +-define(SDL_SCANCODE_INTERNATIONAL7, 141). +-define(SDL_SCANCODE_INTERNATIONAL8, 142). +-define(SDL_SCANCODE_INTERNATIONAL9, 143). +-define(SDL_SCANCODE_LANG1, 144). +-define(SDL_SCANCODE_LANG2, 145). +-define(SDL_SCANCODE_LANG3, 146). +-define(SDL_SCANCODE_LANG4, 147). +-define(SDL_SCANCODE_LANG5, 148). +-define(SDL_SCANCODE_LANG6, 149). +-define(SDL_SCANCODE_LANG7, 150). +-define(SDL_SCANCODE_LANG8, 151). +-define(SDL_SCANCODE_LANG9, 152). +-define(SDL_SCANCODE_ALTERASE, 153). +-define(SDL_SCANCODE_SYSREQ, 154). +-define(SDL_SCANCODE_CANCEL, 155). +-define(SDL_SCANCODE_CLEAR, 156). +-define(SDL_SCANCODE_PRIOR, 157). +-define(SDL_SCANCODE_RETURN2, 158). +-define(SDL_SCANCODE_SEPARATOR, 159). +-define(SDL_SCANCODE_OUT, 160). +-define(SDL_SCANCODE_OPER, 161). +-define(SDL_SCANCODE_CLEARAGAIN, 162). +-define(SDL_SCANCODE_CRSEL, 163). +-define(SDL_SCANCODE_EXSEL, 164). +-define(SDL_SCANCODE_KP_00, 176). +-define(SDL_SCANCODE_KP_000, 177). +-define(SDL_SCANCODE_THOUSANDSSEPARATOR, 178). +-define(SDL_SCANCODE_DECIMALSEPARATOR, 179). +-define(SDL_SCANCODE_CURRENCYUNIT, 180). +-define(SDL_SCANCODE_CURRENCYSUBUNIT, 181). +-define(SDL_SCANCODE_KP_LEFTPAREN, 182). +-define(SDL_SCANCODE_KP_RIGHTPAREN, 183). +-define(SDL_SCANCODE_KP_LEFTBRACE, 184). +-define(SDL_SCANCODE_KP_RIGHTBRACE, 185). +-define(SDL_SCANCODE_KP_TAB, 186). +-define(SDL_SCANCODE_KP_BACKSPACE, 187). +-define(SDL_SCANCODE_KP_A, 188). +-define(SDL_SCANCODE_KP_B, 189). +-define(SDL_SCANCODE_KP_C, 190). +-define(SDL_SCANCODE_KP_D, 191). +-define(SDL_SCANCODE_KP_E, 192). +-define(SDL_SCANCODE_KP_F, 193). +-define(SDL_SCANCODE_KP_XOR, 194). +-define(SDL_SCANCODE_KP_POWER, 195). +-define(SDL_SCANCODE_KP_PERCENT, 196). +-define(SDL_SCANCODE_KP_LESS, 197). +-define(SDL_SCANCODE_KP_GREATER, 198). +-define(SDL_SCANCODE_KP_AMPERSAND, 199). +-define(SDL_SCANCODE_KP_DBLAMPERSAND, 200). +-define(SDL_SCANCODE_KP_VERTICALBAR, 201). +-define(SDL_SCANCODE_KP_DBLVERTICALBAR, 202). +-define(SDL_SCANCODE_KP_COLON, 203). +-define(SDL_SCANCODE_KP_HASH, 204). +-define(SDL_SCANCODE_KP_SPACE, 205). +-define(SDL_SCANCODE_KP_AT, 206). +-define(SDL_SCANCODE_KP_EXCLAM, 207). +-define(SDL_SCANCODE_KP_MEMSTORE, 208). +-define(SDL_SCANCODE_KP_MEMRECALL, 209). +-define(SDL_SCANCODE_KP_MEMCLEAR, 210). +-define(SDL_SCANCODE_KP_MEMADD, 211). +-define(SDL_SCANCODE_KP_MEMSUBTRACT, 212). +-define(SDL_SCANCODE_KP_MEMMULTIPLY, 213). +-define(SDL_SCANCODE_KP_MEMDIVIDE, 214). +-define(SDL_SCANCODE_KP_PLUSMINUS, 215). +-define(SDL_SCANCODE_KP_CLEAR, 216). +-define(SDL_SCANCODE_KP_CLEARENTRY, 217). +-define(SDL_SCANCODE_KP_BINARY, 218). +-define(SDL_SCANCODE_KP_OCTAL, 219). +-define(SDL_SCANCODE_KP_DECIMAL, 220). +-define(SDL_SCANCODE_KP_HEXADECIMAL, 221). +-define(SDL_SCANCODE_LCTRL, 224). +-define(SDL_SCANCODE_LSHIFT, 225). +-define(SDL_SCANCODE_LALT, 226). +-define(SDL_SCANCODE_LGUI, 227). +-define(SDL_SCANCODE_RCTRL, 228). +-define(SDL_SCANCODE_RSHIFT, 229). +-define(SDL_SCANCODE_RALT, 230). +-define(SDL_SCANCODE_RGUI, 231). +-define(SDL_SCANCODE_MODE, 257). +-define(SDL_SCANCODE_AUDIONEXT, 258). +-define(SDL_SCANCODE_AUDIOPREV, 259). +-define(SDL_SCANCODE_AUDIOSTOP, 260). +-define(SDL_SCANCODE_AUDIOPLAY, 261). +-define(SDL_SCANCODE_AUDIOMUTE, 262). +-define(SDL_SCANCODE_MEDIASELECT, 263). +-define(SDL_SCANCODE_WWW, 264). +-define(SDL_SCANCODE_MAIL, 265). +-define(SDL_SCANCODE_CALCULATOR, 266). +-define(SDL_SCANCODE_COMPUTER, 267). +-define(SDL_SCANCODE_AC_SEARCH, 268). +-define(SDL_SCANCODE_AC_HOME, 269). +-define(SDL_SCANCODE_AC_BACK, 270). +-define(SDL_SCANCODE_AC_FORWARD, 271). +-define(SDL_SCANCODE_AC_STOP, 272). +-define(SDL_SCANCODE_AC_REFRESH, 273). +-define(SDL_SCANCODE_AC_BOOKMARKS, 274). +-define(SDL_SCANCODE_BRIGHTNESSDOWN, 275). +-define(SDL_SCANCODE_BRIGHTNESSUP, 276). +-define(SDL_SCANCODE_DISPLAYSWITCH, 277). +-define(SDL_SCANCODE_KBDILLUMTOGGLE, 278). +-define(SDL_SCANCODE_KBDILLUMDOWN, 279). +-define(SDL_SCANCODE_KBDILLUMUP, 280). +-define(SDL_SCANCODE_EJECT, 281). +-define(SDL_SCANCODE_SLEEP, 282). +-define(SDL_SCANCODE_APP1, 283). +-define(SDL_SCANCODE_APP2, 284). +-define(SDL_SCANCODE_AUDIOREWIND, 285). +-define(SDL_SCANCODE_AUDIOFASTFORWARD, 286). + +-endif. -- cgit v1.2.3