Class reference
EditorDebuggerSession
Inherits RefCounted
A class to interact with the editor debugger.
Description
This class cannot be directly instantiated and must be retrieved via an EditorDebuggerPlugin. You can add tabs to the session UI via add_session_tab(), send messages via send_message(), and toggle EngineProfilers via toggle_profiler().
Methods
void add_session_tab(Control control)
Control control)Adds the given control to the debug session UI in the debugger bottom panel. The control's node name will be used as the tab title.
bool is_active()
bool is_active()Returns true if the debug session is currently attached to a remote instance.
bool is_breaked()
bool is_breaked()Returns true if the attached remote instance is currently in the debug loop.
bool is_debuggable()
bool is_debuggable()Returns true if the attached remote instance can be debugged.
void remove_session_tab(Control control)
Control control)Removes the given control from the debug session UI in the debugger bottom panel.
void send_message(String message, Array data = [])
String message, Array data = [])Sends the given message to the attached remote instance, optionally passing additionally data. See EngineDebugger for how to retrieve those messages.
void set_breakpoint(String path, int line, bool enabled)
String path, int line, bool enabled)Enables or disables a specific breakpoint based on enabled, updating the Editor Breakpoint Panel accordingly.
void toggle_profiler(String profiler, bool enable, Array data = [])
String profiler, bool enable, Array data = [])Toggle the given profiler on the attached remote instance, optionally passing additionally data. See EngineProfiler for more details.
Signals
breaked(bool can_debug)
bool can_debug)Emitted when the attached remote instance enters a break state. If can_debug is true, the remote instance will enter the debug loop.
continued()
Emitted when the attached remote instance exits a break state.
started()
Emitted when a remote instance is attached to this session (i.e. the session becomes active).
stopped()
Emitted when a remote instance is detached from this session (i.e. the session becomes inactive).