mirror of https://github.com/godotengine/godot
Don't refresh inspector when changing internal meta
This commit is contained in:
parent
64eeb04d2c
commit
5e3a985c91
|
|
@ -884,9 +884,14 @@ void Object::set_meta(const StringName &p_name, const Variant &p_value) {
|
||||||
if (p_value.get_type() == Variant::NIL) {
|
if (p_value.get_type() == Variant::NIL) {
|
||||||
if (metadata.has(p_name)) {
|
if (metadata.has(p_name)) {
|
||||||
metadata.erase(p_name);
|
metadata.erase(p_name);
|
||||||
metadata_properties.erase("metadata/" + p_name.operator String());
|
|
||||||
|
const String &sname = p_name;
|
||||||
|
metadata_properties.erase("metadata/" + sname);
|
||||||
|
if (!sname.begins_with("_")) {
|
||||||
|
// Metadata starting with _ don't show up in the inspector, so no need to update.
|
||||||
notify_property_list_changed();
|
notify_property_list_changed();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -896,9 +901,13 @@ void Object::set_meta(const StringName &p_name, const Variant &p_value) {
|
||||||
} else {
|
} else {
|
||||||
ERR_FAIL_COND(!p_name.operator String().is_valid_identifier());
|
ERR_FAIL_COND(!p_name.operator String().is_valid_identifier());
|
||||||
Variant *V = &metadata.insert(p_name, p_value)->value;
|
Variant *V = &metadata.insert(p_name, p_value)->value;
|
||||||
metadata_properties["metadata/" + p_name.operator String()] = V;
|
|
||||||
|
const String &sname = p_name;
|
||||||
|
metadata_properties["metadata/" + sname] = V;
|
||||||
|
if (!sname.begins_with("_")) {
|
||||||
notify_property_list_changed();
|
notify_property_list_changed();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Variant Object::get_meta(const StringName &p_name, const Variant &p_default) const {
|
Variant Object::get_meta(const StringName &p_name, const Variant &p_default) const {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue