diff options
author | Juan Linietsky <reduzio@gmail.com> | 2015-11-19 00:20:54 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2015-11-19 00:20:54 -0300 |
commit | 6a3484260d80cf3dcb88fe069b1cd2453f5fcb3d (patch) | |
tree | 0ca2cc192d8311d0796e404f8ba249f71ef3760e /tools/editor | |
parent | 0168947084af1991a2af978956e823afb7b17d33 (diff) | |
parent | fca36207e34e908a580a7f7277f7519f39d3fbda (diff) |
Merge pull request #2451 from PeaceSells50/FixForFilesystemAdd
Fixed bug with adding an instance from the FIleSystem dialog.
Diffstat (limited to 'tools/editor')
-rw-r--r-- | tools/editor/scenes_dock.cpp | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/tools/editor/scenes_dock.cpp b/tools/editor/scenes_dock.cpp index 7d9c5b24b2..dfd729354d 100644 --- a/tools/editor/scenes_dock.cpp +++ b/tools/editor/scenes_dock.cpp @@ -352,10 +352,30 @@ String ScenesDock::get_selected_path() const { void ScenesDock::_instance_pressed() { - TreeItem *sel = tree->get_selected(); - if (!sel) - return; - String path = sel->get_metadata(0); + if (tree_mode) + { + TreeItem *sel = tree->get_selected(); + if (!sel) + return; + String path = sel->get_metadata(0); + } + else + { + int idx = -1; + for (int i = 0; i<files->get_item_count(); i++) { + if (files->is_selected(i)) + { + idx = i; + break; + } + } + + if (idx<0) + return; + + path = files->get_item_metadata(idx); + } + emit_signal("instance",path); } |