-- Mouse buttons
MOUSE_LEFT   = 0;
MOUSE_RIGHT  = 1;
MOUSE_MIDDLE = 2;

-- Key codes (from OIS)
KEY_UNASSIGNED   = 0;
KEY_ESCAPE       = 1;
KEY_1            = 2;
KEY_2            = 3;
KEY_3            = 4;
KEY_4            = 5;
KEY_5            = 6;
KEY_6            = 7;
KEY_7            = 8;
KEY_8            = 9;
KEY_9            = 10;
KEY_0            = 11;
KEY_MINUS        = 12; -- '-' on main keyboard
KEY_EQUALS       = 13;
KEY_BACK         = 14; -- Backspace
KEY_TAB          = 15;
KEY_Q            = 16;
KEY_W            = 17;
KEY_E            = 18;
KEY_R            = 19;
KEY_T            = 20;
KEY_Y            = 21;
KEY_U            = 22;
KEY_I            = 23;
KEY_O            = 24;
KEY_P            = 25;
KEY_LBRACKET     = 26;
KEY_RBRACKET     = 27;
KEY_RETURN       = 28; -- Enter on main keyboard
KEY_LCONTROL     = 29;
KEY_A            = 30;
KEY_S            = 31;
KEY_D            = 32;
KEY_F            = 33;
KEY_G            = 34;
KEY_H            = 35;
KEY_J            = 36;
KEY_K            = 37;
KEY_L            = 38;
KEY_SEMICOLON    = 39;
KEY_APOSTROPHE   = 40;
KEY_GRAVE        = 41; -- Accent
KEY_LSHIFT       = 42;
KEY_BACKSLASH    = 43;
KEY_Z            = 44;
KEY_X            = 45;
KEY_C            = 46;
KEY_V            = 47;
KEY_B            = 48;
KEY_N            = 49;
KEY_M            = 50;
KEY_COMMA        = 51;
KEY_PERIOD       = 52; -- '.' on main keyboard
KEY_SLASH        = 53; -- '/' on main keyboard
KEY_RSHIFT       = 54;
KEY_MULTIPLY     = 55; -- '*' on numeric keypad
KEY_LMENU        = 56; -- Left Alt
KEY_SPACE        = 57;
KEY_CAPITAL      = 58;
KEY_F1           = 59;
KEY_F2           = 60;
KEY_F3           = 61;
KEY_F4           = 62;
KEY_F5           = 63;
KEY_F6           = 64;
KEY_F7           = 65;
KEY_F8           = 66;
KEY_F9           = 67;
KEY_F10          = 68;
KEY_NUMLOCK      = 69;
KEY_SCROLL       = 70; -- Scroll Lock
KEY_NUMPAD7      = 71;
KEY_NUMPAD8      = 72;
KEY_NUMPAD9      = 73;
KEY_SUBTRACT     = 74; -- '-' on numeric keypad
KEY_NUMPAD4      = 75;
KEY_NUMPAD5      = 76;
KEY_NUMPAD6      = 77;
KEY_ADD          = 78; -- '+' on numeric keypad
KEY_NUMPAD1      = 79;
KEY_NUMPAD2      = 80;
KEY_NUMPAD3      = 81;
KEY_NUMPAD0      = 82;
KEY_DECIMAL      = 83; -- '.' on numeric keypad
KEY_OEM_102      = 86; -- '<', '>' and '|' on UK/Germany keyboards
KEY_F11          = 87;
KEY_F12          = 88;
KEY_F13          = 100; -- (NEC PC98)
KEY_F14          = 101; -- (NEC PC98)
KEY_F15          = 102; -- (NEC PC98)
KEY_KANA         = 112; -- (Japanese keyboard)
KEY_ABNT_C1      = 115; -- '/' and '?' on Portugese (Brazilian) keyboards
KEY_CONVERT      = 121; -- (Japanese keyboard)
KEY_NOCONVERT    = 123; -- (Japanese keyboard)
KEY_YEN          = 125; -- (Japanese keyboard)
KEY_ABNT_C2      = 126; -- Numpad '.' on Portugese (Brazilian) keyboards
KEY_NUMPADEQUALS = 141; -- '=' on numeric keypad (NEC PC98)
KEY_PREVTRACK    = 144; -- Previous Track (KEY_CIRCUMFLEX on Japanese keyboard)
KEY_AT           = 145; -- (NEC PC98)
KEY_COLON        = 146; -- (NEC PC98)
KEY_UNDERLINE    = 147; -- (NEC PC98)
KEY_KANJI        = 148; -- (Japanese keyboard)
KEY_STOP         = 149; -- (NEC PC98)
KEY_AX           = 150; -- (Japan AX)
KEY_UNLABELED    = 151; -- (J3100)
KEY_NEXTTRACK    = 153; -- Next Track
KEY_NUMPADENTER  = 156; -- Enter on numeric keypad
KEY_RCONTROL     = 157;
KEY_MUTE         = 160; -- Mute
KEY_CALCULATOR   = 161; -- Calculator
KEY_PLAYPAUSE    = 162; -- Play / Pause
KEY_MEDIASTOP    = 164; -- Media Stop
KEY_VOLUMEDOWN   = 174; -- Volume -
KEY_VOLUMEUP     = 176; -- Volume +
KEY_WEBHOME      = 178; -- Web home
KEY_NUMPADCOMMA  = 179; -- ',' on numeric keypad (NEC PC98)
KEY_DIVIDE       = 181; -- '/' on numeric keypad
KEY_SYSRQ        = 183;
KEY_RMENU        = 184; -- Right Alt
KEY_PAUSE        = 197; -- Pause
KEY_HOME         = 199; -- Home on arrow keypad
KEY_UP           = 200; -- UpArrow on arrow keypad
KEY_PGUP         = 201; -- PgUp on arrow keypad
KEY_LEFT         = 203; -- LeftArrow on arrow keypad
KEY_RIGHT        = 205; -- RightArrow on arrow keypad
KEY_END          = 207; -- End on arrow keypad
KEY_DOWN         = 208; -- DownArrow on arrow keypad
KEY_PGDOWN       = 209; -- PgDn on arrow keypad
KEY_INSERT       = 210; -- Insert on arrow keypad
KEY_DELETE       = 211; -- Delete on arrow keypad
KEY_LWIN         = 219; -- Left Windows key
KEY_RWIN         = 220; -- Right Windows key
KEY_APPS         = 221; -- AppMenu key
