GDB (xrefs)
|
#include "tui-source.h"
Public Member Functions | |
tui_source_window ()=default | |
DISABLE_COPY_AND_ASSIGN (tui_source_window) | |
const char * | name () const override |
bool | location_matches_p (struct bp_location *loc, int line_no) override |
bool | showing_source_p (const char *filename) const |
void | maybe_update (frame_info_ptr fi, symtab_and_line sal) override |
void | erase_source_content () override |
void | display_start_addr (struct gdbarch **gdbarch_p, CORE_ADDR *addr_p) override |
![]() | |
void | refill () |
void | set_is_exec_point_at (struct tui_line_or_address l) |
void | update_tab_width () override |
void | update_exec_info (bool refresh_p=true) |
void | update_source_window_as_is (struct gdbarch *gdbarch, const struct symtab_and_line &sal) |
void | update_source_window (struct gdbarch *gdbarch, const struct symtab_and_line &sal) |
bool | update_breakpoint_info (struct breakpoint *being_deleted, bool current_only) |
void | refresh_window () override |
![]() | |
tui_win_info (tui_win_info &&)=default | |
virtual | ~tui_win_info ()=default |
virtual void | make_visible (bool visible) |
virtual int | max_height () const |
virtual int | min_height () const |
int | max_width () const |
int | min_width () const |
virtual bool | can_box () const |
virtual void | resize (int height, int width, int origin_x, int origin_y) |
bool | is_visible () const |
virtual bool | can_focus () const |
void | no_refresh () |
void | set_highlight (bool highlight) |
void | forward_scroll (int num_to_scroll) |
void | backward_scroll (int num_to_scroll) |
void | left_scroll (int num_to_scroll) |
void | right_scroll (int num_to_scroll) |
virtual bool | can_scroll () const |
virtual void | click (int mouse_x, int mouse_y, int mouse_button) |
void | check_and_display_highlight_if_needed () |
void | set_title (std::string &&new_title) |
const std::string & | title () const |
Protected Member Functions | |
void | do_scroll_vertical (int num_to_scroll) override |
bool | set_contents (struct gdbarch *gdbarch, const struct symtab_and_line &sal) override |
int | extra_margin () const override |
void | show_line_number (int lineno) const override |
![]() | |
tui_source_window_base () | |
~tui_source_window_base () | |
DISABLE_COPY_AND_ASSIGN (tui_source_window_base) | |
void | do_scroll_horizontal (int num_to_scroll) override |
void | do_erase_source_content (const char *string) |
void | rerender () override |
void | show_source_line (int lineno) |
![]() | |
tui_win_info ()=default | |
DISABLE_COPY_AND_ASSIGN (tui_win_info) | |
virtual void | make_window () |
Private Member Functions | |
bool | line_is_displayed (int line) const |
Private Attributes | |
int | m_digits |
gdb::unique_xmalloc_ptr< char > | m_fullname |
Additional Inherited Members | |
![]() | |
std::unique_ptr< WINDOW, curses_deleter > | handle |
int | width = 0 |
int | height = 0 |
int | x = 0 |
int | y = 0 |
bool | is_highlighted = false |
![]() | |
struct tui_line_or_address | m_start_line_or_addr |
struct gdbarch * | m_gdbarch = nullptr |
std::vector< tui_source_element > | m_content |
int | m_max_length |
Definition at line 32 of file tui-source.h.
|
default |
tui_source_window::DISABLE_COPY_AND_ASSIGN | ( | tui_source_window | ) |
|
overridevirtual |
Implements tui_source_window_base.
Definition at line 227 of file tui-source.c.
References find_line_pc(), get_current_source_symtab_and_line(), tui_line_or_address::line_no, tui_source_window_base::m_gdbarch, tui_source_window_base::m_start_line_or_addr, symtab_and_line::symtab, and tui_line_or_address::u.
|
overrideprotectedvirtual |
Implements tui_win_info.
Definition at line 141 of file tui-source.c.
References find_line_pc(), find_pc_line_symtab(), g_source_cache, get_current_source_symtab_and_line(), get_frame_arch(), get_frame_pc(), source_cache::get_line_charpos(), get_selected_frame(), symtab_and_line::line, tui_line_or_address::line_no, tui_source_window_base::m_content, tui_source_window_base::m_gdbarch, tui_source_window_base::m_start_line_or_addr, symtab_and_line::pc, symtab_and_line::symtab, and tui_line_or_address::u.
|
inlineoverridevirtual |
Implements tui_source_window_base.
Definition at line 51 of file tui-source.h.
References tui_source_window_base::do_erase_source_content().
|
inlineoverrideprotectedvirtual |
Reimplemented from tui_source_window_base.
Definition at line 66 of file tui-source.h.
References m_digits.
|
private |
Definition at line 186 of file tui-source.c.
References LOA_LINE, tui_source_window_base::m_content, and SCROLL_THRESHOLD.
Referenced by maybe_update().
|
overridevirtual |
Implements tui_source_window_base.
Definition at line 174 of file tui-source.c.
References LOA_LINE, loc, tui_source_window_base::m_content, m_fullname, and symtab_to_fullname().
|
overridevirtual |
Implements tui_source_window_base.
Definition at line 202 of file tui-source.c.
References get_frame_arch(), tui_win_info::height, symtab_and_line::line, line_is_displayed(), tui_line_or_address::line_no, tui_line_or_address::loa, LOA_LINE, m_fullname, tui_source_window_base::set_is_exec_point_at(), showing_source_p(), symtab_and_line::symtab, tui_line_or_address::u, and tui_source_window_base::update_source_window().
|
inlineoverridevirtual |
Implements tui_win_info.
Definition at line 38 of file tui-source.h.
References SRC_NAME.
Referenced by gdb.printing.FlagEnumerationPrinter::__call__(), gdb.dap.varref.BaseReference::__init__(), gdb.disassembler.Disassembler::__init__(), gdb.printing.SubPrettyPrinter::__init__(), gdb.types.TypePrinter::__init__(), gdb.xmethod.XMethod::__init__(), gdb.xmethod.XMethodMatcher::__init__(), gdb.printing.PrettyPrinter::__init__(), and gdb.dap.varref.BaseReference::to_object().
|
overrideprotectedvirtual |
Implements tui_source_window_base.
Definition at line 45 of file tui-source.c.
References objfile::arch(), compact_source, symtab::compunit(), tui_location_tracker::full_name(), g_source_cache, source_cache::get_line_charpos(), source_cache::get_source_lines(), tui_win_info::height, tui_source_element::is_exec_point, symtab_and_line::line, tui_location_tracker::line_no(), tui_line_or_address::line_no, tui_source_element::line_or_addr, tui_line_or_address::loa, LOA_LINE, tui_source_window_base::m_content, m_digits, m_fullname, tui_source_window_base::m_gdbarch, tui_source_window_base::m_max_length, tui_source_window_base::m_start_line_or_addr, compunit_symtab::objfile(), tui_win_info::set_title(), symtab_and_line::symtab, symtab_to_filename_for_display(), symtab_to_fullname(), tui_copy_source_line(), tui_location, and tui_line_or_address::u.
|
overrideprotectedvirtual |
Reimplemented from tui_source_window_base.
Definition at line 239 of file tui-source.c.
References tui_win_info::handle, tui_source_window_base::m_content, m_digits, and tui_left_margin_verbose.
bool tui_source_window::showing_source_p | ( | const char * | filename | ) | const |
Definition at line 131 of file tui-source.c.
References tui_location_tracker::full_name(), tui_source_window_base::m_content, and tui_location.
Referenced by maybe_update().
|
private |
Definition at line 81 of file tui-source.h.
Referenced by extra_margin(), set_contents(), and show_line_number().
|
private |
Definition at line 84 of file tui-source.h.
Referenced by location_matches_p(), maybe_update(), and set_contents().