Up to date

This page is up to date for Godot 4.3. If you still find outdated information, please open an issue.

EditorDebuggerSessionΒΆ

Inherits: RefCounted < Object

A class to interact with the editor debugger.

DescriptionΒΆ

This class cannot be directly instantiated and must be retrieved via a 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)

bool

is_active()

bool

is_breaked()

bool

is_debuggable()

void

remove_session_tab(control: Control)

void

send_message(message: String, data: Array = [])

void

set_breakpoint(path: String, line: int, enabled: bool)

void

toggle_profiler(profiler: String, enable: bool, data: Array = [])


SignalsΒΆ

breaked(can_debug: bool) πŸ”—

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).


Method DescriptionsΒΆ

void add_session_tab(control: Control) πŸ”—

Adds the given control to the debug session UI in the debugger bottom panel.


bool is_active() πŸ”—

Returns true if the debug session is currently attached to a remote instance.


bool is_breaked() πŸ”—

Returns true if the attached remote instance is currently in the debug loop.


bool is_debuggable() πŸ”—

Returns true if the attached remote instance can be debugged.


void remove_session_tab(control: Control) πŸ”—

Removes the given control from the debug session UI in the debugger bottom panel.


void send_message(message: String, data: Array = []) πŸ”—

Sends the given message to the attached remote instance, optionally passing additionally data. See EngineDebugger for how to retrieve those messages.


void set_breakpoint(path: String, line: int, enabled: bool) πŸ”—

Enables or disables a specific breakpoint based on enabled, updating the Editor Breakpoint Panel accordingly.


void toggle_profiler(profiler: String, enable: bool, data: Array = []) πŸ”—

Toggle the given profiler on the attached remote instance, optionally passing additionally data. See EngineProfiler for more details.