You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-09 12:50:35 +00:00
Enhanced debugger. ake 2.1 more productive!
Allow access more informations from remote debugger. Refector more debugger related code to allow full access to variables. Array Property Editor now can edit with more objects including remote objects. Implements `GDInstance::debug_get_globals` to query all gloabl constants avaliable in GDScriptLanguage. Show globals in debug stack variable panel. Disabe capitalize property name for remote object. Add DictionaryPropertyEdit to edit with Dictionaries. The serialization/unserialization workflow use binary data instead of dictionary to avoid send too large data. Do not stop debugger if curent break point stack has error fix #9034. Don't send all content of strings but first 80 characters from remote debugger. Add constants into the break point stack tree and remote object instance edit inspector. Remote GDScript resource object instance list constants in the property inspector. Add `self` to the local in the break point stack as a remote object. Move some functions for GDScript related to thier base classes so debugger don't rely on the gdscript module any more. The slef in the debugger tree now expanded as the instance of script instead of the script resource.
This commit is contained in:
@@ -72,7 +72,7 @@ class ScriptEditorDebugger : public Control {
|
||||
float inspect_scene_tree_timeout;
|
||||
float inspect_edited_object_timeout;
|
||||
ObjectID inspected_object_id;
|
||||
ScriptEditorDebuggerInspectedObject *inspected_object;
|
||||
Map<ObjectID, ScriptEditorDebuggerInspectedObject *> remote_objects;
|
||||
bool updating_scene_tree;
|
||||
Set<ObjectID> unfold_cache;
|
||||
|
||||
@@ -142,9 +142,10 @@ class ScriptEditorDebugger : public Control {
|
||||
void _scene_tree_selected();
|
||||
void _scene_tree_request();
|
||||
void _parse_message(const String &p_msg, const Array &p_data);
|
||||
Variant _unserialize_variant(const DVector<uint8_t> &data, PropertyInfo &r_info, int &r_len);
|
||||
void _scene_tree_property_select_object(ObjectID p_object);
|
||||
void _scene_tree_property_value_edited(const String &p_prop, const Variant &p_value);
|
||||
|
||||
void _scene_tree_variable_value_edited(const String &p_prop, const Variant &p_value);
|
||||
void _video_mem_request();
|
||||
|
||||
int _get_node_path_cache(const NodePath &p_path);
|
||||
@@ -168,6 +169,9 @@ class ScriptEditorDebugger : public Control {
|
||||
|
||||
void _paused();
|
||||
|
||||
void _set_remote_object(ObjectID p_id, ScriptEditorDebuggerInspectedObject *p_obj);
|
||||
void _clear_remote_objects();
|
||||
|
||||
protected:
|
||||
void _notification(int p_what);
|
||||
static void _bind_methods();
|
||||
|
||||
Reference in New Issue
Block a user