EditorDebuggerSession

Hereda: RefCounted < Object

Una clase para interactuar con el depurador del editor.

Descripción

Esta clase no puede instanciarse directamente y debe obtenerse a través de un EditorDebuggerPlugin.

Puedes añadir pestañas a la IU de la sesión a través de add_session_tab(), enviar mensajes a través de send_message(), y alternar EngineProfilers a través de toggle_profiler().

Métodos

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 = [])


Señales

breaked(can_debug: bool) 🔗

Emitida cuando la instancia remota adjunta entra en un estado de interrupción. Si can_debug es true, la instancia remota entrará en el bucle de depuración.


continued() 🔗

Emitida cuando la instancia remota adjunta sale de un estado de interrupción.


started() 🔗

Emitida cuando una instancia remota se adjunta a esta sesión (es decir, la sesión se vuelve activa).


stopped() 🔗

Emitida cuando una instancia remota se separa de esta sesión (es decir, la sesión se vuelve inactiva).


Descripciones de Métodos

void add_session_tab(control: Control) 🔗

Añade el control dado a la IU de la sesión de depuración en el panel inferior del depurador. El nombre del nodo de control se utilizará como título de la pestaña.


bool is_active() 🔗

Devuelve true si la sesión de depuración está actualmente conectada a una instancia remota.


bool is_breaked() 🔗

Devuelve true si la instancia remota adjunta está actualmente en el bucle de depuración.


bool is_debuggable() 🔗

Devuelve true si la instancia remota adjunta se puede depurar.


void remove_session_tab(control: Control) 🔗

Elimina el control dado de la IU de la sesión de depuración en el panel inferior del depurador.


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

Envía el message dado a la instancia remota adjunta, opcionalmente pasando además data. Véase EngineDebugger para saber cómo recuperar esos mensajes.


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

Activa o desactiva un punto de interrupción específico basado en enabled, actualizando el Panel de puntos de interrupción del editor según corresponda.


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

Activa o desactiva el profiler dado en la instancia remota adjunta, opcionalmente pasando además data. Véase EngineProfiler para obtener más detalles.