diff options
Diffstat (limited to 'core/global_constants.cpp')
| -rw-r--r-- | core/global_constants.cpp | 32 | 
1 files changed, 30 insertions, 2 deletions
diff --git a/core/global_constants.cpp b/core/global_constants.cpp index 6281e56395..b30685539a 100644 --- a/core/global_constants.cpp +++ b/core/global_constants.cpp @@ -38,6 +38,7 @@  struct _GlobalConstant {  #ifdef DEBUG_METHODS_ENABLED  	StringName enum_name; +	bool ignore_value_in_docs;  #endif  	const char *name;  	int value; @@ -45,8 +46,9 @@ struct _GlobalConstant {  	_GlobalConstant() {}  #ifdef DEBUG_METHODS_ENABLED -	_GlobalConstant(const StringName &p_enum_name, const char *p_name, int p_value) : +	_GlobalConstant(const StringName &p_enum_name, const char *p_name, int p_value, bool p_ignore_value_in_docs = false) :  			enum_name(p_enum_name), +			ignore_value_in_docs(p_ignore_value_in_docs),  			name(p_name),  			value(p_value) {  	} @@ -71,6 +73,15 @@ static Vector<_GlobalConstant> _global_constants;  #define BIND_GLOBAL_ENUM_CONSTANT_CUSTOM(m_custom_name, m_constant) \  	_global_constants.push_back(_GlobalConstant(__constant_get_enum_name(m_constant, #m_constant), m_custom_name, m_constant)); +#define BIND_GLOBAL_CONSTANT_NO_VAL(m_constant) \ +	_global_constants.push_back(_GlobalConstant(StringName(), #m_constant, m_constant, true)); + +#define BIND_GLOBAL_ENUM_CONSTANT_NO_VAL(m_constant) \ +	_global_constants.push_back(_GlobalConstant(__constant_get_enum_name(m_constant, #m_constant), #m_constant, m_constant, true)); + +#define BIND_GLOBAL_ENUM_CONSTANT_CUSTOM_NO_VAL(m_custom_name, m_constant) \ +	_global_constants.push_back(_GlobalConstant(__constant_get_enum_name(m_constant, #m_constant), m_custom_name, m_constant, true)); +  #else  #define BIND_GLOBAL_CONSTANT(m_constant) \ @@ -82,6 +93,15 @@ static Vector<_GlobalConstant> _global_constants;  #define BIND_GLOBAL_ENUM_CONSTANT_CUSTOM(m_custom_name, m_constant) \  	_global_constants.push_back(_GlobalConstant(m_custom_name, m_constant)); +#define BIND_GLOBAL_CONSTANT_NO_VAL(m_constant) \ +	_global_constants.push_back(_GlobalConstant(#m_constant, m_constant)); + +#define BIND_GLOBAL_ENUM_CONSTANT_NO_VAL(m_constant) \ +	_global_constants.push_back(_GlobalConstant(#m_constant, m_constant)); + +#define BIND_GLOBAL_ENUM_CONSTANT_CUSTOM_NO_VAL(m_custom_name, m_constant) \ +	_global_constants.push_back(_GlobalConstant(m_custom_name, m_constant)); +  #endif  VARIANT_ENUM_CAST(KeyList); @@ -368,7 +388,7 @@ void register_global_constants() {  	BIND_GLOBAL_ENUM_CONSTANT(KEY_MASK_ALT);  	BIND_GLOBAL_ENUM_CONSTANT(KEY_MASK_META);  	BIND_GLOBAL_ENUM_CONSTANT(KEY_MASK_CTRL); -	BIND_GLOBAL_ENUM_CONSTANT(KEY_MASK_CMD); +	BIND_GLOBAL_ENUM_CONSTANT_NO_VAL(KEY_MASK_CMD);  	BIND_GLOBAL_ENUM_CONSTANT(KEY_MASK_KPAD);  	BIND_GLOBAL_ENUM_CONSTANT(KEY_MASK_GROUP_SWITCH); @@ -648,10 +668,18 @@ int GlobalConstants::get_global_constant_count() {  StringName GlobalConstants::get_global_constant_enum(int p_idx) {  	return _global_constants[p_idx].enum_name;  } + +bool GlobalConstants::get_ignore_value_in_docs(int p_idx) { +	return _global_constants[p_idx].ignore_value_in_docs; +}  #else  StringName GlobalConstants::get_global_constant_enum(int p_idx) {  	return StringName();  } + +bool GlobalConstants::get_ignore_value_in_docs(int p_idx) { +	return false; +}  #endif  const char *GlobalConstants::get_global_constant_name(int p_idx) {  |