diff options
author | Juan Linietsky <reduzio@gmail.com> | 2015-12-05 14:18:22 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2015-12-05 14:18:22 -0300 |
commit | 200b7bb87c3d8d8b2011b08ed4bd7b034ceb452f (patch) | |
tree | d9dc837018c4c2c7680491889316eedb9fe6b36c /modules | |
parent | 35fa048af555e1f8411a2034706e9e452ce2f399 (diff) |
-Display on animation editor which keys are invalid and which tracks are unresolved
-Added a tool to clean up unresolved tracks and unused keys
Diffstat (limited to 'modules')
-rw-r--r-- | modules/gdscript/gd_script.cpp | 20 | ||||
-rw-r--r-- | modules/gdscript/gd_script.h | 2 |
2 files changed, 22 insertions, 0 deletions
diff --git a/modules/gdscript/gd_script.cpp b/modules/gdscript/gd_script.cpp index 8746f92c9e..c3cc779bce 100644 --- a/modules/gdscript/gd_script.cpp +++ b/modules/gdscript/gd_script.cpp @@ -2274,6 +2274,26 @@ bool GDInstance::get(const StringName& p_name, Variant &r_ret) const { return false; } + +Variant::Type GDInstance::get_property_type(const StringName& p_name,bool *r_is_valid) const { + + + const GDScript *sptr=script.ptr(); + while(sptr) { + + if (sptr->member_info.has(p_name)) { + if (r_is_valid) + *r_is_valid=true; + return sptr->member_info[p_name].type; + } + sptr = sptr->_base; + } + + if (r_is_valid) + *r_is_valid=false; + return Variant::NIL; +} + void GDInstance::get_property_list(List<PropertyInfo> *p_properties) const { // exported members, not doen yet! diff --git a/modules/gdscript/gd_script.h b/modules/gdscript/gd_script.h index 850ffec05f..3d16b59065 100644 --- a/modules/gdscript/gd_script.h +++ b/modules/gdscript/gd_script.h @@ -373,6 +373,8 @@ public: virtual bool set(const StringName& p_name, const Variant& p_value); virtual bool get(const StringName& p_name, Variant &r_ret) const; virtual void get_property_list(List<PropertyInfo> *p_properties) const; + virtual Variant::Type get_property_type(const StringName& p_name,bool *r_is_valid=NULL) const; + virtual void get_method_list(List<MethodInfo> *p_list) const; virtual bool has_method(const StringName& p_method) const; |