Module: Vigilem::Evdev::DOM::KeyValuesTables

Includes:
System::Input::KeysAndButtons
Included in:
InputEventConverter
Defined in:
lib/vigilem/evdev/dom/key_values_tables.rb

Constant Summary collapse

SpecialKeyValues =
Support::KeyMap.new({'Unidentified' => nil })
ModifierKeys =
Support::KeyMap.new.fuse!({
  :'?'              => 'Accel',
  KEY_LEFTALT       => 'Alt',
  KEY_RIGHTALT      => 'Alt'}, {
  :'?'              => 'AltGraph',
  KEY_CAPSLOCK      => 'CapsLock',
  'CtrlL_Lock'      => 'CapsLock',
  KEY_LEFTCTRL      => 'Control',
  KEY_RIGHTCTRL     => 'Control',
  'Control'         => 'Control'}, {
  :'?'              => ['Fn', 'FnLock', 'Hyper'],
  KEY_LEFTMETA      => 'Meta',
  KEY_RIGHTMETA     => 'Meta',
  KEY_NUMLOCK       => 'NumLock',
  KEY_LEFTMETA      => 'OS',
  KEY_SCROLLLOCK    => 'ScrollLock',
  KEY_LEFTSHIFT     => 'Shift',
  KEY_RIGHTSHIFT    => 'Shift'}, {
  :'?'              => ['Super', 'Symbol', 'SymbolLock']
})
WhitespaceKeys =
Support::KeyMap.new({
  KEY_ENTER        => 'Enter',
  'KP_Enter'       => 'Enter',
  :'?'             => 'Separator',
  'Tab'            => 'Tab',
  KEY_TAB          => 'Tab'
})
Support::KeyMap.new({
  KEY_DOWN     => 'ArrowDown',
  'Down'       => 'ArrowDown',
  'KP_2'       => 'ArrowDown',
  KEY_LEFT     => 'ArrowLeft',
  'Left'       => 'ArrowLeft',
  'KP_4'       => 'ArrowLeft',
  KEY_RIGHT    => 'ArrowRight',
  'Right'      => 'ArrowRight',
  'KP_6'       => 'ArrowRight',
  KEY_UP       => 'ArrowUp', 
  'Up'         => 'ArrowUp', 
  'KP_8'       => 'ArrowUp', 
  KEY_END      => 'End',
  'KP_1'       => 'End',
  KEY_HOME     => 'Home',
  'KP_7'       => 'Home',
  KEY_PAGEDOWN => 'PageDown',
  'KP_3'       => 'PageDown',
  KEY_PAGEUP   => 'PageUp',
  'KP_9'       => 'PageUp'
})
EditingKeys =
Support::KeyMap.new.fuse!({
  KEY_BACKSPACE => 'Backspace',
  KEY_CLEAR     => 'Clear', 
  KEY_COPY      => 'Copy', 
  :'?'          => 'CrSel', 
  KEY_CUT       => 'Cut',
  KEY_DELETE    => 'Delete'}, {
  :'?'          => ['EraseEof', 'ExSel'],
  KEY_INSERT    => 'Insert',
  KEY_PASTE     => 'Paste', 
  KEY_REDO      => 'Redo', 
  KEY_UNDO      => 'Undo'
})
UIKeys =
Support::KeyMap.new.fuse!({
  :'?'        => 'Accept',
  KEY_AGAIN   => 'Again'}, {
  :'?'        => 'Attn',
  KEY_CANCEL  => 'Cancel',
  KEY_COMPOSE => 'ContextMenu',
  KEY_ESC     => 'Escape'}, {
  :'?'        => 'Execute',
  KEY_FIND    => 'Find',
  KEY_HELP    => 'Help',
  KEY_PAUSE   => 'Pause',
  KEY_PLAY    => 'Play',
  KEY_PROPS   => 'Props',
  KEY_SELECT  => 'Select',
  KEY_ZOOMIN  => 'ZoomIn',
  KEY_ZOOMOUT => 'ZoomOut'
})
DeviceKeys =
Support::KeyMap.new.fuse!({
  :'?'                => ['BrightnessDown', 'BrightnessUp'],
  KEY_CAMERA          => 'Camera',
  KEY_EJECTCD         => 'Eject', 
  KEY_EJECTCLOSECD    => 'Eject'}, {
  :'?'                => ['LogOff', 'Power', 'PowerOff'],
  KEY_PRINT           => 'PrintScreen'}, {
  :'?'                => ['Hibernate', 'Standby', 'WakeUp']
})
IMEandCompositionKeys =
Support::KeyMap.new.fuse!({
  :'?'                         => ['AllCandidates', 'Alphanumeric', 
                                                      'CodeInput'],
  KEY_COMPOSE                  => 'Compose'}, {
  :'?'                         => ['Convert', 'Dead', 'FinalMode', 
                                        'GroupFirst', 'GroupLast'],
  KEY_KBDINPUTASSIST_NEXTGROUP => 'GroupNext',
  KEY_KBDINPUTASSIST_PREVGROUP => 'GroupPrevious',
  KEY_MODE                     => 'ModeChange'}, {
  :'?'                         => ['NextCandidate', 'NonConvert', 
                                    'PreviousCandidate', 'Process', 
                                                  'SingleCandidate']
})
KeysspecifictoKoreankeyboards =
Support::KeyMap.new.fuse!({
  KEY_HANGEUL => 'HangulMode',
  KEY_HANJA   => 'HanjaMode',
  :'?'        => 'JunjaMode'
})
KeysspecifictoJapanesekeyboards =
Support::KeyMap.new.fuse!({
  :'?'                  => ['Eisu', 'Hankaku'],
  KEY_HIRAGANA          => 'Hiragana',
  KEY_KATAKANAHIRAGANA  => 'HiraganaKatakana'}, {
  :'?'                  => ['KanaMode', 'KanjiMode'],
  KEY_KATAKANA          => 'Katakana'}, {
  :'?'                  => ['Romaji', 'Zenkaku'],
  KEY_ZENKAKUHANKAKU    => 'ZenkakuHankaku'
})
General_PurposeFunctionKeys =
Support::KeyMap.new({
  KEY_F1  => 'F1',
  KEY_F2  => 'F2',
  KEY_F3  => 'F3',
  KEY_F4  => 'F4',
  KEY_F5  => 'F5',
  KEY_F6  => 'F6',
  KEY_F7  => 'F7',
  KEY_F8  => 'F8',
  KEY_F9  => 'F9',
  KEY_F10 => 'F10',
  KEY_F11 => 'F11',
  KEY_F12 => 'F12',
  :'?'    => ['Soft1', 'Soft2', 'Soft3', 'Soft4']
})
MultimediaKeys =
Support::KeyMap.new.fuse!({
  KEY_CLOSECD         => 'Close',
  KEY_EJECTCLOSECD    => 'Close', 
  KEY_FORWARDMAIL     => 'MailForward', 
  KEY_REPLY           => 'MailReply', 
  :'?'                => 'MailSend'}, {
  KEY_PLAYPAUSE       => 'MediaPlayPause', 
  :'?'                => 'MediaSelect', #too many option need to test
  KEY_STOPCD          => 'MediaStop', 
  KEY_NEXTSONG        => 'MediaTrackNext', 
  KEY_PREVIOUSSONG    => 'MediaTrackPrevious',
  KEY_NEW             => 'New', 
  KEY_OPEN            => 'Open',
  KEY_PRINT           => 'Print',
  KEY_SAVE            => 'Save',
  KEY_SPELLCHECK      => 'SpellCheck',
  KEY_VOLUMEDOWN      => 'VolumeDown', 
  KEY_VOLUMEUP        => 'VolumeUp',
  KEY_MUTE            => 'VolumeMute'
})
ApplicationKeys =
Support::KeyMap.new({
  KEY_CALC          => 'LaunchCalculator',
  KEY_CALENDAR      => 'LaunchCalendar',
  KEY_MAIL          => 'LaunchMail', 
  KEY_PLAYER        => ['LaunchMediaPlayer', 'LaunchMusicPlayer'],
  KEY_PC            => 'LaunchMyComputer',
  KEY_COFFEE        => 'LaunchScreenSaver', 
  KEY_SPREADSHEET   => 'LaunchSpreadsheet',
  KEY_WWW           => 'LaunchWebBrowser', 
  :'?'              => 'LaunchWebCam', #how's this differ from KEY_CAMERA?
  KEY_WORDPROCESSOR => 'LaunchWordProcessor'
})
BrowserKeys =
Support::KeyMap.new({
  :'?' => ['BrowserBack','BrowserFavorites', 'BrowserForward', 
            'BrowserHome', 'BrowserRefresh', 'BrowserSearch', 
                                                 'BrowserStop']
})
MediaControllerKeys =
Support::KeyMap.new().fuse!({
  :'?'                  => ['AudioBalanceLeft', 'AudioBalanceRight']}, {
  KEY_BASSBOOST         => ['AudioBassBoostDown', 'AudioBassBoostUp'],
  :'?'                  => ['AudioFaderFront', 'AudioFaderRear', 
                            'AudioSurroundModeNext', 'AVRInput', 'AVRPower'],
  KEY_CHANNELDOWN       => 'ChannelDown',
  KEY_CHANNELUP         => 'ChannelUp',
  KEY_RED               => 'ColorF0Red',
  KEY_GREEN             => 'ColorF1Green',
  KEY_YELLOW            => 'ColorF2Yellow',
  KEY_BLUE              => 'ColorF3Blue'}, {
  :'?'                  => ['ColorF4Grey', 'ColorF5Brown', 'ClosedCaptionToggle', 
                            'Dimmer', 'DisplaySwap', 'Exit', 
                            'FavoriteClear0', 'FavoriteClear1', 
                            'FavoriteClear2', 'FavoriteClear3', 
                            'FavoriteRecall0', 'FavoriteRecall1', 
                            'FavoriteRecall2', 'FavoriteRecall3', 
                            'FavoriteStore0', 'FavoriteStore1', 
                            'FavoriteStore2', 'FavoriteStore3', 
                            'Guide', 'GuideNextDay', 'GuidePreviousDay', 
                            'Info',   'InstantReplay', 'Link', 
                            'ListProgram', 'LiveContent', 'Lock', 
                            'MediaApps', 'MediaFastForward', 'MediaLast', 
                            'pMediaPause', 'MediaPlay', 'MediaRecord'],
  KEY_REWIND            =>  'MediaRewind'}, {
  :'?'                  =>  ['MediaSkip', 'NextFavoriteChannel', 
                            'NextUserProfile', 'OnDemand', 'PinPDown', 
                            'PinPMove', 'PinPToggle', 'PinPUp', 
                            'PlaySpeedDown', 'PlaySpeedReset', 
                            'PlaySpeedUp', 'RandomToggle', 'RcLowBattery', 
                            'RecordSpeedNext', 'RfBypass', 
                            'ScanChannelsToggle', 'ScreenModeNext', 
                            'Settings', 'SplitScreenToggle', 'STBInput', 
                            'STBPower', 'Subtitle', 'Teletext', 'TV', 
                            'TVInput', 'TVPower', 'VideoModeNext', 
                            'Wink', 'ZoomToggle', 'BrowserBack', 
                            'BrowserForward', 'ContextMenu', 'Eject', 
                            'End', 'Enter', 'Home', 'MediaPlayPause', 
                            'MediaStop', 'MediaNextTrack', 'MediaPreviousTrack', 
                            'Power', 'VolumeDown', 'VolumeUp', 'VolumeMute']
})

Constants included from System::Input::KeysAndButtons

System::Input::KeysAndButtons::BTN_0, System::Input::KeysAndButtons::BTN_1, System::Input::KeysAndButtons::BTN_2, System::Input::KeysAndButtons::BTN_3, System::Input::KeysAndButtons::BTN_4, System::Input::KeysAndButtons::BTN_5, System::Input::KeysAndButtons::BTN_6, System::Input::KeysAndButtons::BTN_7, System::Input::KeysAndButtons::BTN_8, System::Input::KeysAndButtons::BTN_9, System::Input::KeysAndButtons::BTN_A, System::Input::KeysAndButtons::BTN_B, System::Input::KeysAndButtons::BTN_BACK, System::Input::KeysAndButtons::BTN_BASE, System::Input::KeysAndButtons::BTN_BASE2, System::Input::KeysAndButtons::BTN_BASE3, System::Input::KeysAndButtons::BTN_BASE4, System::Input::KeysAndButtons::BTN_BASE5, System::Input::KeysAndButtons::BTN_BASE6, System::Input::KeysAndButtons::BTN_C, System::Input::KeysAndButtons::BTN_DEAD, System::Input::KeysAndButtons::BTN_DIGI, System::Input::KeysAndButtons::BTN_DPAD_DOWN, System::Input::KeysAndButtons::BTN_DPAD_LEFT, System::Input::KeysAndButtons::BTN_DPAD_RIGHT, System::Input::KeysAndButtons::BTN_DPAD_UP, System::Input::KeysAndButtons::BTN_EAST, System::Input::KeysAndButtons::BTN_EXTRA, System::Input::KeysAndButtons::BTN_FORWARD, System::Input::KeysAndButtons::BTN_GAMEPAD, System::Input::KeysAndButtons::BTN_GEAR_DOWN, System::Input::KeysAndButtons::BTN_GEAR_UP, System::Input::KeysAndButtons::BTN_JOYSTICK, System::Input::KeysAndButtons::BTN_LEFT, System::Input::KeysAndButtons::BTN_MIDDLE, System::Input::KeysAndButtons::BTN_MISC, System::Input::KeysAndButtons::BTN_MODE, System::Input::KeysAndButtons::BTN_MOUSE, System::Input::KeysAndButtons::BTN_NORTH, System::Input::KeysAndButtons::BTN_PINKIE, System::Input::KeysAndButtons::BTN_RIGHT, System::Input::KeysAndButtons::BTN_SELECT, System::Input::KeysAndButtons::BTN_SIDE, System::Input::KeysAndButtons::BTN_SOUTH, System::Input::KeysAndButtons::BTN_START, System::Input::KeysAndButtons::BTN_STYLUS, System::Input::KeysAndButtons::BTN_STYLUS2, System::Input::KeysAndButtons::BTN_TASK, System::Input::KeysAndButtons::BTN_THUMB, System::Input::KeysAndButtons::BTN_THUMB2, System::Input::KeysAndButtons::BTN_THUMBL, System::Input::KeysAndButtons::BTN_THUMBR, System::Input::KeysAndButtons::BTN_TL, System::Input::KeysAndButtons::BTN_TL2, System::Input::KeysAndButtons::BTN_TOOL_AIRBRUSH, System::Input::KeysAndButtons::BTN_TOOL_BRUSH, System::Input::KeysAndButtons::BTN_TOOL_DOUBLETAP, System::Input::KeysAndButtons::BTN_TOOL_FINGER, System::Input::KeysAndButtons::BTN_TOOL_LENS, System::Input::KeysAndButtons::BTN_TOOL_MOUSE, System::Input::KeysAndButtons::BTN_TOOL_PEN, System::Input::KeysAndButtons::BTN_TOOL_PENCIL, System::Input::KeysAndButtons::BTN_TOOL_QUADTAP, System::Input::KeysAndButtons::BTN_TOOL_QUINTTAP, System::Input::KeysAndButtons::BTN_TOOL_RUBBER, System::Input::KeysAndButtons::BTN_TOOL_TRIPLETAP, System::Input::KeysAndButtons::BTN_TOP, System::Input::KeysAndButtons::BTN_TOP2, System::Input::KeysAndButtons::BTN_TOUCH, System::Input::KeysAndButtons::BTN_TR, System::Input::KeysAndButtons::BTN_TR2, System::Input::KeysAndButtons::BTN_TRIGGER, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY1, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY10, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY11, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY12, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY13, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY14, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY15, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY16, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY17, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY18, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY19, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY2, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY20, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY21, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY22, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY23, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY24, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY25, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY26, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY27, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY28, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY29, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY3, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY30, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY31, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY32, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY33, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY34, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY35, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY36, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY37, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY38, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY39, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY4, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY40, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY5, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY6, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY7, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY8, System::Input::KeysAndButtons::BTN_TRIGGER_HAPPY9, System::Input::KeysAndButtons::BTN_WEST, System::Input::KeysAndButtons::BTN_WHEEL, System::Input::KeysAndButtons::BTN_X, System::Input::KeysAndButtons::BTN_Y, System::Input::KeysAndButtons::BTN_Z, System::Input::KeysAndButtons::KEY_0, System::Input::KeysAndButtons::KEY_1, System::Input::KeysAndButtons::KEY_102ND, System::Input::KeysAndButtons::KEY_10CHANNELSDOWN, System::Input::KeysAndButtons::KEY_10CHANNELSUP, System::Input::KeysAndButtons::KEY_2, System::Input::KeysAndButtons::KEY_3, System::Input::KeysAndButtons::KEY_4, System::Input::KeysAndButtons::KEY_5, System::Input::KeysAndButtons::KEY_6, System::Input::KeysAndButtons::KEY_7, System::Input::KeysAndButtons::KEY_8, System::Input::KeysAndButtons::KEY_9, System::Input::KeysAndButtons::KEY_A, System::Input::KeysAndButtons::KEY_AB, System::Input::KeysAndButtons::KEY_ADDRESSBOOK, System::Input::KeysAndButtons::KEY_AGAIN, System::Input::KeysAndButtons::KEY_ALS_TOGGLE, System::Input::KeysAndButtons::KEY_ALTERASE, System::Input::KeysAndButtons::KEY_ANGLE, System::Input::KeysAndButtons::KEY_APOSTROPHE, System::Input::KeysAndButtons::KEY_APPSELECT, System::Input::KeysAndButtons::KEY_ARCHIVE, System::Input::KeysAndButtons::KEY_ATTENDANT_OFF, System::Input::KeysAndButtons::KEY_ATTENDANT_ON, System::Input::KeysAndButtons::KEY_ATTENDANT_TOGGLE, System::Input::KeysAndButtons::KEY_AUDIO, System::Input::KeysAndButtons::KEY_AUX, System::Input::KeysAndButtons::KEY_B, System::Input::KeysAndButtons::KEY_BACK, System::Input::KeysAndButtons::KEY_BACKSLASH, System::Input::KeysAndButtons::KEY_BACKSPACE, System::Input::KeysAndButtons::KEY_BASSBOOST, System::Input::KeysAndButtons::KEY_BATTERY, System::Input::KeysAndButtons::KEY_BLUE, System::Input::KeysAndButtons::KEY_BLUETOOTH, System::Input::KeysAndButtons::KEY_BOOKMARKS, System::Input::KeysAndButtons::KEY_BREAK, System::Input::KeysAndButtons::KEY_BRIGHTNESSDOWN, System::Input::KeysAndButtons::KEY_BRIGHTNESSUP, System::Input::KeysAndButtons::KEY_BRIGHTNESS_AUTO, System::Input::KeysAndButtons::KEY_BRIGHTNESS_CYCLE, System::Input::KeysAndButtons::KEY_BRIGHTNESS_MAX, System::Input::KeysAndButtons::KEY_BRIGHTNESS_MIN, System::Input::KeysAndButtons::KEY_BRIGHTNESS_TOGGLE, System::Input::KeysAndButtons::KEY_BRIGHTNESS_ZERO, System::Input::KeysAndButtons::KEY_BRL_DOT1, System::Input::KeysAndButtons::KEY_BRL_DOT10, System::Input::KeysAndButtons::KEY_BRL_DOT2, System::Input::KeysAndButtons::KEY_BRL_DOT3, System::Input::KeysAndButtons::KEY_BRL_DOT4, System::Input::KeysAndButtons::KEY_BRL_DOT5, System::Input::KeysAndButtons::KEY_BRL_DOT6, System::Input::KeysAndButtons::KEY_BRL_DOT7, System::Input::KeysAndButtons::KEY_BRL_DOT8, System::Input::KeysAndButtons::KEY_BRL_DOT9, System::Input::KeysAndButtons::KEY_BUTTONCONFIG, System::Input::KeysAndButtons::KEY_C, System::Input::KeysAndButtons::KEY_CALC, System::Input::KeysAndButtons::KEY_CALENDAR, System::Input::KeysAndButtons::KEY_CAMERA, System::Input::KeysAndButtons::KEY_CAMERA_DOWN, System::Input::KeysAndButtons::KEY_CAMERA_FOCUS, System::Input::KeysAndButtons::KEY_CAMERA_LEFT, System::Input::KeysAndButtons::KEY_CAMERA_RIGHT, System::Input::KeysAndButtons::KEY_CAMERA_UP, System::Input::KeysAndButtons::KEY_CAMERA_ZOOMIN, System::Input::KeysAndButtons::KEY_CAMERA_ZOOMOUT, System::Input::KeysAndButtons::KEY_CANCEL, System::Input::KeysAndButtons::KEY_CAPSLOCK, System::Input::KeysAndButtons::KEY_CD, System::Input::KeysAndButtons::KEY_CHANNEL, System::Input::KeysAndButtons::KEY_CHANNELDOWN, System::Input::KeysAndButtons::KEY_CHANNELUP, System::Input::KeysAndButtons::KEY_CHAT, System::Input::KeysAndButtons::KEY_CLEAR, System::Input::KeysAndButtons::KEY_CLOSE, System::Input::KeysAndButtons::KEY_CLOSECD, System::Input::KeysAndButtons::KEY_CNT, System::Input::KeysAndButtons::KEY_COFFEE, System::Input::KeysAndButtons::KEY_COMMA, System::Input::KeysAndButtons::KEY_COMPOSE, System::Input::KeysAndButtons::KEY_COMPUTER, System::Input::KeysAndButtons::KEY_CONFIG, System::Input::KeysAndButtons::KEY_CONNECT, System::Input::KeysAndButtons::KEY_CONTEXT_MENU, System::Input::KeysAndButtons::KEY_CONTROLPANEL, System::Input::KeysAndButtons::KEY_COPY, System::Input::KeysAndButtons::KEY_CUT, System::Input::KeysAndButtons::KEY_CYCLEWINDOWS, System::Input::KeysAndButtons::KEY_D, System::Input::KeysAndButtons::KEY_DASHBOARD, System::Input::KeysAndButtons::KEY_DATABASE, System::Input::KeysAndButtons::KEY_DELETE, System::Input::KeysAndButtons::KEY_DELETEFILE, System::Input::KeysAndButtons::KEY_DEL_EOL, System::Input::KeysAndButtons::KEY_DEL_EOS, System::Input::KeysAndButtons::KEY_DEL_LINE, System::Input::KeysAndButtons::KEY_DIGITS, System::Input::KeysAndButtons::KEY_DIRECTION, System::Input::KeysAndButtons::KEY_DIRECTORY, System::Input::KeysAndButtons::KEY_DISPLAYTOGGLE, System::Input::KeysAndButtons::KEY_DISPLAY_OFF, System::Input::KeysAndButtons::KEY_DOCUMENTS, System::Input::KeysAndButtons::KEY_DOLLAR, System::Input::KeysAndButtons::KEY_DOT, System::Input::KeysAndButtons::KEY_DOWN, System::Input::KeysAndButtons::KEY_DVD, System::Input::KeysAndButtons::KEY_E, System::Input::KeysAndButtons::KEY_EDIT, System::Input::KeysAndButtons::KEY_EDITOR, System::Input::KeysAndButtons::KEY_EJECTCD, System::Input::KeysAndButtons::KEY_EJECTCLOSECD, System::Input::KeysAndButtons::KEY_EMAIL, System::Input::KeysAndButtons::KEY_END, System::Input::KeysAndButtons::KEY_ENTER, System::Input::KeysAndButtons::KEY_EPG, System::Input::KeysAndButtons::KEY_EQUAL, System::Input::KeysAndButtons::KEY_ESC, System::Input::KeysAndButtons::KEY_EURO, System::Input::KeysAndButtons::KEY_EXIT, System::Input::KeysAndButtons::KEY_F, System::Input::KeysAndButtons::KEY_F1, System::Input::KeysAndButtons::KEY_F10, System::Input::KeysAndButtons::KEY_F11, System::Input::KeysAndButtons::KEY_F12, System::Input::KeysAndButtons::KEY_F13, System::Input::KeysAndButtons::KEY_F14, System::Input::KeysAndButtons::KEY_F15, System::Input::KeysAndButtons::KEY_F16, System::Input::KeysAndButtons::KEY_F17, System::Input::KeysAndButtons::KEY_F18, System::Input::KeysAndButtons::KEY_F19, System::Input::KeysAndButtons::KEY_F2, System::Input::KeysAndButtons::KEY_F20, System::Input::KeysAndButtons::KEY_F21, System::Input::KeysAndButtons::KEY_F22, System::Input::KeysAndButtons::KEY_F23, System::Input::KeysAndButtons::KEY_F24, System::Input::KeysAndButtons::KEY_F3, System::Input::KeysAndButtons::KEY_F4, System::Input::KeysAndButtons::KEY_F5, System::Input::KeysAndButtons::KEY_F6, System::Input::KeysAndButtons::KEY_F7, System::Input::KeysAndButtons::KEY_F8, System::Input::KeysAndButtons::KEY_F9, System::Input::KeysAndButtons::KEY_FASTFORWARD, System::Input::KeysAndButtons::KEY_FAVORITES, System::Input::KeysAndButtons::KEY_FILE, System::Input::KeysAndButtons::KEY_FINANCE, System::Input::KeysAndButtons::KEY_FIND, System::Input::KeysAndButtons::KEY_FIRST, System::Input::KeysAndButtons::KEY_FN, System::Input::KeysAndButtons::KEY_FN_1, System::Input::KeysAndButtons::KEY_FN_2, System::Input::KeysAndButtons::KEY_FN_B, System::Input::KeysAndButtons::KEY_FN_D, System::Input::KeysAndButtons::KEY_FN_E, System::Input::KeysAndButtons::KEY_FN_ESC, System::Input::KeysAndButtons::KEY_FN_F, System::Input::KeysAndButtons::KEY_FN_F1, System::Input::KeysAndButtons::KEY_FN_F10, System::Input::KeysAndButtons::KEY_FN_F11, System::Input::KeysAndButtons::KEY_FN_F12, System::Input::KeysAndButtons::KEY_FN_F2, System::Input::KeysAndButtons::KEY_FN_F3, System::Input::KeysAndButtons::KEY_FN_F4, System::Input::KeysAndButtons::KEY_FN_F5, System::Input::KeysAndButtons::KEY_FN_F6, System::Input::KeysAndButtons::KEY_FN_F7, System::Input::KeysAndButtons::KEY_FN_F8, System::Input::KeysAndButtons::KEY_FN_F9, System::Input::KeysAndButtons::KEY_FN_S, System::Input::KeysAndButtons::KEY_FORWARD, System::Input::KeysAndButtons::KEY_FORWARDMAIL, System::Input::KeysAndButtons::KEY_FRAMEBACK, System::Input::KeysAndButtons::KEY_FRAMEFORWARD, System::Input::KeysAndButtons::KEY_FRONT, System::Input::KeysAndButtons::KEY_G, System::Input::KeysAndButtons::KEY_GAMES, System::Input::KeysAndButtons::KEY_GOTO, System::Input::KeysAndButtons::KEY_GRAPHICSEDITOR, System::Input::KeysAndButtons::KEY_GRAVE, System::Input::KeysAndButtons::KEY_GREEN, System::Input::KeysAndButtons::KEY_H, System::Input::KeysAndButtons::KEY_HANGEUL, System::Input::KeysAndButtons::KEY_HANGUEL, System::Input::KeysAndButtons::KEY_HANJA, System::Input::KeysAndButtons::KEY_HELP, System::Input::KeysAndButtons::KEY_HENKAN, System::Input::KeysAndButtons::KEY_HIRAGANA, System::Input::KeysAndButtons::KEY_HOME, System::Input::KeysAndButtons::KEY_HOMEPAGE, System::Input::KeysAndButtons::KEY_HP, System::Input::KeysAndButtons::KEY_I, System::Input::KeysAndButtons::KEY_IMAGES, System::Input::KeysAndButtons::KEY_INFO, System::Input::KeysAndButtons::KEY_INSERT, System::Input::KeysAndButtons::KEY_INS_LINE, System::Input::KeysAndButtons::KEY_ISO, System::Input::KeysAndButtons::KEY_J, System::Input::KeysAndButtons::KEY_JOURNAL, System::Input::KeysAndButtons::KEY_K, System::Input::KeysAndButtons::KEY_KATAKANA, System::Input::KeysAndButtons::KEY_KATAKANAHIRAGANA, System::Input::KeysAndButtons::KEY_KBDILLUMDOWN, System::Input::KeysAndButtons::KEY_KBDILLUMTOGGLE, System::Input::KeysAndButtons::KEY_KBDILLUMUP, System::Input::KeysAndButtons::KEY_KBDINPUTASSIST_ACCEPT, System::Input::KeysAndButtons::KEY_KBDINPUTASSIST_CANCEL, System::Input::KeysAndButtons::KEY_KBDINPUTASSIST_NEXT, System::Input::KeysAndButtons::KEY_KBDINPUTASSIST_NEXTGROUP, System::Input::KeysAndButtons::KEY_KBDINPUTASSIST_PREV, System::Input::KeysAndButtons::KEY_KBDINPUTASSIST_PREVGROUP, System::Input::KeysAndButtons::KEY_KEYBOARD, System::Input::KeysAndButtons::KEY_KP0, System::Input::KeysAndButtons::KEY_KP1, System::Input::KeysAndButtons::KEY_KP2, System::Input::KeysAndButtons::KEY_KP3, System::Input::KeysAndButtons::KEY_KP4, System::Input::KeysAndButtons::KEY_KP5, System::Input::KeysAndButtons::KEY_KP6, System::Input::KeysAndButtons::KEY_KP7, System::Input::KeysAndButtons::KEY_KP8, System::Input::KeysAndButtons::KEY_KP9, System::Input::KeysAndButtons::KEY_KPASTERISK, System::Input::KeysAndButtons::KEY_KPCOMMA, System::Input::KeysAndButtons::KEY_KPDOT, System::Input::KeysAndButtons::KEY_KPENTER, System::Input::KeysAndButtons::KEY_KPEQUAL, System::Input::KeysAndButtons::KEY_KPJPCOMMA, System::Input::KeysAndButtons::KEY_KPLEFTPAREN, System::Input::KeysAndButtons::KEY_KPMINUS, System::Input::KeysAndButtons::KEY_KPPLUS, System::Input::KeysAndButtons::KEY_KPPLUSMINUS, System::Input::KeysAndButtons::KEY_KPRIGHTPAREN, System::Input::KeysAndButtons::KEY_KPSLASH, System::Input::KeysAndButtons::KEY_L, System::Input::KeysAndButtons::KEY_LANGUAGE, System::Input::KeysAndButtons::KEY_LAST, System::Input::KeysAndButtons::KEY_LEFT, System::Input::KeysAndButtons::KEY_LEFTALT, System::Input::KeysAndButtons::KEY_LEFTBRACE, System::Input::KeysAndButtons::KEY_LEFTCTRL, System::Input::KeysAndButtons::KEY_LEFTMETA, System::Input::KeysAndButtons::KEY_LEFTSHIFT, System::Input::KeysAndButtons::KEY_LIGHTS_TOGGLE, System::Input::KeysAndButtons::KEY_LINEFEED, System::Input::KeysAndButtons::KEY_LIST, System::Input::KeysAndButtons::KEY_LOGOFF, System::Input::KeysAndButtons::KEY_M, System::Input::KeysAndButtons::KEY_MACRO, System::Input::KeysAndButtons::KEY_MAIL, System::Input::KeysAndButtons::KEY_MAX, System::Input::KeysAndButtons::KEY_MEDIA, System::Input::KeysAndButtons::KEY_MEDIA_REPEAT, System::Input::KeysAndButtons::KEY_MEMO, System::Input::KeysAndButtons::KEY_MENU, System::Input::KeysAndButtons::KEY_MESSENGER, System::Input::KeysAndButtons::KEY_MHP, System::Input::KeysAndButtons::KEY_MICMUTE, System::Input::KeysAndButtons::KEY_MINUS, System::Input::KeysAndButtons::KEY_MIN_INTERESTING, System::Input::KeysAndButtons::KEY_MODE, System::Input::KeysAndButtons::KEY_MOVE, System::Input::KeysAndButtons::KEY_MP3, System::Input::KeysAndButtons::KEY_MSDOS, System::Input::KeysAndButtons::KEY_MUHENKAN, System::Input::KeysAndButtons::KEY_MUTE, System::Input::KeysAndButtons::KEY_N, System::Input::KeysAndButtons::KEY_NEW, System::Input::KeysAndButtons::KEY_NEWS, System::Input::KeysAndButtons::KEY_NEXT, System::Input::KeysAndButtons::KEY_NEXTSONG, System::Input::KeysAndButtons::KEY_NUMERIC_0, System::Input::KeysAndButtons::KEY_NUMERIC_1, System::Input::KeysAndButtons::KEY_NUMERIC_2, System::Input::KeysAndButtons::KEY_NUMERIC_3, System::Input::KeysAndButtons::KEY_NUMERIC_4, System::Input::KeysAndButtons::KEY_NUMERIC_5, System::Input::KeysAndButtons::KEY_NUMERIC_6, System::Input::KeysAndButtons::KEY_NUMERIC_7, System::Input::KeysAndButtons::KEY_NUMERIC_8, System::Input::KeysAndButtons::KEY_NUMERIC_9, System::Input::KeysAndButtons::KEY_NUMERIC_POUND, System::Input::KeysAndButtons::KEY_NUMERIC_STAR, System::Input::KeysAndButtons::KEY_NUMLOCK, System::Input::KeysAndButtons::KEY_O, System::Input::KeysAndButtons::KEY_OK, System::Input::KeysAndButtons::KEY_OPEN, System::Input::KeysAndButtons::KEY_OPTION, System::Input::KeysAndButtons::KEY_P, System::Input::KeysAndButtons::KEY_PAGEDOWN, System::Input::KeysAndButtons::KEY_PAGEUP, System::Input::KeysAndButtons::KEY_PASTE, System::Input::KeysAndButtons::KEY_PAUSE, System::Input::KeysAndButtons::KEY_PAUSECD, System::Input::KeysAndButtons::KEY_PC, System::Input::KeysAndButtons::KEY_PHONE, System::Input::KeysAndButtons::KEY_PLAY, System::Input::KeysAndButtons::KEY_PLAYCD, System::Input::KeysAndButtons::KEY_PLAYER, System::Input::KeysAndButtons::KEY_PLAYPAUSE, System::Input::KeysAndButtons::KEY_POWER, System::Input::KeysAndButtons::KEY_POWER2, System::Input::KeysAndButtons::KEY_PRESENTATION, System::Input::KeysAndButtons::KEY_PREVIOUS, System::Input::KeysAndButtons::KEY_PREVIOUSSONG, System::Input::KeysAndButtons::KEY_PRINT, System::Input::KeysAndButtons::KEY_PROG1, System::Input::KeysAndButtons::KEY_PROG2, System::Input::KeysAndButtons::KEY_PROG3, System::Input::KeysAndButtons::KEY_PROG4, System::Input::KeysAndButtons::KEY_PROGRAM, System::Input::KeysAndButtons::KEY_PROPS, System::Input::KeysAndButtons::KEY_PVR, System::Input::KeysAndButtons::KEY_Q, System::Input::KeysAndButtons::KEY_QUESTION, System::Input::KeysAndButtons::KEY_R, System::Input::KeysAndButtons::KEY_RADIO, System::Input::KeysAndButtons::KEY_RECORD, System::Input::KeysAndButtons::KEY_RED, System::Input::KeysAndButtons::KEY_REDO, System::Input::KeysAndButtons::KEY_REFRESH, System::Input::KeysAndButtons::KEY_REPLY, System::Input::KeysAndButtons::KEY_RESERVED, System::Input::KeysAndButtons::KEY_RESTART, System::Input::KeysAndButtons::KEY_REWIND, System::Input::KeysAndButtons::KEY_RFKILL, System::Input::KeysAndButtons::KEY_RIGHT, System::Input::KeysAndButtons::KEY_RIGHTALT, System::Input::KeysAndButtons::KEY_RIGHTBRACE, System::Input::KeysAndButtons::KEY_RIGHTCTRL, System::Input::KeysAndButtons::KEY_RIGHTMETA, System::Input::KeysAndButtons::KEY_RIGHTSHIFT, System::Input::KeysAndButtons::KEY_RO, System::Input::KeysAndButtons::KEY_S, System::Input::KeysAndButtons::KEY_SAT, System::Input::KeysAndButtons::KEY_SAT2, System::Input::KeysAndButtons::KEY_SAVE, System::Input::KeysAndButtons::KEY_SCALE, System::Input::KeysAndButtons::KEY_SCREEN, System::Input::KeysAndButtons::KEY_SCREENLOCK, System::Input::KeysAndButtons::KEY_SCREENSAVER, System::Input::KeysAndButtons::KEY_SCROLLDOWN, System::Input::KeysAndButtons::KEY_SCROLLLOCK, System::Input::KeysAndButtons::KEY_SCROLLUP, System::Input::KeysAndButtons::KEY_SEARCH, System::Input::KeysAndButtons::KEY_SELECT, System::Input::KeysAndButtons::KEY_SEMICOLON, System::Input::KeysAndButtons::KEY_SEND, System::Input::KeysAndButtons::KEY_SENDFILE, System::Input::KeysAndButtons::KEY_SETUP, System::Input::KeysAndButtons::KEY_SHOP, System::Input::KeysAndButtons::KEY_SHUFFLE, System::Input::KeysAndButtons::KEY_SLASH, System::Input::KeysAndButtons::KEY_SLEEP, System::Input::KeysAndButtons::KEY_SLOW, System::Input::KeysAndButtons::KEY_SOUND, System::Input::KeysAndButtons::KEY_SPACE, System::Input::KeysAndButtons::KEY_SPELLCHECK, System::Input::KeysAndButtons::KEY_SPORT, System::Input::KeysAndButtons::KEY_SPREADSHEET, System::Input::KeysAndButtons::KEY_STOP, System::Input::KeysAndButtons::KEY_STOPCD, System::Input::KeysAndButtons::KEY_SUBTITLE, System::Input::KeysAndButtons::KEY_SUSPEND, System::Input::KeysAndButtons::KEY_SWITCHVIDEOMODE, System::Input::KeysAndButtons::KEY_SYSRQ, System::Input::KeysAndButtons::KEY_T, System::Input::KeysAndButtons::KEY_TAB, System::Input::KeysAndButtons::KEY_TAPE, System::Input::KeysAndButtons::KEY_TASKMANAGER, System::Input::KeysAndButtons::KEY_TEEN, System::Input::KeysAndButtons::KEY_TEXT, System::Input::KeysAndButtons::KEY_TIME, System::Input::KeysAndButtons::KEY_TITLE, System::Input::KeysAndButtons::KEY_TOUCHPAD_OFF, System::Input::KeysAndButtons::KEY_TOUCHPAD_ON, System::Input::KeysAndButtons::KEY_TOUCHPAD_TOGGLE, System::Input::KeysAndButtons::KEY_TUNER, System::Input::KeysAndButtons::KEY_TV, System::Input::KeysAndButtons::KEY_TV2, System::Input::KeysAndButtons::KEY_TWEN, System::Input::KeysAndButtons::KEY_U, System::Input::KeysAndButtons::KEY_UNDO, System::Input::KeysAndButtons::KEY_UNKNOWN, System::Input::KeysAndButtons::KEY_UP, System::Input::KeysAndButtons::KEY_UWB, System::Input::KeysAndButtons::KEY_V, System::Input::KeysAndButtons::KEY_VCR, System::Input::KeysAndButtons::KEY_VCR2, System::Input::KeysAndButtons::KEY_VENDOR, System::Input::KeysAndButtons::KEY_VIDEO, System::Input::KeysAndButtons::KEY_VIDEOPHONE, System::Input::KeysAndButtons::KEY_VIDEO_NEXT, System::Input::KeysAndButtons::KEY_VIDEO_PREV, System::Input::KeysAndButtons::KEY_VOICECOMMAND, System::Input::KeysAndButtons::KEY_VOICEMAIL, System::Input::KeysAndButtons::KEY_VOLUMEDOWN, System::Input::KeysAndButtons::KEY_VOLUMEUP, System::Input::KeysAndButtons::KEY_W, System::Input::KeysAndButtons::KEY_WAKEUP, System::Input::KeysAndButtons::KEY_WIMAX, System::Input::KeysAndButtons::KEY_WLAN, System::Input::KeysAndButtons::KEY_WORDPROCESSOR, System::Input::KeysAndButtons::KEY_WPS_BUTTON, System::Input::KeysAndButtons::KEY_WWAN, System::Input::KeysAndButtons::KEY_WWW, System::Input::KeysAndButtons::KEY_X, System::Input::KeysAndButtons::KEY_XFER, System::Input::KeysAndButtons::KEY_Y, System::Input::KeysAndButtons::KEY_YELLOW, System::Input::KeysAndButtons::KEY_YEN, System::Input::KeysAndButtons::KEY_Z, System::Input::KeysAndButtons::KEY_ZENKAKUHANKAKU, System::Input::KeysAndButtons::KEY_ZOOM, System::Input::KeysAndButtons::KEY_ZOOMIN, System::Input::KeysAndButtons::KEY_ZOOMOUT, System::Input::KeysAndButtons::KEY_ZOOMRESET