diff options
author | Tom Tromey <tom@tromey.com> | 2019-06-28 23:54:25 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2019-07-17 12:19:12 -0600 |
commit | 098f9ed48e1c94a2624c825ba93d72b163d41196 (patch) | |
tree | 14364d15f0a1e887535cbb4d6d40f70fcebe7d47 /gdb/tui/tui-source.c | |
parent | 801109578cd2a6ebd690dd23f0d4a1f4a67aee09 (diff) | |
download | fsf-binutils-gdb-098f9ed48e1c94a2624c825ba93d72b163d41196.zip fsf-binutils-gdb-098f9ed48e1c94a2624c825ba93d72b163d41196.tar.gz fsf-binutils-gdb-098f9ed48e1c94a2624c825ba93d72b163d41196.tar.bz2 |
Always create an execution info window for a source window
A source or disassembly window will always have an "execution info"
window (the window along the side that displays breakpoint info), but
this isn't immediately clear from the source. As a result, some code
has checks to see whether the execution_info is NULL.
This changes the source window base class to always instantiate an
execution_info window, then updates the rest of the code. It also
simplifies window creation in tui-layout.c.
gdb/ChangeLog
2019-07-17 Tom Tromey <tom@tromey.com>
* tui/tui-winsource.c (tui_set_exec_info_content): Remove
condition.
* tui/tui-wingeneral.c (tui_source_window_base::make_visible):
Remove condition.
* tui/tui-source.c (tui_source_window_base::reset): New method.
* tui/tui-layout.c (make_command_window): Don't call
init_and_make_win.
(make_source_window, make_disasm_window): Don't call
make_source_or_disasm_window.
(make_data_window): Don't call init_and_make_win. Change calling
convention.
(show_source_disasm_command, show_data): Simplify.
(make_source_or_disasm_window): Remove.
(show_source_or_disasm_and_command): Simplify.
* tui/tui-data.h (struct tui_gen_win_info) <reset>: Now virtual.
(struct tui_source_window_base) <reset>: Likewise.
<execution_info>: Remove initializer.
* tui/tui-data.c (tui_source_window_base): Initialize
execution_info.
Diffstat (limited to 'gdb/tui/tui-source.c')
-rw-r--r-- | gdb/tui/tui-source.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gdb/tui/tui-source.c b/gdb/tui/tui-source.c index f0bac24..873612f 100644 --- a/gdb/tui/tui-source.c +++ b/gdb/tui/tui-source.c @@ -291,3 +291,13 @@ tui_source_window::location_matches_p (struct bp_location *loc, int line_no) && filename_cmp (fullname, symtab_to_fullname (loc->symtab)) == 0); } + +void +tui_source_window_base::reset (enum tui_win_type win_type, + int height, int width, + int origin_x, int origin_y) +{ + tui_gen_win_info::reset (win_type, height, width - 3, + origin_x + 3, origin_y); + execution_info->reset (EXEC_INFO_WIN, height, 3, origin_x, origin_y); +} |