diff options
author | Tom Tromey <tom@tromey.com> | 2020-02-22 11:48:26 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2020-02-22 11:48:37 -0700 |
commit | fdb01f0ce44653180af9d3d4f264c0ddb2d1261d (patch) | |
tree | 48e764972c1c724ed13bf700db9cd770bb4421a5 /gdb/tui | |
parent | 865a5aec04b504d33c83baf5e05f6cdf95ac9dc3 (diff) | |
download | gdb-fdb01f0ce44653180af9d3d4f264c0ddb2d1261d.zip gdb-fdb01f0ce44653180af9d3d4f264c0ddb2d1261d.tar.gz gdb-fdb01f0ce44653180af9d3d4f264c0ddb2d1261d.tar.bz2 |
TUI windows do not need to store their type
TUI windows no longer need to store their type -- there's only a
single spot that uses this information, and it can be changed to use
dynamic_cast. (It could be cleaned up even more, by using a virtual
method, but I haven't done so.) This patch removes the "type" field
from tui_gen_win_info, and this in turn allows removing a couple of
enumerator constants.
gdb/ChangeLog
2020-02-22 Tom Tromey <tom@tromey.com>
* tui/tui.h (enum tui_win_type) <LOCATOR_WIN, DATA_ITEM_WIN>:
Remove constants.
* tui/tui-winsource.h (struct tui_source_window_base)
<tui_source_window_base>: Remove parameter.
* tui/tui-winsource.c
(tui_source_window_base::tui_source_window_base): Remove
parameter.
(tui_source_window_base::refill): Update.
* tui/tui-stack.h (struct tui_locator_window)
<tui_locator_window>: Update.
* tui/tui-source.h (struct tui_source_window) <tui_source_window>:
Default the constructor.
* tui/tui-regs.h (struct tui_data_item_window)
<tui_data_item_window>: Default the constructor.
(struct tui_data_window) <tui_data_window>: Likewise.
* tui/tui-disasm.h (struct tui_disasm_window) <tui_disasm_window>:
Default the constructor.
* tui/tui-data.h (struct tui_gen_win_info) <tui_gen_win_info>:
Default the constructor.
<type>: Remove.
(struct tui_win_info) <tui_win_info>: Default the constructor.
* tui/tui-data.c (tui_win_info::tui_win_info): Remove.
* tui/tui-command.h (struct tui_cmd_window) <tui_cmd_window>:
Default the constructor.
Change-Id: I594cd07d2e0bba71ad594a6fb263904ce2febcd6
Diffstat (limited to 'gdb/tui')
-rw-r--r-- | gdb/tui/tui-command.h | 5 | ||||
-rw-r--r-- | gdb/tui/tui-data.c | 5 | ||||
-rw-r--r-- | gdb/tui/tui-data.h | 11 | ||||
-rw-r--r-- | gdb/tui/tui-disasm.h | 5 | ||||
-rw-r--r-- | gdb/tui/tui-regs.h | 10 | ||||
-rw-r--r-- | gdb/tui/tui-source.h | 5 | ||||
-rw-r--r-- | gdb/tui/tui-stack.h | 1 | ||||
-rw-r--r-- | gdb/tui/tui-winsource.c | 8 | ||||
-rw-r--r-- | gdb/tui/tui-winsource.h | 2 | ||||
-rw-r--r-- | gdb/tui/tui.h | 3 |
10 files changed, 12 insertions, 43 deletions
diff --git a/gdb/tui/tui-command.h b/gdb/tui/tui-command.h index fca1f54..211d0c8 100644 --- a/gdb/tui/tui-command.h +++ b/gdb/tui/tui-command.h @@ -27,10 +27,7 @@ /* The TUI command window. */ struct tui_cmd_window : public tui_win_info { - tui_cmd_window () - : tui_win_info (CMD_WIN) - { - } + tui_cmd_window () = default; DISABLE_COPY_AND_ASSIGN (tui_cmd_window); diff --git a/gdb/tui/tui-data.c b/gdb/tui/tui-data.c index ead8b10..db637d8 100644 --- a/gdb/tui/tui-data.c +++ b/gdb/tui/tui-data.c @@ -129,11 +129,6 @@ tui_prev_win (struct tui_win_info *cur_win) } -tui_win_info::tui_win_info (enum tui_win_type type) - : tui_gen_win_info (type) -{ -} - void tui_win_info::rerender () { diff --git a/gdb/tui/tui-data.h b/gdb/tui/tui-data.h index cd62b57..51208b1 100644 --- a/gdb/tui/tui-data.h +++ b/gdb/tui/tui-data.h @@ -22,7 +22,7 @@ #ifndef TUI_TUI_DATA_H #define TUI_TUI_DATA_H -#include "tui/tui.h" /* For enum tui_win_type. */ +#include "tui/tui.h" #include "gdb_curses.h" /* For WINDOW. */ #include "observable.h" @@ -44,10 +44,7 @@ struct tui_gen_win_info { protected: - explicit tui_gen_win_info (enum tui_win_type t) - : type (t) - { - } + tui_gen_win_info () = default; /* This is called after the window is resized, and should update the window's contents. */ @@ -117,8 +114,6 @@ public: /* Window handle. */ std::unique_ptr<WINDOW, curses_deleter> handle; - /* Type of window. */ - enum tui_win_type type; /* Window width. */ int width = 0; /* Window height. */ @@ -162,7 +157,7 @@ struct tui_win_info : public tui_gen_win_info { protected: - explicit tui_win_info (enum tui_win_type type); + tui_win_info () = default; DISABLE_COPY_AND_ASSIGN (tui_win_info); /* Scroll the contents vertically. This is only called via diff --git a/gdb/tui/tui-disasm.h b/gdb/tui/tui-disasm.h index 416be95..dd02031 100644 --- a/gdb/tui/tui-disasm.h +++ b/gdb/tui/tui-disasm.h @@ -30,10 +30,7 @@ struct tui_disasm_window : public tui_source_window_base { - tui_disasm_window () - : tui_source_window_base (DISASSEM_WIN) - { - } + tui_disasm_window () = default; DISABLE_COPY_AND_ASSIGN (tui_disasm_window); diff --git a/gdb/tui/tui-regs.h b/gdb/tui/tui-regs.h index eee3689..df8c273 100644 --- a/gdb/tui/tui-regs.h +++ b/gdb/tui/tui-regs.h @@ -28,10 +28,7 @@ struct tui_data_item_window : public tui_gen_win_info { - tui_data_item_window () - : tui_gen_win_info (DATA_ITEM_WIN) - { - } + tui_data_item_window () = default; DISABLE_COPY_AND_ASSIGN (tui_data_item_window); @@ -61,10 +58,7 @@ struct tui_data_item_window : public tui_gen_win_info /* The TUI registers window. */ struct tui_data_window : public tui_win_info { - tui_data_window () - : tui_win_info (DATA_WIN) - { - } + tui_data_window () = default; DISABLE_COPY_AND_ASSIGN (tui_data_window); diff --git a/gdb/tui/tui-source.h b/gdb/tui/tui-source.h index 06ca8d5..58dc5e8 100644 --- a/gdb/tui/tui-source.h +++ b/gdb/tui/tui-source.h @@ -31,10 +31,7 @@ struct symtab; struct tui_source_window : public tui_source_window_base { - tui_source_window () - : tui_source_window_base (SRC_WIN) - { - } + tui_source_window () = default; DISABLE_COPY_AND_ASSIGN (tui_source_window); diff --git a/gdb/tui/tui-stack.h b/gdb/tui/tui-stack.h index bea3e79..fde7c6d 100644 --- a/gdb/tui/tui-stack.h +++ b/gdb/tui/tui-stack.h @@ -31,7 +31,6 @@ struct frame_info; struct tui_locator_window : public tui_gen_win_info { tui_locator_window () - : tui_gen_win_info (LOCATOR_WIN) { full_name[0] = 0; proc_name[0] = 0; diff --git a/gdb/tui/tui-winsource.c b/gdb/tui/tui-winsource.c index 3ba2f2b..9ec05ae 100644 --- a/gdb/tui/tui-winsource.c +++ b/gdb/tui/tui-winsource.c @@ -286,10 +286,8 @@ tui_source_window_base::show_source_content () refresh_window (); } -tui_source_window_base::tui_source_window_base (enum tui_win_type type) - : tui_win_info (type) +tui_source_window_base::tui_source_window_base () { - gdb_assert (type == SRC_WIN || type == DISASSEM_WIN); start_line_or_addr.loa = LOA_ADDRESS; start_line_or_addr.u.addr = 0; @@ -334,7 +332,7 @@ tui_source_window_base::rerender () struct gdbarch *gdbarch = get_frame_arch (frame); struct symtab *s = find_pc_line_symtab (get_frame_pc (frame)); - if (type != SRC_WIN) + if (this != TUI_SRC_WIN) find_line_pc (s, cursal.line, &cursal.pc); update_source_window (gdbarch, cursal); } @@ -349,7 +347,7 @@ tui_source_window_base::refill () { symtab_and_line sal {}; - if (type == SRC_WIN) + if (this == TUI_SRC_WIN) { sal = get_current_source_symtab_and_line (); if (sal.symtab == NULL) diff --git a/gdb/tui/tui-winsource.h b/gdb/tui/tui-winsource.h index cae535f..4ac20d8 100644 --- a/gdb/tui/tui-winsource.h +++ b/gdb/tui/tui-winsource.h @@ -75,7 +75,7 @@ struct tui_source_element struct tui_source_window_base : public tui_win_info { protected: - explicit tui_source_window_base (enum tui_win_type type); + tui_source_window_base (); ~tui_source_window_base (); DISABLE_COPY_AND_ASSIGN (tui_source_window_base); diff --git a/gdb/tui/tui.h b/gdb/tui/tui.h index 6605901..816b1e9 100644 --- a/gdb/tui/tui.h +++ b/gdb/tui/tui.h @@ -40,9 +40,6 @@ enum tui_win_type CMD_WIN, /* This must ALWAYS be AFTER the major windows last. */ MAX_MAJOR_WINDOWS, - /* Auxiliary windows. */ - LOCATOR_WIN, - DATA_ITEM_WIN }; extern CORE_ADDR tui_get_low_disassembly_address (struct gdbarch *, |