diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2023-08-29 12:41:27 +0200 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2023-08-29 12:41:27 +0200 |
commit | 76d318dbd13bd09a9690c0b459cb30f9ab6903f0 (patch) | |
tree | aec9ab48223b78ad476eda113ea6f4a8ad3b7990 /core/object/object.cpp | |
parent | 91c5273ec58aafd3b86e9a1e21640b0949842a78 (diff) | |
parent | 67db4693ebdc972eae2395fecd39dc174045b980 (diff) | |
download | redot-engine-76d318dbd13bd09a9690c0b459cb30f9ab6903f0.tar.gz |
Merge pull request #75778 from KoBeWi/_vp
Expose `_validate_property()` for scripting
Diffstat (limited to 'core/object/object.cpp')
-rw-r--r-- | core/object/object.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/object/object.cpp b/core/object/object.cpp index 4ae0ecdefd..b803d57cd9 100644 --- a/core/object/object.cpp +++ b/core/object/object.cpp @@ -526,6 +526,10 @@ void Object::get_property_list(List<PropertyInfo> *p_list, bool p_reversed) cons void Object::validate_property(PropertyInfo &p_property) const { _validate_propertyv(p_property); + + if (script_instance) { // Call it last to allow user altering already validated properties. + script_instance->validate_property(p_property); + } } bool Object::property_can_revert(const StringName &p_name) const { @@ -1604,6 +1608,8 @@ void Object::_bind_methods() { plget.return_val.hint_string = "Dictionary"; BIND_OBJ_CORE_METHOD(plget); + BIND_OBJ_CORE_METHOD(MethodInfo(Variant::NIL, "_validate_property", PropertyInfo(Variant::DICTIONARY, "property"))); + BIND_OBJ_CORE_METHOD(MethodInfo(Variant::BOOL, "_property_can_revert", PropertyInfo(Variant::STRING_NAME, "property"))); MethodInfo mipgr("_property_get_revert", PropertyInfo(Variant::STRING_NAME, "property")); mipgr.return_val.name = "Variant"; |