summaryrefslogtreecommitdiff
path: root/editor
diff options
context:
space:
mode:
Diffstat (limited to 'editor')
-rw-r--r--editor/editor_export.cpp36
-rw-r--r--editor/editor_node.cpp51
-rw-r--r--editor/editor_run.cpp38
-rw-r--r--editor/project_manager.cpp7
-rw-r--r--editor/run_settings_dialog.cpp2
5 files changed, 93 insertions, 41 deletions
diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp
index d8d3554612..fe1dfa281c 100644
--- a/editor/editor_export.cpp
+++ b/editor/editor_export.cpp
@@ -229,17 +229,17 @@ void EditorExportPlatform::gen_debug_flags(Vector<String> &r_flags, int p_flags)
if (p_flags & DEBUG_FLAG_DUMB_CLIENT) {
int port = EditorSettings::get_singleton()->get("filesystem/file_server/port");
String passwd = EditorSettings::get_singleton()->get("filesystem/file_server/password");
- r_flags.push_back("--remote-fs");
+ r_flags.push_back("-rfs");
r_flags.push_back(host + ":" + itos(port));
if (passwd != "") {
- r_flags.push_back("--remote-fs-password");
+ r_flags.push_back("-rfs_pass");
r_flags.push_back(passwd);
}
}
if (p_flags & DEBUG_FLAG_REMOTE_DEBUG) {
- r_flags.push_back("--remote-debug");
+ r_flags.push_back("-rdebug");
r_flags.push_back(host + ":" + String::num(remote_port));
@@ -248,7 +248,7 @@ void EditorExportPlatform::gen_debug_flags(Vector<String> &r_flags, int p_flags)
if (breakpoints.size()) {
- r_flags.push_back("--breakpoints");
+ r_flags.push_back("-bp");
String bpoints;
for (const List<String>::Element *E = breakpoints.front(); E; E = E->next()) {
@@ -263,12 +263,12 @@ void EditorExportPlatform::gen_debug_flags(Vector<String> &r_flags, int p_flags)
if (p_flags & DEBUG_FLAG_VIEW_COLLISONS) {
- r_flags.push_back("--debug-collisions");
+ r_flags.push_back("-debugcol");
}
if (p_flags & DEBUG_FLAG_VIEW_NAVIGATION) {
- r_flags.push_back("--debug-navigation");
+ r_flags.push_back("-debugnav");
}
}
@@ -714,17 +714,17 @@ void EditorExportPlatform::gen_export_flags(Vector<String> &r_flags, int p_flags
if (p_flags & DEBUG_FLAG_DUMB_CLIENT) {
int port = EditorSettings::get_singleton()->get("filesystem/file_server/port");
String passwd = EditorSettings::get_singleton()->get("filesystem/file_server/password");
- r_flags.push_back("--remote-fs");
+ r_flags.push_back("-rfs");
r_flags.push_back(host + ":" + itos(port));
if (passwd != "") {
- r_flags.push_back("--remote-fs-password");
+ r_flags.push_back("-rfs_pass");
r_flags.push_back(passwd);
}
}
if (p_flags & DEBUG_FLAG_REMOTE_DEBUG) {
- r_flags.push_back("--remote-debug");
+ r_flags.push_back("-rdebug");
r_flags.push_back(host + ":" + String::num(remote_port));
@@ -733,7 +733,7 @@ void EditorExportPlatform::gen_export_flags(Vector<String> &r_flags, int p_flags
if (breakpoints.size()) {
- r_flags.push_back("--breakpoints");
+ r_flags.push_back("-bp");
String bpoints;
for (const List<String>::Element *E = breakpoints.front(); E; E = E->next()) {
@@ -748,12 +748,12 @@ void EditorExportPlatform::gen_export_flags(Vector<String> &r_flags, int p_flags
if (p_flags & DEBUG_FLAG_VIEW_COLLISONS) {
- r_flags.push_back("--debug-collisions");
+ r_flags.push_back("-debugcol");
}
if (p_flags & DEBUG_FLAG_VIEW_NAVIGATION) {
- r_flags.push_back("--debug-navigation");
+ r_flags.push_back("-debugnav");
}
}
EditorExportPlatform::EditorExportPlatform() {
@@ -2231,17 +2231,17 @@ void EditorExportPlatform::gen_export_flags(Vector<String> &r_flags, int p_flags
if (p_flags&EXPORT_DUMB_CLIENT) {
int port = EditorSettings::get_singleton()->get("filesystem/file_server/port");
String passwd = EditorSettings::get_singleton()->get("filesystem/file_server/password");
- r_flags.push_back("--remote-fs");
+ r_flags.push_back("-rfs");
r_flags.push_back(host+":"+itos(port));
if (passwd!="") {
- r_flags.push_back("--remote-fs-password");
+ r_flags.push_back("-rfs_pass");
r_flags.push_back(passwd);
}
}
if (p_flags&EXPORT_REMOTE_DEBUG) {
- r_flags.push_back("--remote-debug");
+ r_flags.push_back("-rdebug");
r_flags.push_back(host+":"+String::num(remote_port));
@@ -2251,7 +2251,7 @@ void EditorExportPlatform::gen_export_flags(Vector<String> &r_flags, int p_flags
if (breakpoints.size()) {
- r_flags.push_back("--breakpoints");
+ r_flags.push_back("-bp");
String bpoints;
for(const List<String>::Element *E=breakpoints.front();E;E=E->next()) {
@@ -2267,12 +2267,12 @@ void EditorExportPlatform::gen_export_flags(Vector<String> &r_flags, int p_flags
if (p_flags&EXPORT_VIEW_COLLISONS) {
- r_flags.push_back("--debug-collisions");
+ r_flags.push_back("-debugcol");
}
if (p_flags&EXPORT_VIEW_NAVIGATION) {
- r_flags.push_back("--debug-navigation");
+ r_flags.push_back("-debugnav");
}
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index 9199ff825e..a5f0478854 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -1850,6 +1850,47 @@ void EditorNode::_run(bool p_current, const String &p_custom) {
_playing_edited = p_current;
}
+void EditorNode::_cleanup_scene() {
+
+#if 0
+ Node *scene = editor_data.get_edited_scene_root();
+ editor_selection->clear();
+ editor_data.clear_editor_states();
+ editor_history.clear();
+ _hide_top_editors();
+ animation_editor->cleanup();
+ property_editor->edit(NULL);
+ resources_dock->cleanup();
+ scene_import_metadata.unref();
+ //set_edited_scene(NULL);
+ if (scene) {
+ if (scene->get_filename()!="") {
+ previous_scenes.push_back(scene->get_filename());
+ }
+
+ memdelete(scene);
+ }
+ editor_data.get_undo_redo().clear_history();
+ saved_version=editor_data.get_undo_redo().get_version();
+ run_settings_dialog->set_run_mode(0);
+ run_settings_dialog->set_custom_arguments("-l $scene");
+
+ List<Ref<Resource> > cached;
+ ResourceCache::get_cached_resources(&cached);
+
+ for(List<Ref<Resource> >::Element *E=cached.front();E;E=E->next()) {
+
+ String path = E->get()->get_path();
+ if (path.is_resource_file()) {
+ ERR_PRINT(("Stray resource not cleaned:"+path).utf8().get_data());
+ }
+
+ }
+
+ _update_title();
+#endif
+}
+
void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
//print_line("option "+itos(p_option)+" confirm "+itos(p_confirmed));
@@ -1873,6 +1914,8 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
_scene_tab_changed(idx);
editor_data.clear_editor_states();
+ //_cleanup_scene();
+
} break;
case FILE_NEW_INHERITED_SCENE:
case FILE_OPEN_SCENE: {
@@ -2693,6 +2736,8 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
import_reload_fn = scene->get_filename();
_save_scene(import_reload_fn);
+ _cleanup_scene();
+
}
@@ -2778,9 +2823,9 @@ void EditorNode::_discard_changes(const String &p_str) {
String exec = OS::get_singleton()->get_executable_path();
List<String> args;
- args.push_back("--path");
+ args.push_back("-path");
args.push_back(exec.get_base_dir());
- args.push_back("--project-manager");
+ args.push_back("-pm");
OS::ProcessID pid = 0;
Error err = OS::get_singleton()->execute(exec, args, false, &pid);
@@ -3282,6 +3327,8 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b
_scene_tab_changed(idx);
}
+ //_cleanup_scene(); // i'm sorry but this MUST happen to avoid modified resources to not be reloaded.
+
dependency_errors.clear();
Ref<PackedScene> sdata = ResourceLoader::load(lpath, "", true);
diff --git a/editor/editor_run.cpp b/editor/editor_run.cpp
index 28907ccf51..4954b1f741 100644
--- a/editor/editor_run.cpp
+++ b/editor/editor_run.cpp
@@ -45,27 +45,28 @@ Error EditorRun::run(const String &p_scene, const String p_custom_args, const Li
int remote_port = (int)EditorSettings::get_singleton()->get("network/debug/remote_port");
if (resource_path != "") {
- args.push_back("--path");
+ args.push_back("-path");
args.push_back(resource_path.replace(" ", "%20"));
}
if (true) {
- args.push_back("--remote-debug");
+ args.push_back("-rdebug");
args.push_back(remote_host + ":" + String::num(remote_port));
}
- args.push_back("--editor-pid");
+ args.push_back("-epid");
args.push_back(String::num(OS::get_singleton()->get_process_id()));
if (debug_collisions) {
- args.push_back("--debug-collisions");
+ args.push_back("-debugcol");
}
if (debug_navigation) {
- args.push_back("--debug-navigation");
+ args.push_back("-debugnav");
}
int screen = EditorSettings::get_singleton()->get("run/window_placement/screen");
+
if (screen == 0) {
screen = OS::get_singleton()->get_current_screen();
} else {
@@ -77,6 +78,7 @@ Error EditorRun::run(const String &p_scene, const String p_custom_args, const Li
screen_rect.size = OS::get_singleton()->get_screen_size(screen);
Size2 desired_size;
+
desired_size.x = ProjectSettings::get_singleton()->get("display/window/size/width");
desired_size.y = ProjectSettings::get_singleton()->get("display/window/size/height");
@@ -93,39 +95,39 @@ Error EditorRun::run(const String &p_scene, const String p_custom_args, const Li
switch (window_placement) {
case 0: { // default
- args.push_back("--position");
+ args.push_back("-p");
args.push_back(itos(screen_rect.position.x) + "x" + itos(screen_rect.position.y));
} break;
case 1: { // centered
Vector2 pos = screen_rect.position + ((screen_rect.size - desired_size) / 2).floor();
- args.push_back("--position");
- args.push_back(itos(pos.x) + "," + itos(pos.y));
+ args.push_back("-p");
+ args.push_back(itos(pos.x) + "x" + itos(pos.y));
} break;
case 2: { // custom pos
Vector2 pos = EditorSettings::get_singleton()->get("run/window_placement/rect_custom_position");
pos += screen_rect.position;
- args.push_back("--position");
- args.push_back(itos(pos.x) + "," + itos(pos.y));
+ args.push_back("-p");
+ args.push_back(itos(pos.x) + "x" + itos(pos.y));
} break;
case 3: { // force maximized
Vector2 pos = screen_rect.position;
- args.push_back("--position");
- args.push_back(itos(pos.x) + "," + itos(pos.y));
- args.push_back("--maximized");
+ args.push_back("-p");
+ args.push_back(itos(pos.x) + "x" + itos(pos.y));
+ args.push_back("-mx");
} break;
case 4: { // force fullscreen
Vector2 pos = screen_rect.position;
- args.push_back("--position");
- args.push_back(itos(pos.x) + "," + itos(pos.y));
- args.push_back("--fullscreen");
+ args.push_back("-p");
+ args.push_back(itos(pos.x) + "x" + itos(pos.y));
+ args.push_back("-f");
} break;
}
if (p_breakpoints.size()) {
- args.push_back("--breakpoints");
+ args.push_back("-bp");
String bpoints;
for (const List<String>::Element *E = p_breakpoints.front(); E; E = E->next()) {
@@ -150,7 +152,7 @@ Error EditorRun::run(const String &p_scene, const String p_custom_args, const Li
String exec = OS::get_singleton()->get_executable_path();
- printf("Running: %ls", exec.c_str());
+ printf("running: %ls", exec.c_str());
for (List<String>::Element *E = args.front(); E; E = E->next()) {
printf(" %ls", E->get().c_str());
diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp
index 769cf250c4..dc0c888eea 100644
--- a/editor/project_manager.cpp
+++ b/editor/project_manager.cpp
@@ -929,10 +929,10 @@ void ProjectManager::_open_project_confirm() {
List<String> args;
- args.push_back("--path");
+ args.push_back("-path");
args.push_back(path);
- args.push_back("--editor");
+ args.push_back("-editor");
String exec = OS::get_singleton()->get_executable_path();
@@ -969,6 +969,7 @@ void ProjectManager::_run_project_confirm() {
return;
}
+
const String &selected = E->key();
String path = EditorSettings::get_singleton()->get("projects/" + selected);
@@ -982,7 +983,7 @@ void ProjectManager::_run_project_confirm() {
List<String> args;
- args.push_back("--path");
+ args.push_back("-path");
args.push_back(path);
String exec = OS::get_singleton()->get_executable_path();
diff --git a/editor/run_settings_dialog.cpp b/editor/run_settings_dialog.cpp
index dfb152d40b..4548ae0939 100644
--- a/editor/run_settings_dialog.cpp
+++ b/editor/run_settings_dialog.cpp
@@ -88,5 +88,7 @@ RunSettingsDialog::RunSettingsDialog() {
get_ok()->set_text(TTR("Close"));
//get_cancel()->set_text("Close");
+ arguments->set_text("-l $scene");
+
set_title(TTR("Scene Run Settings"));
}