diff options
author | Juan Linietsky <reduzio@gmail.com> | 2016-06-18 16:03:00 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2016-06-18 16:03:35 -0300 |
commit | 5e7f1fc79b03f0c1eb9877ff82f24b921d2c43ea (patch) | |
tree | 42a5f376231912c7d7a81c895804a7eebd9295ba | |
parent | 81a10795dc3c88331e211d80ac13baea41b11d77 (diff) |
update EditorDirDialog on external change, closes #4629
-rw-r--r-- | main/main.cpp | 5 | ||||
-rw-r--r-- | tools/editor/editor_dir_dialog.cpp | 7 | ||||
-rw-r--r-- | tools/editor/editor_dir_dialog.h | 2 |
3 files changed, 12 insertions, 2 deletions
diff --git a/main/main.cpp b/main/main.cpp index 6cddea823a..de212deefd 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -110,6 +110,7 @@ static bool use_debug_profiler=false; static bool force_lowdpi=false; static int init_screen=-1; static bool use_vsync=true; +static bool editor=false; static String unescape_cmdline(const String& p_str) { @@ -281,7 +282,7 @@ Error Main::setup(const char *execpath,int argc, char *argv[],bool p_second_phas packed_data->add_pack_source(zip_packed_data); #endif - bool editor=false; + while(I) { @@ -953,7 +954,7 @@ Error Main::setup2() { Globals::get_singleton()->set_custom_property_info("application/icon",PropertyInfo(Variant::STRING,"application/icon",PROPERTY_HINT_FILE,"*.png,*.webp")); if (bool(GLOBAL_DEF("display/emulate_touchscreen",false))) { - if (!OS::get_singleton()->has_touchscreen_ui_hint() && Input::get_singleton()) { + if (!OS::get_singleton()->has_touchscreen_ui_hint() && Input::get_singleton() && !editor) { //only if no touchscreen ui hint, set emulation InputDefault *id = Input::get_singleton()->cast_to<InputDefault>(); if (id) diff --git a/tools/editor/editor_dir_dialog.cpp b/tools/editor/editor_dir_dialog.cpp index 395c4ba680..fda2d9bacf 100644 --- a/tools/editor/editor_dir_dialog.cpp +++ b/tools/editor/editor_dir_dialog.cpp @@ -30,6 +30,7 @@ #include "os/os.h" #include "os/keyboard.h" #include "tools/editor/editor_settings.h" +#include "tools/editor/editor_file_system.h" void EditorDirDialog::_update_dir(TreeItem* p_item) { @@ -86,11 +87,14 @@ void EditorDirDialog::reload() { _item_collapsed(root); } + void EditorDirDialog::_notification(int p_what) { if (p_what==NOTIFICATION_ENTER_TREE) { reload(); tree->connect("item_collapsed",this,"_item_collapsed",varray(),CONNECT_DEFERRED); + EditorFileSystem::get_singleton()->connect("filesystem_changed",this,"reload"); + } } @@ -198,6 +202,7 @@ void EditorDirDialog::_bind_methods() { ObjectTypeDB::bind_method(_MD("_item_collapsed"),&EditorDirDialog::_item_collapsed); ObjectTypeDB::bind_method(_MD("_make_dir"),&EditorDirDialog::_make_dir); ObjectTypeDB::bind_method(_MD("_make_dir_confirm"),&EditorDirDialog::_make_dir_confirm); + ObjectTypeDB::bind_method(_MD("reload"),&EditorDirDialog::reload); ADD_SIGNAL(MethodInfo("dir_selected",PropertyInfo(Variant::STRING,"dir"))); } @@ -238,4 +243,6 @@ EditorDirDialog::EditorDirDialog() { get_ok()->set_text(TTR("Choose")); + + } diff --git a/tools/editor/editor_dir_dialog.h b/tools/editor/editor_dir_dialog.h index 1c2593219c..94facceed4 100644 --- a/tools/editor/editor_dir_dialog.h +++ b/tools/editor/editor_dir_dialog.h @@ -53,6 +53,8 @@ class EditorDirDialog : public ConfirmationDialog { void _make_dir_confirm(); void ok_pressed(); + + protected: void _notification(int p_what); |