Include global class resources in Resource property inspector
Much like how script defined global classes can be created from the "New Resource..." button in the FileSystem panel, this allows the creation of script defined resources to be embedded.
This commit is contained in:
parent
16934c7411
commit
03f7a724ed
|
@ -2287,6 +2287,16 @@ void EditorPropertyResource::_update_menu_items() {
|
||||||
E = E->next();
|
E = E->next();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
List<StringName> global_classes;
|
||||||
|
ScriptServer::get_global_class_list(&global_classes);
|
||||||
|
E = global_classes.front();
|
||||||
|
while (E) {
|
||||||
|
if (EditorNode::get_editor_data().script_class_is_parent(E->get(), base_type)) {
|
||||||
|
valid_inheritors.insert(E->get());
|
||||||
|
}
|
||||||
|
E = E->next();
|
||||||
|
}
|
||||||
|
|
||||||
for (Set<String>::Element *F = valid_inheritors.front(); F; F = F->next()) {
|
for (Set<String>::Element *F = valid_inheritors.front(); F; F = F->next()) {
|
||||||
String t = F->get();
|
String t = F->get();
|
||||||
|
|
||||||
|
@ -2303,7 +2313,7 @@ void EditorPropertyResource::_update_menu_items() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!is_custom_resource && !ClassDB::can_instance(t))
|
if (!is_custom_resource && !(ScriptServer::is_global_class(t) || ClassDB::can_instance(t)))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
inheritors_array.push_back(t);
|
inheritors_array.push_back(t);
|
||||||
|
|
Loading…
Reference in New Issue