You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
make sure array is created if not existing, as noted by Guilherme Felipe
This commit is contained in:
@@ -9,7 +9,12 @@ Variant ArrayPropertyEdit::get_array() const{
|
||||
Object*o = ObjectDB::get_instance(obj);
|
||||
if (!o)
|
||||
return Array();
|
||||
return o->get(property);
|
||||
Variant arr=o->get(property);
|
||||
if (!arr.is_array()) {
|
||||
Variant::CallError ce;
|
||||
arr=Variant::construct(default_type,NULL,0,ce);
|
||||
}
|
||||
return arr;
|
||||
}
|
||||
|
||||
void ArrayPropertyEdit::_notif_change() {
|
||||
@@ -195,11 +200,12 @@ void ArrayPropertyEdit::_get_property_list( List<PropertyInfo> *p_list) const{
|
||||
|
||||
}
|
||||
|
||||
void ArrayPropertyEdit::edit(Object* p_obj,const StringName& p_prop) {
|
||||
void ArrayPropertyEdit::edit(Object* p_obj,const StringName& p_prop,Variant::Type p_deftype) {
|
||||
|
||||
page=0;
|
||||
property=p_prop;
|
||||
obj=p_obj->get_instance_ID();
|
||||
default_type=p_deftype;
|
||||
|
||||
}
|
||||
|
||||
@@ -220,5 +226,6 @@ ArrayPropertyEdit::ArrayPropertyEdit()
|
||||
vtypes+=",";
|
||||
vtypes+=Variant::get_type_name( Variant::Type(i) );
|
||||
}
|
||||
default_type=Variant::NIL;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user