diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2018-10-25 10:47:04 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-25 10:47:04 +0200 |
commit | 0be20bba47bd8bcc3062bcfcf8231a0c2b378707 (patch) | |
tree | 77bc0f4437aaae0ec957e93aee1329cc91b269cd | |
parent | 7e2d391c0920344d16de77a3bb33b07b739c402a (diff) | |
parent | 7167394876a4fc34de29f1608300e05740297d1d (diff) |
Merge pull request #23245 from Alien1993/inherited_root_deletion
Fixed user being unable to delete root Node if is an inherited Scene
-rw-r--r-- | editor/scene_tree_dock.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp index 45c20121da..a8f4c38695 100644 --- a/editor/scene_tree_dock.cpp +++ b/editor/scene_tree_dock.cpp @@ -1307,6 +1307,13 @@ bool SceneTreeDock::_validate_no_foreign() { return false; } + // When edited_scene inherits from another one the root Node will be the parent Scene, + // we don't want to consider that Node a foreign one otherwise we would not be able to + // delete it + if (edited_scene->get_scene_inherited_state().is_valid() && edited_scene == E->get()) { + continue; + } + if (edited_scene->get_scene_inherited_state().is_valid() && edited_scene->get_scene_inherited_state()->find_node_by_path(edited_scene->get_path_to(E->get())) >= 0) { accept->set_text(TTR("Can't operate on nodes the current scene inherits from!")); |