wex v24.04.0
Public Member Functions | Static Public Member Functions | List of all members
wex::debug Class Reference

Offers a debug class that allows you to use an stc component as graphical interface for a debug process (e.g. More...

#include <wex/vcs/debug.h>

Inherits wxEvtHandler.

Public Member Functions

 debug (frame *frame, factory::process *process=nullptr)
 Constructor.
 
int add_menu (menu *menu, bool popup=false) const
 Adds debug menu items to specified menu, default as no popup menu.
 
bool apply_breakpoints (stc *stc) const
 Applies current breakpoints markers to stc component if applicable.
 
auto & breakpoints () const
 Returns breakpoints.
 
const auto & debug_entry () const
 Returns current entry.
 
bool execute (const std::string &action, stc *stc=nullptr)
 Executes the item action using the current debug process, if there is not yet a debug process, invokes frame::process to allow derived classed to provide one, and optionally use an stc component for extra input / output.
 
bool execute (int id, stc *stc=nullptr)
 As above, but for a menu action item.
 
bool is_active () const
 Returns true if a debug session is active.
 
bool print (const std::string &variable) const
 Ask debugger to print contents of variable.
 
bool show_dialog (wxWindow *parent)
 Shows dialog to select debug entry.
 
bool toggle_breakpoint (int line, stc *stc)
 Toggles breakpoint on line.
 

Static Public Member Functions

static std::string default_exe ()
 Returns the default debugger for current platform.
 

Detailed Description

Offers a debug class that allows you to use an stc component as graphical interface for a debug process (e.g.

gdb).

Member Function Documentation

◆ add_menu()

int wex::debug::add_menu ( menu * menu,
bool popup = false ) const

Adds debug menu items to specified menu, default as no popup menu.

These menus allow you to interact with the debug process. Returns number of items added to menu.

◆ apply_breakpoints()

bool wex::debug::apply_breakpoints ( stc * stc) const

Applies current breakpoints markers to stc component if applicable.

Returns false if no markers were added.

◆ execute()

bool wex::debug::execute ( const std::string & action,
stc * stc = nullptr )

Executes the item action using the current debug process, if there is not yet a debug process, invokes frame::process to allow derived classed to provide one, and optionally use an stc component for extra input / output.

Returns false if cancelled, or no debug process available.

◆ print()

bool wex::debug::print ( const std::string & variable) const

Ask debugger to print contents of variable.

Returns false if no debug process is available.

◆ toggle_breakpoint()

bool wex::debug::toggle_breakpoint ( int line,
stc * stc )

Toggles breakpoint on line.

Returns false if no debug process is available.