mirror of
https://github.com/micsthepick/dsi2key.git
synced 2025-06-19 01:05:37 -04:00

2. Heavily changed configWindow, not finished 3. Some alterations to how enum_keys.cpp\h works 4. Added SINGLE_INPUT_SETTING udp packet 5. Some linux ifdef's 6. Probably others, this is old and should have been commited into a couple commits
811 lines
17 KiB
C++
811 lines
17 KiB
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
#if defined(_WIN32)
|
|
#include <windows.h>
|
|
#elif defined(__linux__)
|
|
#include <cstring>
|
|
#include <X11/keysym.h>
|
|
#elif defined(_NDS) || defined(_3DS)
|
|
#include <cstring>
|
|
#endif
|
|
|
|
namespace D2K {namespace Key {
|
|
|
|
enum {
|
|
|
|
DSKEY_NONE = 0x00,
|
|
DSKEY_VOID = DSKEY_NONE,
|
|
DSKEY_LBUTTON,
|
|
DSKEY_RBUTTON,
|
|
DSKEY_CANCEL,
|
|
DSKEY_MBUTTON,
|
|
DSKEY_XBUTTON1,
|
|
DSKEY_XBUTTON2,
|
|
DSKEY_BACK,
|
|
DSKEY_TAB,
|
|
DSKEY_CLEAR,
|
|
DSKEY_RETURN,
|
|
DSKEY_SHIFT,
|
|
DSKEY_CONTROL,
|
|
DSKEY_MENU,
|
|
DSKEY_PAUSE,
|
|
DSKEY_CAPITAL,
|
|
DSKEY_KANA,
|
|
DSKEY_HANGEUL,
|
|
DSKEY_HANGUL,
|
|
DSKEY_JUNJA,
|
|
DSKEY_FINAL,
|
|
DSKEY_HANJA,
|
|
DSKEY_KANJI,
|
|
DSKEY_ESCAPE,
|
|
DSKEY_CONVERT,
|
|
DSKEY_NONCONVERT,
|
|
DSKEY_ACCEPT,
|
|
DSKEY_MODECHANGE,
|
|
DSKEY_SPACE,
|
|
DSKEY_PRIOR,
|
|
DSKEY_NEXT,
|
|
DSKEY_END,
|
|
DSKEY_HOME,
|
|
DSKEY_LEFT,
|
|
DSKEY_UP,
|
|
DSKEY_RIGHT,
|
|
DSKEY_DOWN,
|
|
DSKEY_SELECT,
|
|
DSKEY_PRINT,
|
|
DSKEY_EXEC,
|
|
DSKEY_SNAPSHOT,
|
|
DSKEY_INSERT,
|
|
DSKEY_DELETE,
|
|
DSKEY_HELP,
|
|
DSKEY_0,
|
|
DSKEY_1,
|
|
DSKEY_2,
|
|
DSKEY_3,
|
|
DSKEY_4,
|
|
DSKEY_5,
|
|
DSKEY_6,
|
|
DSKEY_7,
|
|
DSKEY_8,
|
|
DSKEY_9,
|
|
DSKEY_A,
|
|
DSKEY_B,
|
|
DSKEY_C,
|
|
DSKEY_D,
|
|
DSKEY_E,
|
|
DSKEY_F,
|
|
DSKEY_G,
|
|
DSKEY_H,
|
|
DSKEY_I,
|
|
DSKEY_J,
|
|
DSKEY_K,
|
|
DSKEY_L,
|
|
DSKEY_M,
|
|
DSKEY_N,
|
|
DSKEY_O,
|
|
DSKEY_P,
|
|
DSKEY_Q,
|
|
DSKEY_R,
|
|
DSKEY_S,
|
|
DSKEY_T,
|
|
DSKEY_U,
|
|
DSKEY_V,
|
|
DSKEY_W,
|
|
DSKEY_X,
|
|
DSKEY_Y,
|
|
DSKEY_Z,
|
|
DSKEY_LWIN,
|
|
DSKEY_RWIN,
|
|
DSKEY_APPS,
|
|
DSKEY_SLEEP,
|
|
DSKEY_NUMPAD0,
|
|
DSKEY_NUMPAD1,
|
|
DSKEY_NUMPAD2,
|
|
DSKEY_NUMPAD3,
|
|
DSKEY_NUMPAD4,
|
|
DSKEY_NUMPAD5,
|
|
DSKEY_NUMPAD6,
|
|
DSKEY_NUMPAD7,
|
|
DSKEY_NUMPAD8,
|
|
DSKEY_NUMPAD9,
|
|
DSKEY_MULTIPLY,
|
|
DSKEY_ADD,
|
|
DSKEY_SEPARATOR,
|
|
DSKEY_SUBTRACT,
|
|
DSKEY_DECIMAL,
|
|
DSKEY_DIVIDE,
|
|
DSKEY_F1,
|
|
DSKEY_F2,
|
|
DSKEY_F3,
|
|
DSKEY_F4,
|
|
DSKEY_F5,
|
|
DSKEY_F6,
|
|
DSKEY_F7,
|
|
DSKEY_F8,
|
|
DSKEY_F9,
|
|
DSKEY_F10,
|
|
DSKEY_F11,
|
|
DSKEY_F12,
|
|
DSKEY_F13,
|
|
DSKEY_F14,
|
|
DSKEY_F15,
|
|
DSKEY_F16,
|
|
DSKEY_F17,
|
|
DSKEY_F18,
|
|
DSKEY_F19,
|
|
DSKEY_F20,
|
|
DSKEY_F21,
|
|
DSKEY_F22,
|
|
DSKEY_F23,
|
|
DSKEY_F24,
|
|
DSKEY_NUMLOCK,
|
|
DSKEY_SCROLL,
|
|
DSKEY_LSHIFT,
|
|
DSKEY_RSHIFT,
|
|
DSKEY_LCONTROL,
|
|
DSKEY_RCONTROL,
|
|
DSKEY_LMENU,
|
|
DSKEY_RMENU,
|
|
DSKEY_BROWSER_BACK,
|
|
DSKEY_BROWSER_FORWARD,
|
|
DSKEY_BROWSER_REFRESH,
|
|
DSKEY_BROWSER_STOP,
|
|
DSKEY_BROWSER_SEARCH,
|
|
DSKEY_BROWSER_FAVORITES,
|
|
DSKEY_BROWSER_HOME,
|
|
DSKEY_VOLUME_MUTE,
|
|
DSKEY_VOLUME_DOWN,
|
|
DSKEY_VOLUME_UP,
|
|
DSKEY_MEDIA_NEXT_TRACK,
|
|
DSKEY_MEDIA_PREV_TRACK,
|
|
DSKEY_MEDIA_STOP,
|
|
DSKEY_MEDIA_PLAY_PAUSE,
|
|
DSKEY_LAUNCH_MAIL,
|
|
DSKEY_LAUNCH_MEDIA_SELECT,
|
|
DSKEY_LAUNCH_APP1,
|
|
DSKEY_LAUNCH_APP2,
|
|
DSKEY_OEM_1, //,
|
|
DSKEY_OEM_PLUS, //=
|
|
DSKEY_OEM_COMMA, //,
|
|
DSKEY_OEM_MINUS, //_
|
|
DSKEY_OEM_PERIOD, //>
|
|
DSKEY_OEM_2, //?
|
|
DSKEY_OEM_3, //``
|
|
DSKEY_OEM_4, //[
|
|
DSKEY_OEM_5, //|
|
|
DSKEY_OEM_6, //]
|
|
DSKEY_OEM_7, //'
|
|
DSKEY_OEM_8,
|
|
DSKEY_PROCESSKEY,
|
|
DSKEY_PACKET,
|
|
DSKEY_ATTN,
|
|
DSKEY_CRSEL,
|
|
DSKEY_EXSEL,
|
|
DSKEY_EREOF,
|
|
DSKEY_PLAY,
|
|
DSKEY_ZOOM,
|
|
DSKEY_NONAME,
|
|
DSKEY_PA1,
|
|
DSKEY_OEM_CLEAR,
|
|
DSKEY_OEM_102,
|
|
DSKEY_SLASH,
|
|
DSKEY_BACKSLASH,
|
|
|
|
};
|
|
|
|
enum {
|
|
|
|
KEY_NONE = 0,
|
|
#if defined(_WIN32)
|
|
KEY_VOID = KEY_NONE,
|
|
KEY_LBUTTON = VK_LBUTTON,
|
|
KEY_RBUTTON = VK_RBUTTON,
|
|
KEY_CANCEL = VK_CANCEL,
|
|
KEY_MBUTTON = VK_MBUTTON,
|
|
KEY_BACK = VK_BACK,
|
|
KEY_TAB = VK_TAB,
|
|
KEY_CLEAR = VK_CLEAR,
|
|
KEY_RETURN = VK_RETURN,
|
|
KEY_SHIFT = VK_SHIFT,
|
|
KEY_CONTROL = VK_CONTROL,
|
|
KEY_MENU = VK_MENU,
|
|
KEY_PAUSE = VK_PAUSE,
|
|
KEY_CAPITAL = VK_CAPITAL,
|
|
KEY_KANA = VK_KANA,
|
|
KEY_HANGEUL = VK_HANGEUL,
|
|
KEY_HANGUL = VK_HANGUL,
|
|
KEY_JUNJA = VK_JUNJA,
|
|
KEY_FINAL = VK_FINAL,
|
|
KEY_HANJA = VK_HANJA,
|
|
KEY_KANJI = VK_KANJI,
|
|
KEY_ESCAPE = VK_ESCAPE,
|
|
KEY_CONVERT = VK_CONVERT,
|
|
KEY_NONCONVERT = VK_NONCONVERT,
|
|
KEY_ACCEPT = VK_ACCEPT,
|
|
KEY_MODECHANGE = VK_MODECHANGE,
|
|
KEY_SPACE = VK_SPACE,
|
|
KEY_PRIOR = VK_PRIOR,
|
|
KEY_NEXT = VK_NEXT,
|
|
KEY_END = VK_END,
|
|
KEY_HOME = VK_HOME,
|
|
KEY_LEFT = VK_LEFT,
|
|
KEY_UP = VK_UP,
|
|
KEY_RIGHT = VK_RIGHT,
|
|
KEY_DOWN = VK_DOWN,
|
|
KEY_SELECT = VK_SELECT,
|
|
KEY_PRINT = VK_PRINT,
|
|
KEY_EXEC = VK_EXECUTE, // KEY_EXECUTE is already defined in windows
|
|
KEY_SNAPSHOT = VK_SNAPSHOT,
|
|
KEY_INSERT = VK_INSERT,
|
|
KEY_DELETE = VK_DELETE,
|
|
KEY_HELP = VK_HELP,
|
|
KEY_0 = '0',
|
|
KEY_1 = '1',
|
|
KEY_2 = '2',
|
|
KEY_3 = '3',
|
|
KEY_4 = '4',
|
|
KEY_5 = '5',
|
|
KEY_6 = '6',
|
|
KEY_7 = '7',
|
|
KEY_8 = '8',
|
|
KEY_9 = '9',
|
|
KEY_A = 'A',
|
|
KEY_B = 'B',
|
|
KEY_C = 'C',
|
|
KEY_D = 'D',
|
|
KEY_E = 'E',
|
|
KEY_F = 'F',
|
|
KEY_G = 'G',
|
|
KEY_H = 'H',
|
|
KEY_I = 'I',
|
|
KEY_J = 'J',
|
|
KEY_K = 'K',
|
|
KEY_L = 'L',
|
|
KEY_M = 'M',
|
|
KEY_N = 'N',
|
|
KEY_O = 'O',
|
|
KEY_P = 'P',
|
|
KEY_Q = 'Q',
|
|
KEY_R = 'R',
|
|
KEY_S = 'S',
|
|
KEY_T = 'T',
|
|
KEY_U = 'U',
|
|
KEY_V = 'V',
|
|
KEY_W = 'W',
|
|
KEY_X = 'X',
|
|
KEY_Y = 'Y',
|
|
KEY_Z = 'Z',
|
|
KEY_LWIN = VK_LWIN,
|
|
KEY_RWIN = VK_RWIN,
|
|
KEY_APPS = VK_APPS,
|
|
KEY_SLEEP = VK_SLEEP,
|
|
KEY_NUMPAD0 = VK_NUMPAD0,
|
|
KEY_NUMPAD1 = VK_NUMPAD1,
|
|
KEY_NUMPAD2 = VK_NUMPAD2,
|
|
KEY_NUMPAD3 = VK_NUMPAD3,
|
|
KEY_NUMPAD4 = VK_NUMPAD4,
|
|
KEY_NUMPAD5 = VK_NUMPAD5,
|
|
KEY_NUMPAD6 = VK_NUMPAD6,
|
|
KEY_NUMPAD7 = VK_NUMPAD7,
|
|
KEY_NUMPAD8 = VK_NUMPAD8,
|
|
KEY_NUMPAD9 = VK_NUMPAD9,
|
|
KEY_MULTIPLY = VK_MULTIPLY,
|
|
KEY_ADD = VK_ADD,
|
|
KEY_SEPARATOR = VK_SEPARATOR,
|
|
KEY_SUBTRACT = VK_SUBTRACT,
|
|
KEY_DECIMAL = VK_DECIMAL,
|
|
KEY_DIVIDE = VK_DIVIDE,
|
|
KEY_F1 = VK_F1,
|
|
KEY_F2 = VK_F2,
|
|
KEY_F3 = VK_F3,
|
|
KEY_F4 = VK_F4,
|
|
KEY_F5 = VK_F5,
|
|
KEY_F6 = VK_F6,
|
|
KEY_F7 = VK_F7,
|
|
KEY_F8 = VK_F8,
|
|
KEY_F9 = VK_F9,
|
|
KEY_F10 = VK_F10,
|
|
KEY_F11 = VK_F11,
|
|
KEY_F12 = VK_F12,
|
|
KEY_F13 = VK_F13,
|
|
KEY_F14 = VK_F14,
|
|
KEY_F15 = VK_F15,
|
|
KEY_F16 = VK_F16,
|
|
KEY_F17 = VK_F17,
|
|
KEY_F18 = VK_F18,
|
|
KEY_F19 = VK_F19,
|
|
KEY_F20 = VK_F20,
|
|
KEY_F21 = VK_F21,
|
|
KEY_F22 = VK_F22,
|
|
KEY_F23 = VK_F23,
|
|
KEY_F24 = VK_F24,
|
|
KEY_NUMLOCK = VK_NUMLOCK,
|
|
KEY_SCROLL = VK_SCROLL,
|
|
KEY_LSHIFT = VK_LSHIFT,
|
|
KEY_RSHIFT = VK_RSHIFT,
|
|
KEY_LCONTROL = VK_LCONTROL,
|
|
KEY_RCONTROL = VK_RCONTROL,
|
|
KEY_LMENU = VK_LMENU,
|
|
KEY_RMENU = VK_RMENU,
|
|
KEY_OEM_1 = VK_OEM_1,
|
|
KEY_OEM_2 = VK_OEM_2,
|
|
KEY_OEM_3 = VK_OEM_3,
|
|
KEY_OEM_4 = VK_OEM_4,
|
|
KEY_OEM_5 = VK_OEM_5,
|
|
KEY_OEM_6 = VK_OEM_6,
|
|
KEY_OEM_7 = VK_OEM_7,
|
|
KEY_OEM_8 = VK_OEM_8,
|
|
KEY_PROCESSKEY = VK_PROCESSKEY,
|
|
KEY_ATTN = VK_ATTN,
|
|
KEY_CRSEL = VK_CRSEL,
|
|
KEY_EXSEL = VK_EXSEL,
|
|
KEY_EREOF = VK_EREOF,
|
|
KEY_PLAY = VK_PLAY,
|
|
KEY_ZOOM = VK_ZOOM,
|
|
KEY_NONAME = VK_NONAME,
|
|
KEY_PA1 = VK_PA1,
|
|
KEY_OEM_CLEAR = VK_OEM_CLEAR,
|
|
KEY_SLASH = VK_OEM_2,
|
|
KEY_BACKSLASH = VK_OEM_5,
|
|
#elif defined(_NDS) || defined(_3DS)
|
|
KEY_VOID = KEY_NONE,
|
|
KEY_LBUTTON = DSKEY_LBUTTON,
|
|
KEY_RBUTTON = DSKEY_RBUTTON,
|
|
KEY_CANCEL = DSKEY_CANCEL,
|
|
KEY_MBUTTON = DSKEY_MBUTTON,
|
|
KEY_BACK = DSKEY_BACK,
|
|
KEY_TAB = DSKEY_TAB,
|
|
KEY_CLEAR = DSKEY_CLEAR,
|
|
KEY_RETURN = DSKEY_RETURN,
|
|
KEY_SHIFT = DSKEY_SHIFT,
|
|
KEY_CONTROL = DSKEY_CONTROL,
|
|
KEY_MENU = DSKEY_MENU,
|
|
KEY_PAUSE = DSKEY_PAUSE,
|
|
KEY_CAPITAL = DSKEY_CAPITAL,
|
|
KEY_KANA = DSKEY_KANA,
|
|
KEY_HANGEUL = DSKEY_HANGEUL,
|
|
KEY_HANGUL = DSKEY_HANGUL,
|
|
KEY_JUNJA = DSKEY_JUNJA,
|
|
KEY_FINAL = DSKEY_FINAL,
|
|
KEY_HANJA = DSKEY_HANJA,
|
|
KEY_KANJI = DSKEY_KANJI,
|
|
KEY_ESCAPE = DSKEY_ESCAPE,
|
|
KEY_CONVERT = DSKEY_CONVERT,
|
|
KEY_NONCONVERT = DSKEY_NONCONVERT,
|
|
KEY_ACCEPT = DSKEY_ACCEPT,
|
|
KEY_MODECHANGE = DSKEY_MODECHANGE,
|
|
KEY_SPACE = DSKEY_SPACE,
|
|
KEY_PRIOR = DSKEY_PRIOR,
|
|
KEY_NEXT = DSKEY_NEXT,
|
|
KEY_END = DSKEY_END,
|
|
KEY_HOME = DSKEY_HOME,
|
|
KEY_LEFT = DSKEY_LEFT,
|
|
KEY_UP = DSKEY_UP,
|
|
KEY_RIGHT = DSKEY_RIGHT,
|
|
KEY_DOWN = DSKEY_DOWN,
|
|
KEY_SELECT = DSKEY_SELECT,
|
|
KEY_PRINT = DSKEY_PRINT,
|
|
KEY_EXEC = DSKEY_EXEC, // KEY_EXECUTE is already defined in windows
|
|
KEY_SNAPSHOT = DSKEY_SNAPSHOT,
|
|
KEY_INSERT = DSKEY_INSERT,
|
|
KEY_DELETE = DSKEY_DELETE,
|
|
KEY_HELP = DSKEY_HELP,
|
|
KEY_0 = DSKEY_0,
|
|
KEY_1 = DSKEY_1,
|
|
KEY_2 = DSKEY_2,
|
|
KEY_3 = DSKEY_3,
|
|
KEY_4 = DSKEY_4,
|
|
KEY_5 = DSKEY_5,
|
|
KEY_6 = DSKEY_6,
|
|
KEY_7 = DSKEY_7,
|
|
KEY_8 = DSKEY_8,
|
|
KEY_9 = DSKEY_9,
|
|
KEY_A = DSKEY_A,
|
|
KEY_B = DSKEY_B,
|
|
KEY_C = DSKEY_C,
|
|
KEY_D = DSKEY_D,
|
|
KEY_E = DSKEY_E,
|
|
KEY_F = DSKEY_F,
|
|
KEY_G = DSKEY_G,
|
|
KEY_H = DSKEY_H,
|
|
KEY_I = DSKEY_I,
|
|
KEY_J = DSKEY_J,
|
|
KEY_K = DSKEY_K,
|
|
KEY_L = DSKEY_L,
|
|
KEY_M = DSKEY_M,
|
|
KEY_N = DSKEY_N,
|
|
KEY_O = DSKEY_O,
|
|
KEY_P = DSKEY_P,
|
|
KEY_Q = DSKEY_Q,
|
|
KEY_R = DSKEY_R,
|
|
KEY_S = DSKEY_S,
|
|
KEY_T = DSKEY_T,
|
|
KEY_U = DSKEY_U,
|
|
KEY_V = DSKEY_V,
|
|
KEY_W = DSKEY_W,
|
|
KEY_X = DSKEY_X,
|
|
KEY_Y = DSKEY_Y,
|
|
KEY_Z = DSKEY_Z,
|
|
KEY_LWIN = DSKEY_LWIN,
|
|
KEY_RWIN = DSKEY_RWIN,
|
|
KEY_APPS = DSKEY_APPS,
|
|
KEY_SLEEP = DSKEY_SLEEP,
|
|
KEY_NUMPAD0 = DSKEY_NUMPAD0,
|
|
KEY_NUMPAD1 = DSKEY_NUMPAD1,
|
|
KEY_NUMPAD2 = DSKEY_NUMPAD2,
|
|
KEY_NUMPAD3 = DSKEY_NUMPAD3,
|
|
KEY_NUMPAD4 = DSKEY_NUMPAD4,
|
|
KEY_NUMPAD5 = DSKEY_NUMPAD5,
|
|
KEY_NUMPAD6 = DSKEY_NUMPAD6,
|
|
KEY_NUMPAD7 = DSKEY_NUMPAD7,
|
|
KEY_NUMPAD8 = DSKEY_NUMPAD8,
|
|
KEY_NUMPAD9 = DSKEY_NUMPAD9,
|
|
KEY_MULTIPLY = DSKEY_MULTIPLY,
|
|
KEY_ADD = DSKEY_ADD,
|
|
KEY_SEPARATOR = DSKEY_SEPARATOR,
|
|
KEY_SUBTRACT = DSKEY_SUBTRACT,
|
|
KEY_DECIMAL = DSKEY_DECIMAL,
|
|
KEY_DIVIDE = DSKEY_DIVIDE,
|
|
KEY_F1 = DSKEY_F1,
|
|
KEY_F2 = DSKEY_F2,
|
|
KEY_F3 = DSKEY_F3,
|
|
KEY_F4 = DSKEY_F4,
|
|
KEY_F5 = DSKEY_F5,
|
|
KEY_F6 = DSKEY_F6,
|
|
KEY_F7 = DSKEY_F7,
|
|
KEY_F8 = DSKEY_F8,
|
|
KEY_F9 = DSKEY_F9,
|
|
KEY_F10 = DSKEY_F10,
|
|
KEY_F11 = DSKEY_F11,
|
|
KEY_F12 = DSKEY_F12,
|
|
KEY_F13 = DSKEY_F13,
|
|
KEY_F14 = DSKEY_F14,
|
|
KEY_F15 = DSKEY_F15,
|
|
KEY_F16 = DSKEY_F16,
|
|
KEY_F17 = DSKEY_F17,
|
|
KEY_F18 = DSKEY_F18,
|
|
KEY_F19 = DSKEY_F19,
|
|
KEY_F20 = DSKEY_F20,
|
|
KEY_F21 = DSKEY_F21,
|
|
KEY_F22 = DSKEY_F22,
|
|
KEY_F23 = DSKEY_F23,
|
|
KEY_F24 = DSKEY_F24,
|
|
KEY_NUMLOCK = DSKEY_NUMLOCK,
|
|
KEY_SCROLL = DSKEY_SCROLL,
|
|
KEY_LSHIFT = DSKEY_LSHIFT,
|
|
KEY_RSHIFT = DSKEY_RSHIFT,
|
|
KEY_LCONTROL = DSKEY_LCONTROL,
|
|
KEY_RCONTROL = DSKEY_RCONTROL,
|
|
KEY_LMENU = DSKEY_LMENU,
|
|
KEY_RMENU = DSKEY_RMENU,
|
|
KEY_OEM_1 = DSKEY_OEM_1,
|
|
KEY_OEM_2 = DSKEY_OEM_2,
|
|
KEY_OEM_3 = DSKEY_OEM_3,
|
|
KEY_OEM_4 = DSKEY_OEM_4,
|
|
KEY_OEM_5 = DSKEY_OEM_5,
|
|
KEY_OEM_6 = DSKEY_OEM_6,
|
|
KEY_OEM_7 = DSKEY_OEM_7,
|
|
KEY_OEM_8 = DSKEY_OEM_8,
|
|
KEY_PROCESSKEY = DSKEY_PROCESSKEY,
|
|
KEY_ATTN = DSKEY_ATTN,
|
|
KEY_CRSEL = DSKEY_CRSEL,
|
|
KEY_EXSEL = DSKEY_EXSEL,
|
|
KEY_EREOF = DSKEY_EREOF,
|
|
KEY_PLAY = DSKEY_PLAY,
|
|
KEY_ZOOM = DSKEY_ZOOM,
|
|
KEY_NONAME = DSKEY_NONAME,
|
|
KEY_PA1 = DSKEY_PA1,
|
|
KEY_OEM_CLEAR = DSKEY_OEM_CLEAR,
|
|
KEY_SLASH = DSKEY_SLASH,
|
|
KEY_BACKSLASH = DSKEY_BACKSLASH,
|
|
#elif defined(__linux__)
|
|
KEY_VOID = XK_VoidSymbol,
|
|
KEY_LBUTTON = 0x8000, // LBUTTON
|
|
KEY_RBUTTON = 0x8002, // RBUTTON
|
|
KEY_CANCEL = KEY_NONE, // CANCEL
|
|
KEY_MBUTTON = 0x8001, // MBUTTON
|
|
KEY_BACK = XK_BackSpace,
|
|
KEY_TAB = XK_Tab,
|
|
KEY_CLEAR = XK_Clear,
|
|
KEY_RETURN = XK_Return,
|
|
KEY_SHIFT = XK_Shift_L,
|
|
KEY_CONTROL = XK_Control_L,
|
|
KEY_MENU = KEY_NONE, // MENU
|
|
KEY_PAUSE = XK_Pause,
|
|
KEY_CAPITAL = XK_Caps_Lock,
|
|
KEY_KANA = KEY_NONE, // KANA
|
|
KEY_HANGEUL = KEY_NONE, // HANGEUL
|
|
KEY_HANGUL = KEY_NONE, // HANGUL
|
|
KEY_JUNJA = KEY_NONE, // JUNJA
|
|
KEY_FINAL = KEY_NONE, // FINAL
|
|
KEY_HANJA = KEY_NONE, // HANJA
|
|
KEY_KANJI = KEY_NONE, // KANJI
|
|
KEY_ESCAPE = XK_Escape, // ESCAPE
|
|
KEY_CONVERT = KEY_NONE, // CONVERT
|
|
KEY_NONCONVERT = KEY_NONE, // NONCONVERT
|
|
KEY_ACCEPT = KEY_NONE, // ACCEPT
|
|
KEY_MODECHANGE = KEY_NONE, // MODECHANGE
|
|
KEY_SPACE = XK_space,
|
|
KEY_PRIOR = XK_Prior,
|
|
KEY_NEXT = XK_Next,
|
|
KEY_END = XK_End,
|
|
KEY_HOME = XK_Home,
|
|
KEY_LEFT = XK_Left,
|
|
KEY_UP = XK_Up,
|
|
KEY_RIGHT = XK_Right,
|
|
KEY_DOWN = XK_Down,
|
|
KEY_SELECT = KEY_NONE, // SELECT
|
|
KEY_PRINT = XK_Print,
|
|
KEY_EXEC = XK_Execute, // KEY_EXECUTE is already defined in windows
|
|
KEY_SNAPSHOT = KEY_NONE, // SNAPSHOT
|
|
KEY_INSERT = XK_Insert,
|
|
KEY_DELETE = XK_Delete,
|
|
KEY_HELP = XK_Help,
|
|
KEY_0 = XK_0,
|
|
KEY_1 = XK_1,
|
|
KEY_2 = XK_2,
|
|
KEY_3 = XK_3,
|
|
KEY_4 = XK_4,
|
|
KEY_5 = XK_5,
|
|
KEY_6 = XK_6,
|
|
KEY_7 = XK_7,
|
|
KEY_8 = XK_8,
|
|
KEY_9 = XK_9,
|
|
KEY_A = XK_A,
|
|
KEY_B = XK_B,
|
|
KEY_C = XK_C,
|
|
KEY_D = XK_D,
|
|
KEY_E = XK_E,
|
|
KEY_F = XK_F,
|
|
KEY_G = XK_G,
|
|
KEY_H = XK_H,
|
|
KEY_I = XK_I,
|
|
KEY_J = XK_J,
|
|
KEY_K = XK_K,
|
|
KEY_L = XK_L,
|
|
KEY_M = XK_M,
|
|
KEY_N = XK_N,
|
|
KEY_O = XK_O,
|
|
KEY_P = XK_P,
|
|
KEY_Q = XK_Q,
|
|
KEY_R = XK_R,
|
|
KEY_S = XK_S,
|
|
KEY_T = XK_T,
|
|
KEY_U = XK_U,
|
|
KEY_V = XK_V,
|
|
KEY_W = XK_W,
|
|
KEY_X = XK_X,
|
|
KEY_Y = XK_Y,
|
|
KEY_Z = XK_Z,
|
|
KEY_LWIN = KEY_NONE, // LWIN
|
|
KEY_RWIN = KEY_NONE, // RWIN
|
|
KEY_APPS = KEY_NONE, // APPS
|
|
KEY_SLEEP = KEY_NONE, // SLEEP
|
|
KEY_NUMPAD0 = XK_KP_0,
|
|
KEY_NUMPAD1 = XK_KP_1,
|
|
KEY_NUMPAD2 = XK_KP_2,
|
|
KEY_NUMPAD3 = XK_KP_3,
|
|
KEY_NUMPAD4 = XK_KP_4,
|
|
KEY_NUMPAD5 = XK_KP_5,
|
|
KEY_NUMPAD6 = XK_KP_6,
|
|
KEY_NUMPAD7 = XK_KP_7,
|
|
KEY_NUMPAD8 = XK_KP_8,
|
|
KEY_NUMPAD9 = XK_KP_9,
|
|
KEY_MULTIPLY = XK_KP_Multiply,
|
|
KEY_ADD = XK_KP_Add,
|
|
KEY_SEPARATOR = XK_KP_Separator,
|
|
KEY_SUBTRACT = XK_KP_Subtract,
|
|
KEY_DECIMAL = XK_KP_Decimal,
|
|
KEY_DIVIDE = XK_KP_Divide,
|
|
KEY_F1 = XK_F1,
|
|
KEY_F2 = XK_F2,
|
|
KEY_F3 = XK_F3,
|
|
KEY_F4 = XK_F4,
|
|
KEY_F5 = XK_F5,
|
|
KEY_F6 = XK_F6,
|
|
KEY_F7 = XK_F7,
|
|
KEY_F8 = XK_F8,
|
|
KEY_F9 = XK_F9,
|
|
KEY_F10 = XK_F10,
|
|
KEY_F11 = XK_F11,
|
|
KEY_F12 = XK_F12,
|
|
KEY_F13 = XK_F13,
|
|
KEY_F14 = XK_F14,
|
|
KEY_F15 = XK_F15,
|
|
KEY_F16 = XK_F16,
|
|
KEY_F17 = XK_F17,
|
|
KEY_F18 = XK_F18,
|
|
KEY_F19 = XK_F19,
|
|
KEY_F20 = XK_F20,
|
|
KEY_F21 = XK_F21,
|
|
KEY_F22 = XK_F22,
|
|
KEY_F23 = XK_F23,
|
|
KEY_F24 = XK_F24,
|
|
KEY_NUMLOCK = XK_Num_Lock,
|
|
KEY_SCROLL = XK_Scroll_Lock,
|
|
KEY_LSHIFT = XK_Shift_L,
|
|
KEY_RSHIFT = XK_Shift_R,
|
|
KEY_LCONTROL = XK_Control_L,
|
|
KEY_RCONTROL = XK_Control_R,
|
|
KEY_LMENU = KEY_NONE, // LMENU
|
|
KEY_RMENU = KEY_NONE, // RMENU
|
|
KEY_OEM_1 = KEY_NONE, // OEM_1
|
|
KEY_OEM_2 = KEY_NONE, // OEM_2
|
|
KEY_OEM_3 = KEY_NONE, // OEM_3
|
|
KEY_OEM_4 = KEY_NONE, // OEM_4
|
|
KEY_OEM_5 = KEY_NONE, // OEM_5
|
|
KEY_OEM_6 = KEY_NONE, // OEM_6
|
|
KEY_OEM_7 = KEY_NONE, // OEM_7
|
|
KEY_OEM_8 = KEY_NONE, // OEM_8
|
|
KEY_PROCESSKEY = KEY_NONE, // PROCESSKEY
|
|
KEY_ATTN = KEY_NONE, // ATTN
|
|
KEY_CRSEL = KEY_NONE, // CRSEL
|
|
KEY_EXSEL = KEY_NONE, // EXSEL
|
|
KEY_EREOF = KEY_NONE, // EREOF
|
|
KEY_PLAY = KEY_NONE, // PLAY
|
|
KEY_ZOOM = KEY_NONE, // ZOOM
|
|
KEY_NONAME = KEY_NONE, // NONAME
|
|
KEY_PA1 = KEY_NONE, // PA1
|
|
KEY_OEM_CLEAR = KEY_NONE, // OEM_CLEAR
|
|
KEY_SLASH = XK_slash,
|
|
KEY_BACKSLASH = XK_backslash,
|
|
#endif
|
|
|
|
#if (_WIN32_WINNT >= 0x0500)
|
|
KEY_XBUTTON1 = VK_XBUTTON1,
|
|
KEY_XBUTTON2 = VK_XBUTTON2,
|
|
KEY_BROWSER_BACK = VK_BROWSER_BACK,
|
|
KEY_BROWSER_FORWARD = VK_BROWSER_FORWARD,
|
|
KEY_BROWSER_REFRESH = VK_BROWSER_REFRESH,
|
|
KEY_BROWSER_STOP = VK_BROWSER_STOP,
|
|
KEY_BROWSER_SEARCH = VK_BROWSER_SEARCH,
|
|
KEY_BROWSER_FAVORITES = VK_BROWSER_FAVORITES,
|
|
KEY_BROWSER_HOME = VK_BROWSER_HOME,
|
|
KEY_VOLUME_MUTE = VK_VOLUME_MUTE,
|
|
KEY_VOLUME_DOWN = VK_VOLUME_DOWN,
|
|
KEY_VOLUME_UP = VK_VOLUME_UP,
|
|
KEY_MEDIA_NEXT_TRACK = VK_MEDIA_NEXT_TRACK,
|
|
KEY_MEDIA_PREV_TRACK = VK_MEDIA_PREV_TRACK,
|
|
KEY_MEDIA_STOP = VK_MEDIA_STOP,
|
|
KEY_MEDIA_PLAY_PAUSE = VK_MEDIA_PLAY_PAUSE,
|
|
KEY_LAUNCH_MAIL = VK_LAUNCH_MAIL,
|
|
KEY_LAUNCH_MEDIA_SELECT = VK_LAUNCH_MEDIA_SELECT,
|
|
KEY_LAUNCH_APP1 = VK_LAUNCH_APP1,
|
|
KEY_LAUNCH_APP2 = VK_LAUNCH_APP2,
|
|
KEY_OEM_PLUS = VK_OEM_PLUS,
|
|
KEY_OEM_COMMA = VK_OEM_COMMA,
|
|
KEY_OEM_MINUS = VK_OEM_MINUS,
|
|
KEY_OEM_PERIOD = VK_OEM_PERIOD,
|
|
KEY_OEM_102 = VK_OEM_102,
|
|
KEY_PACKET = VK_PACKET,
|
|
#elif defined(_WIN32) || defined(__linux__)
|
|
KEY_XBUTTON1 = KEY_NONE,
|
|
KEY_XBUTTON2 = KEY_NONE,
|
|
KEY_BROWSER_BACK = KEY_NONE,
|
|
KEY_BROWSER_FORWARD = KEY_NONE,
|
|
KEY_BROWSER_REFRESH = KEY_NONE,
|
|
KEY_BROWSER_STOP = KEY_NONE,
|
|
KEY_BROWSER_SEARCH = KEY_NONE,
|
|
KEY_BROWSER_FAVORITES = KEY_NONE,
|
|
KEY_BROWSER_HOME = KEY_NONE,
|
|
KEY_VOLUME_MUTE = KEY_NONE,
|
|
KEY_VOLUME_DOWN = KEY_NONE,
|
|
KEY_VOLUME_UP = KEY_NONE,
|
|
KEY_MEDIA_NEXT_TRACK = KEY_NONE,
|
|
KEY_MEDIA_PREV_TRACK = KEY_NONE,
|
|
KEY_MEDIA_STOP = KEY_NONE,
|
|
KEY_MEDIA_PLAY_PAUSE = KEY_NONE,
|
|
KEY_LAUNCH_MAIL = KEY_NONE,
|
|
KEY_LAUNCH_MEDIA_SELECT = KEY_NONE,
|
|
KEY_LAUNCH_APP1 = KEY_NONE,
|
|
KEY_LAUNCH_APP2 = KEY_NONE,
|
|
KEY_OEM_PLUS = KEY_NONE,
|
|
KEY_OEM_COMMA = KEY_NONE,
|
|
KEY_OEM_MINUS = KEY_NONE,
|
|
KEY_OEM_PERIOD = KEY_NONE,
|
|
KEY_OEM_102 = KEY_NONE,
|
|
KEY_PACKET = KEY_NONE,
|
|
#elif defined(_NDS) || defined(_3DS)
|
|
KEY_XBUTTON1 = DSKEY_XBUTTON1,
|
|
KEY_XBUTTON2 = DSKEY_XBUTTON2,
|
|
KEY_BROWSER_BACK = DSKEY_BROWSER_BACK,
|
|
KEY_BROWSER_FORWARD = DSKEY_BROWSER_FORWARD,
|
|
KEY_BROWSER_REFRESH = DSKEY_BROWSER_REFRESH,
|
|
KEY_BROWSER_STOP = DSKEY_BROWSER_STOP,
|
|
KEY_BROWSER_SEARCH = DSKEY_BROWSER_SEARCH,
|
|
KEY_BROWSER_FAVORITES = DSKEY_BROWSER_FAVORITES,
|
|
KEY_BROWSER_HOME = DSKEY_BROWSER_HOME,
|
|
KEY_VOLUME_MUTE = DSKEY_VOLUME_MUTE,
|
|
KEY_VOLUME_DOWN = DSKEY_VOLUME_DOWN,
|
|
KEY_VOLUME_UP = DSKEY_VOLUME_UP,
|
|
KEY_MEDIA_NEXT_TRACK = DSKEY_MEDIA_NEXT_TRACK,
|
|
KEY_MEDIA_PREV_TRACK = DSKEY_MEDIA_PREV_TRACK,
|
|
KEY_MEDIA_STOP = DSKEY_MEDIA_STOP,
|
|
KEY_MEDIA_PLAY_PAUSE = DSKEY_MEDIA_PLAY_PAUSE,
|
|
KEY_LAUNCH_MAIL = DSKEY_LAUNCH_MAIL,
|
|
KEY_LAUNCH_MEDIA_SELECT = DSKEY_LAUNCH_MEDIA_SELECT,
|
|
KEY_LAUNCH_APP1 = DSKEY_LAUNCH_APP1,
|
|
KEY_LAUNCH_APP2 = DSKEY_LAUNCH_APP2,
|
|
KEY_OEM_PLUS = DSKEY_OEM_PLUS,
|
|
KEY_OEM_COMMA = DSKEY_OEM_COMMA,
|
|
KEY_OEM_MINUS = DSKEY_OEM_MINUS,
|
|
KEY_OEM_PERIOD = DSKEY_OEM_PERIOD,
|
|
KEY_OEM_102 = DSKEY_OEM_102,
|
|
KEY_PACKET = DSKEY_PACKET,
|
|
#endif
|
|
|
|
};
|
|
|
|
enum {
|
|
|
|
JOY = 0x100,
|
|
// Check key.cpp for final JOY value
|
|
JOY_MAX = JOY + 31,
|
|
|
|
JOY_HAT,
|
|
JOY_HAT_UP = JOY_HAT,
|
|
JOY_HAT_DOWN,
|
|
JOY_HAT_LEFT,
|
|
JOY_HAT_RIGHT,
|
|
JOY_HAT_MAX = JOY_HAT_RIGHT,
|
|
|
|
JOY_AXIS1,
|
|
JOY_AXIS_Y_MINUS = JOY_AXIS1,
|
|
JOY_AXIS_Y_PLUS,
|
|
JOY_AXIS_X_MINUS,
|
|
JOY_AXIS_X_PLUS,
|
|
JOY_AXIS1_MAX = JOY_AXIS_X_PLUS,
|
|
|
|
JOY_AXIS2,
|
|
JOY_AXIS_RX_MINUS = JOY_AXIS2,
|
|
JOY_AXIS_RX_PLUS,
|
|
JOY_AXIS_Z_MINUS,
|
|
JOY_AXIS_Z_PLUS,
|
|
JOY_AXIS2_MAX= JOY_AXIS_Z_PLUS,
|
|
|
|
JOY_AXIS3,
|
|
JOY_AXIS_RZ_MINUS = JOY_AXIS3,
|
|
JOY_AXIS_RZ_PLUS,
|
|
JOY_AXIS_RY_MINUS,
|
|
JOY_AXIS_RY_PLUS,
|
|
JOY_AXIS3_MAX = JOY_AXIS_RY_PLUS,
|
|
|
|
JOY_AXIS4,
|
|
JOY_AXIS_SL1_MINUS = JOY_AXIS4,
|
|
JOY_AXIS_SL1_PLUS,
|
|
JOY_AXIS_SL0_MINUS,
|
|
JOY_AXIS_SL0_PLUS,
|
|
JOY_AXIS4_MAX = JOY_AXIS_SL0_PLUS,
|
|
|
|
JOY_AXIS_WHL_MINUS,
|
|
JOY_AXIS_WHL_PLUS,
|
|
JOY_AXIS5_MAX = JOY_AXIS_WHL_PLUS,
|
|
VOL_UP,
|
|
VOL_DOWN,
|
|
|
|
};
|
|
|
|
const uint32_t ENTRY_MAX = UINT32_MAX; // utilized in D2K::Key::g_table
|
|
|
|
|
|
typedef struct DSKeyEntry final
|
|
{
|
|
uint32_t pc_value;
|
|
uint32_t ds_value;
|
|
} DSKeyEntry;
|
|
|
|
extern uint32_t ConvertDSToPCValue(uint32_t ds_value);
|
|
extern uint32_t ConvertPCToDSValue(uint32_t pc_value);
|
|
|
|
typedef struct KeyEntry final
|
|
{
|
|
uint32_t value;
|
|
const char* text;
|
|
} KeyEntry;
|
|
|
|
extern uint32_t GetNumber(const char* key);
|
|
extern const char* GetString(uint32_t key);
|
|
|
|
}} // namespace D2K::Key
|