From 708d8250011dad02fd7d3651eb057bdd9e52fb7f Mon Sep 17 00:00:00 2001 From: Jakub Grzesik Date: Thu, 6 Jul 2017 09:18:20 +0200 Subject: Make available more informations about editor for Tool Plugins --- editor/editor_data.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'editor/editor_data.cpp') diff --git a/editor/editor_data.cpp b/editor/editor_data.cpp index 58ffa223f..11b900f45 100644 --- a/editor/editor_data.cpp +++ b/editor/editor_data.cpp @@ -353,6 +353,7 @@ void EditorData::notify_edited_scene_changed() { for (int i = 0; i < editor_plugins.size(); i++) { editor_plugins[i]->edited_scene_changed(); + editor_plugins[i]->notify_scene_changed(get_edited_scene_root()); } } @@ -488,8 +489,14 @@ void EditorData::move_edited_scene_index(int p_idx, int p_to_idx) { } void EditorData::remove_scene(int p_idx) { ERR_FAIL_INDEX(p_idx, edited_scene.size()); - if (edited_scene[p_idx].root) + if (edited_scene[p_idx].root) { + + for (int i = 0; i < editor_plugins.size(); i++) { + editor_plugins[i]->notify_scene_closed(edited_scene[p_idx].root->get_filename()); + } + memdelete(edited_scene[p_idx].root); + } if (current_edited_scene > p_idx) current_edited_scene--; @@ -615,6 +622,17 @@ int EditorData::get_edited_scene_count() const { return edited_scene.size(); } +Vector EditorData::get_edited_scenes() const { + + Vector out_edited_scenes_list = Vector(); + + for (int i = 0; i < edited_scene.size(); i++) { + out_edited_scenes_list.push_back(edited_scene[i]); + } + + return out_edited_scenes_list; +} + void EditorData::set_edited_scene_version(uint64_t version, int scene_idx) { ERR_FAIL_INDEX(current_edited_scene, edited_scene.size()); if (scene_idx < 0) { -- cgit v1.2.3-70-g09d2