Docs: Ignore OS specific values (constants, project settings, properties).
This commit is contained in:
parent
dad21acebd
commit
0181c3dde1
12 changed files with 98 additions and 18 deletions
|
|
@ -781,6 +781,7 @@ void _OS::_bind_methods() {
|
|||
|
||||
// Those default values need to be specified for the docs generator,
|
||||
// to avoid using values from the documentation writer's own OS instance.
|
||||
ADD_PROPERTY_DEFAULT("tablet_driver", "");
|
||||
ADD_PROPERTY_DEFAULT("exit_code", 0);
|
||||
ADD_PROPERTY_DEFAULT("low_processor_usage_mode", false);
|
||||
ADD_PROPERTY_DEFAULT("low_processor_usage_mode_sleep_usec", 6900);
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ class GlobalConstants {
|
|||
public:
|
||||
static int get_global_constant_count();
|
||||
static StringName get_global_constant_enum(int p_idx);
|
||||
static bool get_ignore_value_in_docs(int p_idx);
|
||||
static const char *get_global_constant_name(int p_idx);
|
||||
static int get_global_constant_value(int p_idx);
|
||||
};
|
||||
|
|
|
|||
|
|
@ -122,6 +122,22 @@ void ProjectSettings::set_restart_if_changed(const String &p_name, bool p_restar
|
|||
props[p_name].restart_if_changed = p_restart;
|
||||
}
|
||||
|
||||
void ProjectSettings::set_ignore_value_in_docs(const String &p_name, bool p_ignore) {
|
||||
ERR_FAIL_COND_MSG(!props.has(p_name), "Request for nonexistent project setting: " + p_name + ".");
|
||||
#ifdef DEBUG_METHODS_ENABLED
|
||||
props[p_name].ignore_value_in_docs = p_ignore;
|
||||
#endif
|
||||
}
|
||||
|
||||
bool ProjectSettings::get_ignore_value_in_docs(const String &p_name) const {
|
||||
ERR_FAIL_COND_V_MSG(!props.has(p_name), false, "Request for nonexistent project setting: " + p_name + ".");
|
||||
#ifdef DEBUG_METHODS_ENABLED
|
||||
return props[p_name].ignore_value_in_docs;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
String ProjectSettings::globalize_path(const String &p_path) const {
|
||||
if (p_path.begins_with("res://")) {
|
||||
if (resource_path != "") {
|
||||
|
|
@ -876,7 +892,7 @@ Error ProjectSettings::save_custom(const String &p_path, const CustomMap &p_cust
|
|||
}
|
||||
}
|
||||
|
||||
Variant _GLOBAL_DEF(const String &p_var, const Variant &p_default, bool p_restart_if_changed) {
|
||||
Variant _GLOBAL_DEF(const String &p_var, const Variant &p_default, bool p_restart_if_changed, bool p_ignore_value_in_docs) {
|
||||
Variant ret;
|
||||
if (!ProjectSettings::get_singleton()->has_setting(p_var)) {
|
||||
ProjectSettings::get_singleton()->set(p_var, p_default);
|
||||
|
|
@ -886,6 +902,7 @@ Variant _GLOBAL_DEF(const String &p_var, const Variant &p_default, bool p_restar
|
|||
ProjectSettings::get_singleton()->set_initial_value(p_var, p_default);
|
||||
ProjectSettings::get_singleton()->set_builtin_order(p_var);
|
||||
ProjectSettings::get_singleton()->set_restart_if_changed(p_var, p_restart_if_changed);
|
||||
ProjectSettings::get_singleton()->set_ignore_value_in_docs(p_var, p_ignore_value_in_docs);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -62,6 +62,9 @@ protected:
|
|||
bool hide_from_editor = false;
|
||||
bool overridden = false;
|
||||
bool restart_if_changed = false;
|
||||
#ifdef DEBUG_METHODS_ENABLED
|
||||
bool ignore_value_in_docs = false;
|
||||
#endif
|
||||
|
||||
VariantContainer() {}
|
||||
|
||||
|
|
@ -125,6 +128,9 @@ public:
|
|||
|
||||
void set_initial_value(const String &p_name, const Variant &p_value);
|
||||
void set_restart_if_changed(const String &p_name, bool p_restart);
|
||||
void set_ignore_value_in_docs(const String &p_name, bool p_ignore);
|
||||
bool get_ignore_value_in_docs(const String &p_name) const;
|
||||
|
||||
bool property_can_revert(const String &p_name);
|
||||
Variant property_get_revert(const String &p_name);
|
||||
|
||||
|
|
@ -167,9 +173,11 @@ public:
|
|||
};
|
||||
|
||||
//not a macro any longer
|
||||
Variant _GLOBAL_DEF(const String &p_var, const Variant &p_default, bool p_restart_if_changed = false);
|
||||
Variant _GLOBAL_DEF(const String &p_var, const Variant &p_default, bool p_restart_if_changed = false, bool p_ignore_value_in_docs = false);
|
||||
#define GLOBAL_DEF(m_var, m_value) _GLOBAL_DEF(m_var, m_value)
|
||||
#define GLOBAL_DEF_RST(m_var, m_value) _GLOBAL_DEF(m_var, m_value, true)
|
||||
#define GLOBAL_DEF_NOVAL(m_var, m_value) _GLOBAL_DEF(m_var, m_value, false, true)
|
||||
#define GLOBAL_DEF_RST_NOVAL(m_var, m_value) _GLOBAL_DEF(m_var, m_value, true, true)
|
||||
#define GLOBAL_GET(m_var) ProjectSettings::get_singleton()->get(m_var)
|
||||
|
||||
#endif // PROJECT_SETTINGS_H
|
||||
|
|
|
|||
|
|
@ -1025,6 +1025,9 @@ String String::chr(CharType p_char) {
|
|||
}
|
||||
|
||||
String String::num(double p_num, int p_decimals) {
|
||||
if (Math::is_nan(p_num)) {
|
||||
return "nan";
|
||||
}
|
||||
#ifndef NO_USE_STDLIB
|
||||
|
||||
if (p_decimals > 16) {
|
||||
|
|
@ -1313,6 +1316,9 @@ String String::num_real(double p_num) {
|
|||
}
|
||||
|
||||
String String::num_scientific(double p_num) {
|
||||
if (Math::is_nan(p_num)) {
|
||||
return "nan";
|
||||
}
|
||||
#ifndef NO_USE_STDLIB
|
||||
|
||||
char buf[256];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue