summaryrefslogtreecommitdiffstats
path: root/core/global_constants.cpp
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2014-02-09 22:10:30 -0300
committerJuan Linietsky <reduzio@gmail.com>2014-02-09 22:10:30 -0300
commit0b806ee0fc9097fa7bda7ac0109191c9c5e0a1ac (patch)
tree276c4d099e178eb67fbd14f61d77b05e3808e9e3 /core/global_constants.cpp
parent0e49da1687bc8192ed210947da52c9e5c5f301bb (diff)
downloadredot-engine-0b806ee0fc9097fa7bda7ac0109191c9c5e0a1ac.tar.gz
GODOT IS OPEN SOURCE
Diffstat (limited to 'core/global_constants.cpp')
-rw-r--r--core/global_constants.cpp516
1 files changed, 516 insertions, 0 deletions
diff --git a/core/global_constants.cpp b/core/global_constants.cpp
new file mode 100644
index 0000000000..efa72b6547
--- /dev/null
+++ b/core/global_constants.cpp
@@ -0,0 +1,516 @@
+/*************************************************************************/
+/* global_constants.cpp */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* http://www.godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
+/* */
+/* Permission is hereby granted, free of charge, to any person obtaining */
+/* a copy of this software and associated documentation files (the */
+/* "Software"), to deal in the Software without restriction, including */
+/* without limitation the rights to use, copy, modify, merge, publish, */
+/* distribute, sublicense, and/or sell copies of the Software, and to */
+/* permit persons to whom the Software is furnished to do so, subject to */
+/* the following conditions: */
+/* */
+/* The above copyright notice and this permission notice shall be */
+/* included in all copies or substantial portions of the Software. */
+/* */
+/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
+/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
+/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
+/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
+/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
+/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
+/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
+/*************************************************************************/
+#include "global_constants.h"
+#include "variant.h"
+#include "os/keyboard.h"
+#include "object.h"
+
+struct _GlobalConstant {
+
+ const char *name;
+ int value;
+};
+
+#define BIND_GLOBAL_CONSTANT(m_constant) {#m_constant,m_constant}
+
+
+static _GlobalConstant _global_constants[]={
+
+//{ KEY_BACKSPACE, VK_BACK },// (0x08) // backspace
+
+ BIND_GLOBAL_CONSTANT( MARGIN_LEFT ),
+ BIND_GLOBAL_CONSTANT( MARGIN_TOP ),
+ BIND_GLOBAL_CONSTANT( MARGIN_RIGHT ),
+ BIND_GLOBAL_CONSTANT( MARGIN_BOTTOM ),
+ BIND_GLOBAL_CONSTANT( VERTICAL ),
+ BIND_GLOBAL_CONSTANT( HORIZONTAL ),
+ BIND_GLOBAL_CONSTANT( HALIGN_LEFT ),
+ BIND_GLOBAL_CONSTANT( HALIGN_CENTER ),
+ BIND_GLOBAL_CONSTANT( HALIGN_RIGHT ),
+ BIND_GLOBAL_CONSTANT( VALIGN_TOP ),
+ BIND_GLOBAL_CONSTANT( VALIGN_CENTER ),
+ BIND_GLOBAL_CONSTANT( VALIGN_BOTTOM ),
+
+ // hueg list of keys
+ BIND_GLOBAL_CONSTANT( SPKEY ),
+
+ BIND_GLOBAL_CONSTANT( KEY_ESCAPE ),
+ BIND_GLOBAL_CONSTANT( KEY_TAB ),
+ BIND_GLOBAL_CONSTANT( KEY_BACKTAB ),
+ BIND_GLOBAL_CONSTANT( KEY_BACKSPACE ),
+ BIND_GLOBAL_CONSTANT( KEY_RETURN ),
+ BIND_GLOBAL_CONSTANT( KEY_ENTER ),
+ BIND_GLOBAL_CONSTANT( KEY_INSERT ),
+ BIND_GLOBAL_CONSTANT( KEY_DELETE ),
+ BIND_GLOBAL_CONSTANT( KEY_PAUSE ),
+ BIND_GLOBAL_CONSTANT( KEY_PRINT ),
+ BIND_GLOBAL_CONSTANT( KEY_SYSREQ ),
+ BIND_GLOBAL_CONSTANT( KEY_CLEAR ),
+ BIND_GLOBAL_CONSTANT( KEY_HOME ),
+ BIND_GLOBAL_CONSTANT( KEY_END ),
+ BIND_GLOBAL_CONSTANT( KEY_LEFT ),
+ BIND_GLOBAL_CONSTANT( KEY_UP ),
+ BIND_GLOBAL_CONSTANT( KEY_RIGHT ),
+ BIND_GLOBAL_CONSTANT( KEY_DOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_PAGEUP ),
+ BIND_GLOBAL_CONSTANT( KEY_PAGEDOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_SHIFT ),
+ BIND_GLOBAL_CONSTANT( KEY_CONTROL ),
+ BIND_GLOBAL_CONSTANT( KEY_META ),
+ BIND_GLOBAL_CONSTANT( KEY_ALT ),
+ BIND_GLOBAL_CONSTANT( KEY_CAPSLOCK ),
+ BIND_GLOBAL_CONSTANT( KEY_NUMLOCK ),
+ BIND_GLOBAL_CONSTANT( KEY_SCROLLLOCK ),
+ BIND_GLOBAL_CONSTANT( KEY_F1 ),
+ BIND_GLOBAL_CONSTANT( KEY_F2 ),
+ BIND_GLOBAL_CONSTANT( KEY_F3 ),
+ BIND_GLOBAL_CONSTANT( KEY_F4 ),
+ BIND_GLOBAL_CONSTANT( KEY_F5 ),
+ BIND_GLOBAL_CONSTANT( KEY_F6 ),
+ BIND_GLOBAL_CONSTANT( KEY_F7 ),
+ BIND_GLOBAL_CONSTANT( KEY_F8 ),
+ BIND_GLOBAL_CONSTANT( KEY_F9 ),
+ BIND_GLOBAL_CONSTANT( KEY_F10 ),
+ BIND_GLOBAL_CONSTANT( KEY_F11 ),
+ BIND_GLOBAL_CONSTANT( KEY_F12 ),
+ BIND_GLOBAL_CONSTANT( KEY_F13 ),
+ BIND_GLOBAL_CONSTANT( KEY_F14 ),
+ BIND_GLOBAL_CONSTANT( KEY_F15 ),
+ BIND_GLOBAL_CONSTANT( KEY_F16 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_ENTER ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_MULTIPLY ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_DIVIDE ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_SUBSTRACT ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_PERIOD ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_ADD ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_0 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_1 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_2 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_3 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_4 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_5 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_6 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_7 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_8 ),
+ BIND_GLOBAL_CONSTANT( KEY_KP_9 ),
+ BIND_GLOBAL_CONSTANT( KEY_SUPER_L ),
+ BIND_GLOBAL_CONSTANT( KEY_SUPER_R ),
+ BIND_GLOBAL_CONSTANT( KEY_MENU ),
+ BIND_GLOBAL_CONSTANT( KEY_HYPER_L ),
+ BIND_GLOBAL_CONSTANT( KEY_HYPER_R ),
+ BIND_GLOBAL_CONSTANT( KEY_HELP ),
+ BIND_GLOBAL_CONSTANT( KEY_DIRECTION_L ),
+ BIND_GLOBAL_CONSTANT( KEY_DIRECTION_R ),
+ BIND_GLOBAL_CONSTANT( KEY_BACK ),
+ BIND_GLOBAL_CONSTANT( KEY_FORWARD ),
+ BIND_GLOBAL_CONSTANT( KEY_STOP ),
+ BIND_GLOBAL_CONSTANT( KEY_REFRESH ),
+ BIND_GLOBAL_CONSTANT( KEY_VOLUMEDOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_VOLUMEMUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_VOLUMEUP ),
+ BIND_GLOBAL_CONSTANT( KEY_BASSBOOST ),
+ BIND_GLOBAL_CONSTANT( KEY_BASSUP ),
+ BIND_GLOBAL_CONSTANT( KEY_BASSDOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_TREBLEUP ),
+ BIND_GLOBAL_CONSTANT( KEY_TREBLEDOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_MEDIAPLAY ),
+ BIND_GLOBAL_CONSTANT( KEY_MEDIASTOP ),
+ BIND_GLOBAL_CONSTANT( KEY_MEDIAPREVIOUS ),
+ BIND_GLOBAL_CONSTANT( KEY_MEDIANEXT ),
+ BIND_GLOBAL_CONSTANT( KEY_MEDIARECORD ),
+ BIND_GLOBAL_CONSTANT( KEY_HOMEPAGE ),
+ BIND_GLOBAL_CONSTANT( KEY_FAVORITES ),
+ BIND_GLOBAL_CONSTANT( KEY_SEARCH ),
+ BIND_GLOBAL_CONSTANT( KEY_STANDBY ),
+ BIND_GLOBAL_CONSTANT( KEY_OPENURL ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHMAIL ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHMEDIA ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH0 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH1 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH2 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH3 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH4 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH5 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH6 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH7 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH8 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCH9 ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHA ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHB ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHC ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHD ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHE ),
+ BIND_GLOBAL_CONSTANT( KEY_LAUNCHF ),
+
+ BIND_GLOBAL_CONSTANT( KEY_UNKNOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_SPACE ),
+ BIND_GLOBAL_CONSTANT( KEY_EXCLAM ),
+ BIND_GLOBAL_CONSTANT( KEY_QUOTEDBL ),
+ BIND_GLOBAL_CONSTANT( KEY_NUMBERSIGN ),
+ BIND_GLOBAL_CONSTANT( KEY_DOLLAR ),
+ BIND_GLOBAL_CONSTANT( KEY_PERCENT ),
+ BIND_GLOBAL_CONSTANT( KEY_AMPERSAND ),
+ BIND_GLOBAL_CONSTANT( KEY_APOSTROPHE ),
+ BIND_GLOBAL_CONSTANT( KEY_PARENLEFT ),
+ BIND_GLOBAL_CONSTANT( KEY_PARENRIGHT ),
+ BIND_GLOBAL_CONSTANT( KEY_ASTERISK ),
+ BIND_GLOBAL_CONSTANT( KEY_PLUS ),
+ BIND_GLOBAL_CONSTANT( KEY_COMMA ),
+ BIND_GLOBAL_CONSTANT( KEY_MINUS ),
+ BIND_GLOBAL_CONSTANT( KEY_PERIOD ),
+ BIND_GLOBAL_CONSTANT( KEY_SLASH ),
+ BIND_GLOBAL_CONSTANT( KEY_0 ),
+ BIND_GLOBAL_CONSTANT( KEY_1 ),
+ BIND_GLOBAL_CONSTANT( KEY_2 ),
+ BIND_GLOBAL_CONSTANT( KEY_3 ),
+ BIND_GLOBAL_CONSTANT( KEY_4 ),
+ BIND_GLOBAL_CONSTANT( KEY_5 ),
+ BIND_GLOBAL_CONSTANT( KEY_6 ),
+ BIND_GLOBAL_CONSTANT( KEY_7 ),
+ BIND_GLOBAL_CONSTANT( KEY_8 ),
+ BIND_GLOBAL_CONSTANT( KEY_9 ),
+ BIND_GLOBAL_CONSTANT( KEY_COLON ),
+ BIND_GLOBAL_CONSTANT( KEY_SEMICOLON ),
+ BIND_GLOBAL_CONSTANT( KEY_LESS ),
+ BIND_GLOBAL_CONSTANT( KEY_EQUAL ),
+ BIND_GLOBAL_CONSTANT( KEY_GREATER ),
+ BIND_GLOBAL_CONSTANT( KEY_QUESTION ),
+ BIND_GLOBAL_CONSTANT( KEY_AT ),
+ BIND_GLOBAL_CONSTANT( KEY_A ),
+ BIND_GLOBAL_CONSTANT( KEY_B ),
+ BIND_GLOBAL_CONSTANT( KEY_C ),
+ BIND_GLOBAL_CONSTANT( KEY_D ),
+ BIND_GLOBAL_CONSTANT( KEY_E ),
+ BIND_GLOBAL_CONSTANT( KEY_F ),
+ BIND_GLOBAL_CONSTANT( KEY_G ),
+ BIND_GLOBAL_CONSTANT( KEY_H ),
+ BIND_GLOBAL_CONSTANT( KEY_I ),
+ BIND_GLOBAL_CONSTANT( KEY_J ),
+ BIND_GLOBAL_CONSTANT( KEY_K ),
+ BIND_GLOBAL_CONSTANT( KEY_L ),
+ BIND_GLOBAL_CONSTANT( KEY_M ),
+ BIND_GLOBAL_CONSTANT( KEY_N ),
+ BIND_GLOBAL_CONSTANT( KEY_O ),
+ BIND_GLOBAL_CONSTANT( KEY_P ),
+ BIND_GLOBAL_CONSTANT( KEY_Q ),
+ BIND_GLOBAL_CONSTANT( KEY_R ),
+ BIND_GLOBAL_CONSTANT( KEY_S ),
+ BIND_GLOBAL_CONSTANT( KEY_T ),
+ BIND_GLOBAL_CONSTANT( KEY_U ),
+ BIND_GLOBAL_CONSTANT( KEY_V ),
+ BIND_GLOBAL_CONSTANT( KEY_W ),
+ BIND_GLOBAL_CONSTANT( KEY_X ),
+ BIND_GLOBAL_CONSTANT( KEY_Y ),
+ BIND_GLOBAL_CONSTANT( KEY_Z ),
+ BIND_GLOBAL_CONSTANT( KEY_BRACKETLEFT ),
+ BIND_GLOBAL_CONSTANT( KEY_BACKSLASH ),
+ BIND_GLOBAL_CONSTANT( KEY_BRACKETRIGHT ),
+ BIND_GLOBAL_CONSTANT( KEY_ASCIICIRCUM ),
+ BIND_GLOBAL_CONSTANT( KEY_UNDERSCORE ),
+ BIND_GLOBAL_CONSTANT( KEY_QUOTELEFT ),
+ BIND_GLOBAL_CONSTANT( KEY_BRACELEFT ),
+ BIND_GLOBAL_CONSTANT( KEY_BAR ),
+ BIND_GLOBAL_CONSTANT( KEY_BRACERIGHT ),
+ BIND_GLOBAL_CONSTANT( KEY_ASCIITILDE ),
+ BIND_GLOBAL_CONSTANT( KEY_NOBREAKSPACE ),
+ BIND_GLOBAL_CONSTANT( KEY_EXCLAMDOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_CENT ),
+ BIND_GLOBAL_CONSTANT( KEY_STERLING ),
+ BIND_GLOBAL_CONSTANT( KEY_CURRENCY ),
+ BIND_GLOBAL_CONSTANT( KEY_YEN ),
+ BIND_GLOBAL_CONSTANT( KEY_BROKENBAR ),
+ BIND_GLOBAL_CONSTANT( KEY_SECTION ),
+ BIND_GLOBAL_CONSTANT( KEY_DIAERESIS ),
+ BIND_GLOBAL_CONSTANT( KEY_COPYRIGHT ),
+ BIND_GLOBAL_CONSTANT( KEY_ORDFEMININE ),
+ BIND_GLOBAL_CONSTANT( KEY_GUILLEMOTLEFT ),
+ BIND_GLOBAL_CONSTANT( KEY_NOTSIGN ),
+ BIND_GLOBAL_CONSTANT( KEY_HYPHEN ),
+ BIND_GLOBAL_CONSTANT( KEY_REGISTERED ),
+ BIND_GLOBAL_CONSTANT( KEY_MACRON ),
+ BIND_GLOBAL_CONSTANT( KEY_DEGREE ),
+ BIND_GLOBAL_CONSTANT( KEY_PLUSMINUS ),
+ BIND_GLOBAL_CONSTANT( KEY_TWOSUPERIOR ),
+ BIND_GLOBAL_CONSTANT( KEY_THREESUPERIOR ),
+ BIND_GLOBAL_CONSTANT( KEY_ACUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_MU ),
+ BIND_GLOBAL_CONSTANT( KEY_PARAGRAPH ),
+ BIND_GLOBAL_CONSTANT( KEY_PERIODCENTERED ),
+ BIND_GLOBAL_CONSTANT( KEY_CEDILLA ),
+ BIND_GLOBAL_CONSTANT( KEY_ONESUPERIOR ),
+ BIND_GLOBAL_CONSTANT( KEY_MASCULINE ),
+ BIND_GLOBAL_CONSTANT( KEY_GUILLEMOTRIGHT ),
+ BIND_GLOBAL_CONSTANT( KEY_ONEQUARTER ),
+ BIND_GLOBAL_CONSTANT( KEY_ONEHALF ),
+ BIND_GLOBAL_CONSTANT( KEY_THREEQUARTERS ),
+ BIND_GLOBAL_CONSTANT( KEY_QUESTIONDOWN ),
+ BIND_GLOBAL_CONSTANT( KEY_AGRAVE ),
+ BIND_GLOBAL_CONSTANT( KEY_AACUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_ACIRCUMFLEX ),
+ BIND_GLOBAL_CONSTANT( KEY_ATILDE ),
+ BIND_GLOBAL_CONSTANT( KEY_ADIAERESIS ),
+ BIND_GLOBAL_CONSTANT( KEY_ARING ),
+ BIND_GLOBAL_CONSTANT( KEY_AE ),
+ BIND_GLOBAL_CONSTANT( KEY_CCEDILLA ),
+ BIND_GLOBAL_CONSTANT( KEY_EGRAVE ),
+ BIND_GLOBAL_CONSTANT( KEY_EACUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_ECIRCUMFLEX ),
+ BIND_GLOBAL_CONSTANT( KEY_EDIAERESIS ),
+ BIND_GLOBAL_CONSTANT( KEY_IGRAVE ),
+ BIND_GLOBAL_CONSTANT( KEY_IACUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_ICIRCUMFLEX ),
+ BIND_GLOBAL_CONSTANT( KEY_IDIAERESIS ),
+ BIND_GLOBAL_CONSTANT( KEY_ETH ),
+ BIND_GLOBAL_CONSTANT( KEY_NTILDE ),
+ BIND_GLOBAL_CONSTANT( KEY_OGRAVE ),
+ BIND_GLOBAL_CONSTANT( KEY_OACUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_OCIRCUMFLEX ),
+ BIND_GLOBAL_CONSTANT( KEY_OTILDE ),
+ BIND_GLOBAL_CONSTANT( KEY_ODIAERESIS ),
+ BIND_GLOBAL_CONSTANT( KEY_MULTIPLY ),
+ BIND_GLOBAL_CONSTANT( KEY_OOBLIQUE ),
+ BIND_GLOBAL_CONSTANT( KEY_UGRAVE ),
+ BIND_GLOBAL_CONSTANT( KEY_UACUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_UCIRCUMFLEX ),
+ BIND_GLOBAL_CONSTANT( KEY_UDIAERESIS ),
+ BIND_GLOBAL_CONSTANT( KEY_YACUTE ),
+ BIND_GLOBAL_CONSTANT( KEY_THORN ),
+ BIND_GLOBAL_CONSTANT( KEY_SSHARP ),
+
+ BIND_GLOBAL_CONSTANT( KEY_DIVISION ),
+ BIND_GLOBAL_CONSTANT( KEY_YDIAERESIS ),
+
+ BIND_GLOBAL_CONSTANT( KEY_CODE_MASK ),
+ BIND_GLOBAL_CONSTANT( KEY_MODIFIER_MASK ),
+
+ BIND_GLOBAL_CONSTANT( KEY_MASK_SHIFT ),
+ BIND_GLOBAL_CONSTANT( KEY_MASK_ALT ),
+ BIND_GLOBAL_CONSTANT( KEY_MASK_META ),
+ BIND_GLOBAL_CONSTANT( KEY_MASK_CTRL ),
+ BIND_GLOBAL_CONSTANT( KEY_MASK_KPAD ),
+ BIND_GLOBAL_CONSTANT( KEY_MASK_GROUP_SWITCH ),
+
+ // joysticks
+ BIND_GLOBAL_CONSTANT( BUTTON_LEFT ),
+ BIND_GLOBAL_CONSTANT( BUTTON_RIGHT ),
+ BIND_GLOBAL_CONSTANT( BUTTON_MIDDLE ),
+ BIND_GLOBAL_CONSTANT( BUTTON_WHEEL_UP ),
+ BIND_GLOBAL_CONSTANT( BUTTON_WHEEL_DOWN ),
+ BIND_GLOBAL_CONSTANT( BUTTON_MASK_LEFT ),
+ BIND_GLOBAL_CONSTANT( BUTTON_MASK_RIGHT ),
+ BIND_GLOBAL_CONSTANT( BUTTON_MASK_MIDDLE ),
+
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_0 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_1 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_2 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_3 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_4 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_5 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_6 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_7 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_8 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_9 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_10 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_11 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_12 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_13 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_14 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_15 ),
+ BIND_GLOBAL_CONSTANT( JOY_BUTTON_MAX ),
+
+ BIND_GLOBAL_CONSTANT( JOY_SNES_A ),
+ BIND_GLOBAL_CONSTANT( JOY_SNES_B ),
+ BIND_GLOBAL_CONSTANT( JOY_SNES_X ),
+ BIND_GLOBAL_CONSTANT( JOY_SNES_Y ),
+
+ BIND_GLOBAL_CONSTANT( JOY_SONY_CIRCLE ),
+ BIND_GLOBAL_CONSTANT( JOY_SONY_X ),
+ BIND_GLOBAL_CONSTANT( JOY_SONY_SQUARE ),
+ BIND_GLOBAL_CONSTANT( JOY_SONY_TRIANGLE ),
+
+ BIND_GLOBAL_CONSTANT( JOY_SEGA_B ),
+ BIND_GLOBAL_CONSTANT( JOY_SEGA_A ),
+ BIND_GLOBAL_CONSTANT( JOY_SEGA_X ),
+ BIND_GLOBAL_CONSTANT( JOY_SEGA_Y ),
+
+ BIND_GLOBAL_CONSTANT( JOY_XBOX_B ),
+ BIND_GLOBAL_CONSTANT( JOY_XBOX_A ),
+ BIND_GLOBAL_CONSTANT( JOY_XBOX_X ),
+ BIND_GLOBAL_CONSTANT( JOY_XBOX_Y ),
+
+ BIND_GLOBAL_CONSTANT( JOY_DS_A ),
+ BIND_GLOBAL_CONSTANT( JOY_DS_B ),
+ BIND_GLOBAL_CONSTANT( JOY_DS_X ),
+ BIND_GLOBAL_CONSTANT( JOY_DS_Y ),
+
+ BIND_GLOBAL_CONSTANT( JOY_SELECT ),
+ BIND_GLOBAL_CONSTANT( JOY_START ),
+ BIND_GLOBAL_CONSTANT( JOY_DPAD_UP ),
+ BIND_GLOBAL_CONSTANT( JOY_DPAD_DOWN ),
+ BIND_GLOBAL_CONSTANT( JOY_DPAD_LEFT ),
+ BIND_GLOBAL_CONSTANT( JOY_DPAD_RIGHT ),
+ BIND_GLOBAL_CONSTANT( JOY_L ),
+ BIND_GLOBAL_CONSTANT( JOY_L2 ),
+ BIND_GLOBAL_CONSTANT( JOY_L3 ),
+ BIND_GLOBAL_CONSTANT( JOY_R ),
+ BIND_GLOBAL_CONSTANT( JOY_R2 ),
+ BIND_GLOBAL_CONSTANT( JOY_R3 ),
+
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_0 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_1 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_2 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_3 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_4 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_5 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_6 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_7 ),
+ BIND_GLOBAL_CONSTANT( JOY_AXIS_MAX ),
+
+ BIND_GLOBAL_CONSTANT( JOY_ANALOG_0_X ),
+ BIND_GLOBAL_CONSTANT( JOY_ANALOG_0_Y ),
+
+ BIND_GLOBAL_CONSTANT( JOY_ANALOG_1_X ),
+ BIND_GLOBAL_CONSTANT( JOY_ANALOG_1_Y ),
+
+ BIND_GLOBAL_CONSTANT( JOY_ANALOG_2_X ),
+ BIND_GLOBAL_CONSTANT( JOY_ANALOG_2_Y ),
+
+
+ // error list
+
+ BIND_GLOBAL_CONSTANT( OK ),
+ BIND_GLOBAL_CONSTANT( FAILED ), ///< Generic fail error
+ BIND_GLOBAL_CONSTANT( ERR_UNAVAILABLE ), ///< What is requested is unsupported/unavailable
+ BIND_GLOBAL_CONSTANT( ERR_UNCONFIGURED ), ///< The object being used hasnt been properly set up yet
+ BIND_GLOBAL_CONSTANT( ERR_UNAUTHORIZED ), ///< Missing credentials for requested resource
+ BIND_GLOBAL_CONSTANT( ERR_PARAMETER_RANGE_ERROR ), ///< Parameter given out of range
+ BIND_GLOBAL_CONSTANT( ERR_OUT_OF_MEMORY ), ///< Out of memory
+ BIND_GLOBAL_CONSTANT( ERR_FILE_NOT_FOUND ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_BAD_DRIVE ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_BAD_PATH ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_NO_PERMISSION ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_ALREADY_IN_USE ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_CANT_OPEN ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_CANT_WRITE ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_CANT_READ ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_UNRECOGNIZED ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_CORRUPT ),
+ BIND_GLOBAL_CONSTANT( ERR_FILE_EOF ),
+ BIND_GLOBAL_CONSTANT( ERR_CANT_OPEN ), ///< Can't open a resource/socket/file
+ BIND_GLOBAL_CONSTANT( ERR_CANT_CREATE ),
+ BIND_GLOBAL_CONSTANT( ERROR_QUERY_FAILED ),
+ BIND_GLOBAL_CONSTANT( ERR_ALREADY_IN_USE ),
+ BIND_GLOBAL_CONSTANT( ERR_LOCKED ), ///< resource is locked
+ BIND_GLOBAL_CONSTANT( ERR_TIMEOUT ),
+ BIND_GLOBAL_CONSTANT( ERR_CANT_AQUIRE_RESOURCE ),
+ BIND_GLOBAL_CONSTANT( ERR_INVALID_DATA ), ///< Data passed is invalid
+ BIND_GLOBAL_CONSTANT( ERR_INVALID_PARAMETER ), ///< Parameter passed is invalid
+ BIND_GLOBAL_CONSTANT( ERR_ALREADY_EXISTS ), ///< When adding ), item already exists
+ BIND_GLOBAL_CONSTANT( ERR_DOES_NOT_EXIST ), ///< When retrieving/erasing ), it item does not exist
+ BIND_GLOBAL_CONSTANT( ERR_DATABASE_CANT_READ ), ///< database is full
+ BIND_GLOBAL_CONSTANT( ERR_DATABASE_CANT_WRITE ), ///< database is full
+ BIND_GLOBAL_CONSTANT( ERR_COMPILATION_FAILED ),
+ BIND_GLOBAL_CONSTANT( ERR_METHOD_NOT_FOUND ),
+ BIND_GLOBAL_CONSTANT( ERR_LINK_FAILED ),
+ BIND_GLOBAL_CONSTANT( ERR_SCRIPT_FAILED ),
+ BIND_GLOBAL_CONSTANT( ERR_CYCLIC_LINK ),
+ BIND_GLOBAL_CONSTANT( ERR_BUSY ),
+ BIND_GLOBAL_CONSTANT( ERR_HELP ), ///< user requested help!!
+ BIND_GLOBAL_CONSTANT( ERR_BUG ), ///< a bug in the software certainly happened ), due to a double check failing or unexpected behavior.
+ BIND_GLOBAL_CONSTANT( ERR_WTF ),
+
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_NONE ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_RANGE ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_EXP_RANGE ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_ENUM ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_LENGTH ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_FLAGS ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_FILE ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_DIR ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_HINT_RESOURCE_TYPE ),
+
+ BIND_GLOBAL_CONSTANT( PROPERTY_USAGE_STORAGE ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_USAGE_STORAGE ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_USAGE_EDITOR ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_USAGE_NETWORK ),
+ BIND_GLOBAL_CONSTANT( PROPERTY_USAGE_DEFAULT ),
+ {"TYPE_NIL",Variant::NIL},
+ {"TYPE_BOOL",Variant::BOOL},
+ {"TYPE_INT",Variant::INT},
+ {"TYPE_REAL",Variant::REAL},
+ {"TYPE_STRING",Variant::STRING},
+ {"TYPE_VECTOR2",Variant::VECTOR2}, // 5
+ {"TYPE_RECT2",Variant::RECT2},
+ {"TYPE_VECTOR3",Variant::VECTOR3},
+ {"TYPE_MATRIX32",Variant::MATRIX32},
+ {"TYPE_PLANE",Variant::PLANE},
+ {"TYPE_QUAT",Variant::QUAT}, // 10
+ {"TYPE_AABB",Variant::_AABB}, //sorry naming convention fail :( not like it's used often
+ {"TYPE_MATRIX3",Variant::MATRIX3},
+ {"TYPE_TRANSFORM",Variant::TRANSFORM},
+ {"TYPE_COLOR",Variant::COLOR},
+ {"TYPE_IMAGE",Variant::IMAGE}, // 15
+ {"TYPE_NODE_PATH",Variant::NODE_PATH},
+ {"TYPE_RID",Variant::_RID},
+ {"TYPE_OBJECT",Variant::OBJECT},
+ {"TYPE_INPUT_EVENT",Variant::INPUT_EVENT},
+ {"TYPE_DICTIONARY",Variant::DICTIONARY}, // 20
+ {"TYPE_ARRAY",Variant::ARRAY},
+ {"TYPE_RAW_ARRAY",Variant::RAW_ARRAY},
+ {"TYPE_INT_ARRAY",Variant::INT_ARRAY},
+ {"TYPE_REAL_ARRAY",Variant::REAL_ARRAY},
+ {"TYPE_STRING_ARRAY",Variant::STRING_ARRAY}, // 25
+ {"TYPE_VECTOR2_ARRAY",Variant::VECTOR2_ARRAY},
+ {"TYPE_VECTOR3_ARRAY",Variant::VECTOR3_ARRAY},
+ {"TYPE_COLOR_ARRAY",Variant::COLOR_ARRAY},
+ {"TYPE_MAX",Variant::VARIANT_MAX},
+ {NULL,0}
+
+};
+
+int GlobalConstants::get_global_constant_count() {
+
+ int i=0;
+ while(_global_constants[i].name)
+ i++;
+ return i;
+
+}
+
+const char *GlobalConstants::get_global_constant_name(int p_idx) {
+
+ return _global_constants[p_idx].name;
+}
+
+int GlobalConstants::get_global_constant_value(int p_idx) {
+
+ return _global_constants[p_idx].value;
+}
+
+