1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-12 13:20:55 +00:00

Let user fix dependencies in resources

This commit is contained in:
Pedro J. Estébanez
2018-11-02 04:44:40 +01:00
parent 0e27af280c
commit d2b0f69a64
4 changed files with 41 additions and 9 deletions

View File

@@ -574,13 +574,29 @@ void EditorNode::_editor_select_prev() {
_editor_select(editor);
}
Error EditorNode::load_resource(const String &p_scene) {
Error EditorNode::load_resource(const String &p_resource, bool p_ignore_broken_deps) {
RES res = ResourceLoader::load(p_scene);
dependency_errors.clear();
Error err;
RES res = ResourceLoader::load(p_resource, "", false, &err);
ERR_FAIL_COND_V(!res.is_valid(), ERR_CANT_OPEN);
inspector_dock->edit_resource(res);
if (!p_ignore_broken_deps && dependency_errors.has(p_resource)) {
//current_option = -1;
Vector<String> errors;
for (Set<String>::Element *E = dependency_errors[p_resource].front(); E; E = E->next()) {
errors.push_back(E->get());
}
dependency_error->show(DependencyErrorDialog::MODE_RESOURCE, p_resource, errors);
dependency_errors.erase(p_resource);
return ERR_FILE_MISSING_DEPENDENCIES;
}
inspector_dock->edit_resource(res);
return OK;
}
@@ -2845,7 +2861,7 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b
errors.push_back(E->get());
}
dependency_error->show(lpath, errors);
dependency_error->show(DependencyErrorDialog::MODE_SCENE, lpath, errors);
opening_prev = false;
if (prev != -1) {