diff options
| author | Geequlim | 2017-11-16 17:18:36 +0800 |
|---|---|---|
| committer | Geequlim | 2017-11-17 12:01:54 +0800 |
| commit | fab66af7e99eb71ea6a2df30bea46835f749896a (patch) | |
| tree | bfd8b19219ba48ca311d47f2914b7b474ce95195 /editor | |
| parent | c655fc7cd89d17eb858b3c99e82402de61571bb0 (diff) | |
| download | godot-fab66af7e99eb71ea6a2df30bea46835f749896a.tar.gz godot-fab66af7e99eb71ea6a2df30bea46835f749896a.tar.zst godot-fab66af7e99eb71ea6a2df30bea46835f749896a.zip | |
Move the remote scene tree to the scene tree dock.
Ignore all script constants in the global section of the breakpoint stack.
Check property size before send to avoid too large of data be sent.
Fix crash while clear the remote objects from the debugger.
Diffstat (limited to 'editor')
| -rw-r--r-- | editor/scene_tree_dock.cpp | 2 | ||||
| -rw-r--r-- | editor/script_editor_debugger.cpp | 19 | ||||
| -rw-r--r-- | editor/script_editor_debugger.h | 4 |
3 files changed, 12 insertions, 13 deletions
diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp index 816156ef0..94f218757 100644 --- a/editor/scene_tree_dock.cpp +++ b/editor/scene_tree_dock.cpp @@ -1923,6 +1923,8 @@ void SceneTreeDock::_local_tree_selected() { remote_tree->hide(); edit_remote->set_pressed(false); edit_local->set_pressed(true); + + _node_selected(); } void SceneTreeDock::_bind_methods() { diff --git a/editor/script_editor_debugger.cpp b/editor/script_editor_debugger.cpp index c2ef16571..2a3e47b2a 100644 --- a/editor/script_editor_debugger.cpp +++ b/editor/script_editor_debugger.cpp @@ -1150,6 +1150,8 @@ void ScriptEditorDebugger::start() { EditorNode::get_log()->add_message(String("Error listening on port ") + itos(remote_port), true); return; } + + EditorNode::get_singleton()->get_scene_tree_dock()->show_remote_tree(); set_process(true); } @@ -1186,6 +1188,7 @@ void ScriptEditorDebugger::stop() { EditorNode::get_singleton()->get_pause_button()->set_pressed(false); EditorNode::get_singleton()->get_pause_button()->set_disabled(true); + EditorNode::get_singleton()->get_scene_tree_dock()->hide_remote_tree(); if (hide_on_stop) { if (is_visible_in_tree()) @@ -1662,6 +1665,9 @@ void ScriptEditorDebugger::_set_remote_object(ObjectID p_id, ScriptEditorDebugge void ScriptEditorDebugger::_clear_remote_objects() { for (Map<ObjectID, ScriptEditorDebuggerInspectedObject *>::Element *E = remote_objects.front(); E; E = E->next()) { + if (editor->get_editor_history()->get_current() == E->value()->get_instance_id()) { + editor->push_item(NULL); + } memdelete(E->value()); } remote_objects.clear(); @@ -1825,18 +1831,11 @@ ScriptEditorDebugger::ScriptEditorDebugger(EditorNode *p_editor) { tabs->add_child(error_split); } - { // inquire - - inspect_info = memnew(HSplitContainer); - inspect_info->set_name(TTR("Remote Inspector")); - tabs->add_child(inspect_info); - - VBoxContainer *info_left = memnew(VBoxContainer); - info_left->set_h_size_flags(SIZE_EXPAND_FILL); - inspect_info->add_child(info_left); + { // remote scene tree inspect_scene_tree = memnew(Tree); - info_left->add_margin_child(TTR("Live Scene Tree:"), inspect_scene_tree, true); + EditorNode::get_singleton()->get_scene_tree_dock()->add_remote_tree_editor(inspect_scene_tree); + inspect_scene_tree->set_v_size_flags(SIZE_EXPAND_FILL); inspect_scene_tree->connect("cell_selected", this, "_scene_tree_selected"); inspect_scene_tree->connect("item_collapsed", this, "_scene_tree_folded"); diff --git a/editor/script_editor_debugger.h b/editor/script_editor_debugger.h index d13048ce2..dc851dd57 100644 --- a/editor/script_editor_debugger.h +++ b/editor/script_editor_debugger.h @@ -72,9 +72,6 @@ class ScriptEditorDebugger : public Control { Button *le_set; Button *le_clear; - Tree *inspect_scene_tree; - HSplitContainer *inspect_info; - bool updating_scene_tree; float inspect_scene_tree_timeout; float inspect_edited_object_timeout; @@ -86,6 +83,7 @@ class ScriptEditorDebugger : public Control { HSplitContainer *error_split; ItemList *error_list; ItemList *error_stack; + Tree *inspect_scene_tree; int error_count; int last_error_count; |
