diff options
Diffstat (limited to 'tools/editor/script_editor_debugger.h')
-rw-r--r-- | tools/editor/script_editor_debugger.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/tools/editor/script_editor_debugger.h b/tools/editor/script_editor_debugger.h index c59cc1cf9d..6b66a62dd5 100644 --- a/tools/editor/script_editor_debugger.h +++ b/tools/editor/script_editor_debugger.h @@ -45,6 +45,7 @@ class TextureButton; class AcceptDialog; class TreeItem; class HSplitContainer; +class ItemList; class ScriptEditorDebugger : public Control { @@ -56,9 +57,21 @@ class ScriptEditorDebugger : public Control { LineEdit *clicked_ctrl; LineEdit *clicked_ctrl_type; + LineEdit *live_edit_root; Tree *scene_tree; HSplitContainer *info; Button *scene_tree_refresh; + Button *le_set; + Button *le_clear; + + HSplitContainer *error_split; + ItemList *error_list; + ItemList *error_stack; + + int error_count; + int last_error_count; + + TextureButton *tb; @@ -83,6 +96,10 @@ class ScriptEditorDebugger : public Control { Tree *perf_monitors; Control *perf_draw; + Tree *vmem_tree; + Button *vmem_refresh; + LineEdit *vmem_total; + Tree *stack_dump; PropertyEditor *inspector; @@ -94,11 +111,17 @@ class ScriptEditorDebugger : public Control { Array message; int pending_in_queue; + HashMap<NodePath,int> node_path_cache; + int last_path_id; + Map<String,int> res_path_cache; + EditorNode *editor; bool breaked; + bool live_debug; + void _performance_draw(); void _performance_select(Object *, int, bool); void _stack_dump_frame_selected(); @@ -108,6 +131,24 @@ class ScriptEditorDebugger : public Control { void _scene_tree_request(); void _parse_message(const String& p_msg,const Array& p_data); + void _video_mem_request(); + + int _get_node_path_cache(const NodePath& p_path); + + int _get_res_path_cache(const String& p_path); + + void _live_edit_set(); + void _live_edit_clear(); + + void _method_changed(Object*p_base,const StringName& p_name,VARIANT_ARG_DECLARE); + void _property_changed(Object*p_base,const StringName& p_property,const Variant& p_value); + + static void _method_changeds(void *p_ud,Object*p_base,const StringName& p_name,VARIANT_ARG_DECLARE); + static void _property_changeds(void *p_ud,Object*p_base,const StringName& p_property,const Variant& p_value); + + void _error_selected(int p_idx); + void _error_stack_selected(int p_idx); + protected: void _notification(int p_what); @@ -127,6 +168,21 @@ public: String get_var_value(const String& p_var) const; + void set_live_debugging(bool p_enable); + + void live_debug_create_node(const NodePath& p_parent,const String& p_type,const String& p_name); + void live_debug_instance_node(const NodePath& p_parent,const String& p_path,const String& p_name); + void live_debug_remove_node(const NodePath& p_at); + void live_debug_remove_and_keep_node(const NodePath& p_at,ObjectID p_keep_id); + void live_debug_restore_node(ObjectID p_id,const NodePath& p_at,int p_at_pos); + void live_debug_duplicate_node(const NodePath& p_at,const String& p_new_name); + void live_debug_reparent_node(const NodePath& p_at,const NodePath& p_new_place,const String& p_new_name,int p_at_pos); + + void set_breakpoint(const String& p_path,int p_line,bool p_enabled); + + void update_live_edit_root(); + + virtual Size2 get_minimum_size() const; ScriptEditorDebugger(EditorNode *p_editor=NULL); ~ScriptEditorDebugger(); |