|
|
|
/*==LICENSE==*
|
|
|
|
|
|
|
|
CyanWorlds.com Engine - MMOG client, server and tools
|
|
|
|
Copyright (C) 2011 Cyan Worlds, Inc.
|
|
|
|
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
|
|
(at your option) any later version.
|
|
|
|
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
GNU General Public License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
|
|
Additional permissions under GNU GPL version 3 section 7
|
|
|
|
|
|
|
|
If you modify this Program, or any covered work, by linking or
|
|
|
|
combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK,
|
|
|
|
NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent
|
|
|
|
JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK
|
|
|
|
(or a modified version of those libraries),
|
|
|
|
containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA,
|
|
|
|
PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG
|
|
|
|
JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the
|
|
|
|
licensors of this Program grant you additional
|
|
|
|
permission to convey the resulting work. Corresponding Source for a
|
|
|
|
non-source form of such a combination shall include the source code for
|
|
|
|
the parts of OpenSSL and IJG JPEG Library used as well as that of the covered
|
|
|
|
work.
|
|
|
|
|
|
|
|
You can contact Cyan Worlds, Inc. by email legal@cyan.com
|
|
|
|
or by snail mail at:
|
|
|
|
Cyan Worlds, Inc.
|
|
|
|
14617 N Newport Hwy
|
|
|
|
Mead, WA 99021
|
|
|
|
|
|
|
|
*==LICENSE==*/
|
|
|
|
#ifndef plKeyDef_inc
|
|
|
|
#define plKeyDef_inc
|
|
|
|
|
|
|
|
#if HS_BUILD_FOR_WIN32
|
|
|
|
|
|
|
|
#include "hsWindows.h" // FIXME: This gives me a sad.
|
|
|
|
|
|
|
|
#define VK_BACK_QUOTE 0xc0
|
|
|
|
// MinGW is missing these definitions:
|
|
|
|
#ifndef VK_OEM_PLUS
|
|
|
|
#define VK_OEM_PLUS 0xBB
|
|
|
|
#endif
|
|
|
|
#ifndef VK_OEM_COMMA
|
|
|
|
#define VK_OEM_COMMA 0xBC
|
|
|
|
#endif
|
|
|
|
#ifndef VK_OEM_MINUS
|
|
|
|
#define VK_OEM_MINUS 0xBD
|
|
|
|
#endif
|
|
|
|
#ifndef VK_OEM_PERIOD
|
|
|
|
#define VK_OEM_PERIOD 0xBE
|
|
|
|
#endif
|
|
|
|
|
|
|
|
//
|
|
|
|
// keyboard definitions:
|
|
|
|
//
|
|
|
|
// map O.S. specific keyboard defines
|
|
|
|
// to plasma key defines here...
|
|
|
|
//
|
|
|
|
//
|
|
|
|
|
|
|
|
// for win32:
|
|
|
|
|
|
|
|
enum plKeyDef
|
|
|
|
{
|
|
|
|
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_0 = 0x30,
|
|
|
|
KEY_1 = 0x31,
|
|
|
|
KEY_2 = 0x32,
|
|
|
|
KEY_3 = 0x33,
|
|
|
|
KEY_4 = 0x34,
|
|
|
|
KEY_5 = 0x35,
|
|
|
|
KEY_6 = 0x36,
|
|
|
|
KEY_7 = 0x37,
|
|
|
|
KEY_8 = 0x38,
|
|
|
|
KEY_9 = 0x39,
|
|
|
|
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_ESCAPE = VK_ESCAPE,
|
|
|
|
KEY_TAB = VK_TAB,
|
|
|
|
KEY_SHIFT = VK_SHIFT,
|
|
|
|
KEY_CTRL = VK_CONTROL,
|
|
|
|
KEY_ALT = VK_MENU,
|
|
|
|
KEY_UP = VK_UP,
|
|
|
|
KEY_DOWN = VK_DOWN,
|
|
|
|
KEY_LEFT = VK_LEFT,
|
|
|
|
KEY_RIGHT = VK_RIGHT,
|
|
|
|
KEY_BACKSPACE = VK_BACK,
|
|
|
|
KEY_ENTER = VK_RETURN,
|
|
|
|
KEY_PAUSE = VK_PAUSE,
|
|
|
|
KEY_CAPSLOCK = VK_CAPITAL,
|
|
|
|
KEY_PAGEUP = VK_PRIOR,
|
|
|
|
KEY_PAGEDOWN = VK_NEXT,
|
|
|
|
KEY_END = VK_END,
|
|
|
|
KEY_HOME = VK_HOME,
|
|
|
|
KEY_PRINTSCREEN = VK_SNAPSHOT,
|
|
|
|
KEY_INSERT = VK_INSERT,
|
|
|
|
KEY_DELETE = VK_DELETE,
|
|
|
|
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_NUMPAD_MULTIPLY = VK_MULTIPLY,
|
|
|
|
KEY_NUMPAD_ADD = VK_ADD,
|
|
|
|
KEY_NUMPAD_SUBTRACT = VK_SUBTRACT,
|
|
|
|
KEY_NUMPAD_PERIOD = VK_DECIMAL,
|
|
|
|
KEY_NUMPAD_DIVIDE = VK_DIVIDE,
|
|
|
|
KEY_SPACE = VK_SPACE,
|
|
|
|
KEY_COMMA = VK_OEM_COMMA,
|
|
|
|
KEY_PERIOD = VK_OEM_PERIOD,
|
|
|
|
KEY_DASH = VK_OEM_MINUS,
|
|
|
|
KEY_EQUAL = VK_OEM_PLUS,
|
|
|
|
|
|
|
|
// these are only good in the US of A...
|
|
|
|
KEY_SEMICOLON = VK_OEM_1,
|
|
|
|
KEY_SLASH = VK_OEM_2,
|
|
|
|
KEY_TILDE = VK_OEM_3,
|
|
|
|
KEY_LBRACKET = VK_OEM_4,
|
|
|
|
KEY_BACKSLASH = VK_OEM_5,
|
|
|
|
KEY_RBRACKET = VK_OEM_6,
|
|
|
|
KEY_QUOTE = VK_OEM_7,
|
|
|
|
KEY_UNMAPPED = 0xffffffff,
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#elif HS_BUILD_FOR_UNIX
|
|
|
|
|
|
|
|
/* This is a total hack (for now) */
|
|
|
|
enum plKeyDef
|
|
|
|
{
|
|
|
|
KEY_A = 0xffffffff,
|
|
|
|
KEY_B = 0xffffffff,
|
|
|
|
KEY_C = 0xffffffff,
|
|
|
|
KEY_D = 0xffffffff,
|
|
|
|
KEY_E = 0xffffffff,
|
|
|
|
KEY_F = 0xffffffff,
|
|
|
|
KEY_G = 0xffffffff,
|
|
|
|
KEY_H = 0xffffffff,
|
|
|
|
KEY_I = 0xffffffff,
|
|
|
|
KEY_J = 0xffffffff,
|
|
|
|
KEY_K = 0xffffffff,
|
|
|
|
KEY_L = 0xffffffff,
|
|
|
|
KEY_M = 0xffffffff,
|
|
|
|
KEY_N = 0xffffffff,
|
|
|
|
KEY_O = 0xffffffff,
|
|
|
|
KEY_P = 0xffffffff,
|
|
|
|
KEY_Q = 0xffffffff,
|
|
|
|
KEY_R = 0xffffffff,
|
|
|
|
KEY_S = 0xffffffff,
|
|
|
|
KEY_T = 0xffffffff,
|
|
|
|
KEY_U = 0xffffffff,
|
|
|
|
KEY_V = 0xffffffff,
|
|
|
|
KEY_W = 0xffffffff,
|
|
|
|
KEY_X = 0xffffffff,
|
|
|
|
KEY_Y = 0xffffffff,
|
|
|
|
KEY_Z = 0xffffffff,
|
|
|
|
KEY_0 = 0xffffffff,
|
|
|
|
KEY_1 = 0xffffffff,
|
|
|
|
KEY_2 = 0xffffffff,
|
|
|
|
KEY_3 = 0xffffffff,
|
|
|
|
KEY_4 = 0xffffffff,
|
|
|
|
KEY_5 = 0xffffffff,
|
|
|
|
KEY_6 = 0xffffffff,
|
|
|
|
KEY_7 = 0xffffffff,
|
|
|
|
KEY_8 = 0xffffffff,
|
|
|
|
KEY_9 = 0xffffffff,
|
|
|
|
KEY_F1 = 0xffffffff,
|
|
|
|
KEY_F2 = 0xffffffff,
|
|
|
|
KEY_F3 = 0xffffffff,
|
|
|
|
KEY_F4 = 0xffffffff,
|
|
|
|
KEY_F5 = 0xffffffff,
|
|
|
|
KEY_F6 = 0xffffffff,
|
|
|
|
KEY_F7 = 0xffffffff,
|
|
|
|
KEY_F8 = 0xffffffff,
|
|
|
|
KEY_F9 = 0xffffffff,
|
|
|
|
KEY_F10 = 0xffffffff,
|
|
|
|
KEY_F11 = 0xffffffff,
|
|
|
|
KEY_F12 = 0xffffffff,
|
|
|
|
KEY_ESCAPE = 0xffffffff,
|
|
|
|
KEY_TAB = 0xffffffff,
|
|
|
|
KEY_SHIFT = 0xffffffff,
|
|
|
|
KEY_CTRL = 0xffffffff,
|
|
|
|
KEY_ALT = 0xffffffff,
|
|
|
|
KEY_UP = 0xffffffff,
|
|
|
|
KEY_DOWN = 0xffffffff,
|
|
|
|
KEY_LEFT = 0xffffffff,
|
|
|
|
KEY_RIGHT = 0xffffffff,
|
|
|
|
KEY_BACKSPACE = 0xffffffff,
|
|
|
|
KEY_ENTER = 0xffffffff,
|
|
|
|
KEY_PAUSE = 0xffffffff,
|
|
|
|
KEY_CAPSLOCK = 0xffffffff,
|
|
|
|
KEY_PAGEUP = 0xffffffff,
|
|
|
|
KEY_PAGEDOWN = 0xffffffff,
|
|
|
|
KEY_END = 0xffffffff,
|
|
|
|
KEY_HOME = 0xffffffff,
|
|
|
|
KEY_PRINTSCREEN = 0xffffffff,
|
|
|
|
KEY_INSERT = 0xffffffff,
|
|
|
|
KEY_DELETE = 0xffffffff,
|
|
|
|
KEY_NUMPAD0 = 0xffffffff,
|
|
|
|
KEY_NUMPAD1 = 0xffffffff,
|
|
|
|
KEY_NUMPAD2 = 0xffffffff,
|
|
|
|
KEY_NUMPAD3 = 0xffffffff,
|
|
|
|
KEY_NUMPAD4 = 0xffffffff,
|
|
|
|
KEY_NUMPAD5 = 0xffffffff,
|
|
|
|
KEY_NUMPAD6 = 0xffffffff,
|
|
|
|
KEY_NUMPAD7 = 0xffffffff,
|
|
|
|
KEY_NUMPAD8 = 0xffffffff,
|
|
|
|
KEY_NUMPAD9 = 0xffffffff,
|
|
|
|
KEY_NUMPAD_MULTIPLY = 0xffffffff,
|
|
|
|
KEY_NUMPAD_ADD = 0xffffffff,
|
|
|
|
KEY_NUMPAD_SUBTRACT = 0xffffffff,
|
|
|
|
KEY_NUMPAD_PERIOD = 0xffffffff,
|
|
|
|
KEY_NUMPAD_DIVIDE = 0xffffffff,
|
|
|
|
KEY_SPACE = 0xffffffff,
|
|
|
|
KEY_COMMA = 0xffffffff,
|
|
|
|
KEY_PERIOD = 0xffffffff,
|
|
|
|
KEY_DASH = 0xffffffff,
|
|
|
|
KEY_EQUAL = 0xffffffff,
|
|
|
|
KEY_SEMICOLON = 0xffffffff,
|
|
|
|
KEY_SLASH = 0xffffffff,
|
|
|
|
KEY_TILDE = 0xffffffff,
|
|
|
|
KEY_LBRACKET = 0xffffffff,
|
|
|
|
KEY_BACKSLASH = 0xffffffff,
|
|
|
|
KEY_RBRACKET = 0xffffffff,
|
|
|
|
KEY_QUOTE = 0xffffffff,
|
|
|
|
KEY_UNMAPPED = 0xffffffff,
|
|
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif // plKeyDef_inc
|