mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-03-07 13:39:43 +08:00
Merge refresh and refresh_window methods
Earlier refactorings introduced the refresh and refresh_window methods, following the previous TUI code. However, these methods are essentially the same, so this patch merges them. It also removes some redundant refresh_window calls, because the execution window is updated automatically by the corresponding source (or disassembly) window. gdb/ChangeLog 2019-07-17 Tom Tromey <tom@tromey.com> * tui/tui-winsource.c (tui_show_exec_info_content): Don't call refresh_window. * tui/tui-wingeneral.c (tui_gen_win_info::refresh_window): Call touchwin. (tui_data_window::refresh_window): Call refresh_window on data items. Always call superclass refresh_window. (tui_win_info::refresh): Remove. (tui_source_window_base::refresh_window): Update. (tui_refresh_all): Update. * tui/tui-layout.c (show_source_disasm_command): Remove call to refresh_window. (show_source_or_disasm_and_command): Likewise. * tui/tui-data.h (struct tui_win_info) <refresh>: Remove. (struct tui_source_window_base) <refresh>: Likewise.
This commit is contained in:
parent
f6cc34a91c
commit
fd6c75eecd
@ -1,3 +1,20 @@
|
|||||||
|
2019-07-17 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
|
* tui/tui-winsource.c (tui_show_exec_info_content): Don't call
|
||||||
|
refresh_window.
|
||||||
|
* tui/tui-wingeneral.c (tui_gen_win_info::refresh_window): Call
|
||||||
|
touchwin.
|
||||||
|
(tui_data_window::refresh_window): Call refresh_window on data
|
||||||
|
items. Always call superclass refresh_window.
|
||||||
|
(tui_win_info::refresh): Remove.
|
||||||
|
(tui_source_window_base::refresh_window): Update.
|
||||||
|
(tui_refresh_all): Update.
|
||||||
|
* tui/tui-layout.c (show_source_disasm_command): Remove call to
|
||||||
|
refresh_window.
|
||||||
|
(show_source_or_disasm_and_command): Likewise.
|
||||||
|
* tui/tui-data.h (struct tui_win_info) <refresh>: Remove.
|
||||||
|
(struct tui_source_window_base) <refresh>: Likewise.
|
||||||
|
|
||||||
2019-07-17 Tom Tromey <tom@tromey.com>
|
2019-07-17 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
* tui/tui-winsource.c (tui_clear_source_content)
|
* tui/tui-winsource.c (tui_clear_source_content)
|
||||||
|
@ -303,9 +303,6 @@ struct tui_win_info : public tui_gen_win_info
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Refresh this window and any associated windows. */
|
|
||||||
virtual void refresh ();
|
|
||||||
|
|
||||||
/* Called after all the TUI windows are refreshed, to let this
|
/* Called after all the TUI windows are refreshed, to let this
|
||||||
window have a chance to update itself further. */
|
window have a chance to update itself further. */
|
||||||
virtual void refresh_all ()
|
virtual void refresh_all ()
|
||||||
@ -380,7 +377,7 @@ struct tui_source_window_base : public tui_win_info
|
|||||||
}
|
}
|
||||||
|
|
||||||
void make_visible (bool visible) override;
|
void make_visible (bool visible) override;
|
||||||
void refresh () override;
|
void refresh_window () override;
|
||||||
void refresh_all () override;
|
void refresh_all () override;
|
||||||
|
|
||||||
/* Refill the source window's source cache and update it. If this
|
/* Refill the source window's source cache and update it. If this
|
||||||
|
@ -683,7 +683,6 @@ show_source_disasm_command (void)
|
|||||||
TUI_CMD_WIN->origin.y);
|
TUI_CMD_WIN->origin.y);
|
||||||
tui_make_visible (TUI_CMD_WIN);
|
tui_make_visible (TUI_CMD_WIN);
|
||||||
}
|
}
|
||||||
TUI_CMD_WIN->refresh_window ();
|
|
||||||
tui_set_current_layout_to (SRC_DISASSEM_COMMAND);
|
tui_set_current_layout_to (SRC_DISASSEM_COMMAND);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -924,7 +923,6 @@ show_source_or_disasm_and_command (enum tui_layout_type layout_type)
|
|||||||
{
|
{
|
||||||
tui_win_list[CMD_WIN] = make_command_window (cmd_height,
|
tui_win_list[CMD_WIN] = make_command_window (cmd_height,
|
||||||
src_height);
|
src_height);
|
||||||
TUI_CMD_WIN->refresh_window ();
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -37,7 +37,10 @@ void
|
|||||||
tui_gen_win_info::refresh_window ()
|
tui_gen_win_info::refresh_window ()
|
||||||
{
|
{
|
||||||
if (handle != NULL)
|
if (handle != NULL)
|
||||||
wrefresh (handle);
|
{
|
||||||
|
touchwin (handle);
|
||||||
|
wrefresh (handle);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* See tui-data.h. */
|
/* See tui-data.h. */
|
||||||
@ -49,12 +52,11 @@ tui_data_window::refresh_window ()
|
|||||||
{
|
{
|
||||||
for (auto &&win : regs_content)
|
for (auto &&win : regs_content)
|
||||||
{
|
{
|
||||||
if (win != NULL && win->handle != NULL)
|
if (win != NULL)
|
||||||
wrefresh (win->handle);
|
win->refresh_window ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
tui_gen_win_info::refresh_window ();
|
||||||
tui_gen_win_info::refresh_window ();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Function to delete the curses window, checking for NULL. */
|
/* Function to delete the curses window, checking for NULL. */
|
||||||
@ -231,20 +233,10 @@ tui_make_all_invisible (void)
|
|||||||
/* See tui-data.h. */
|
/* See tui-data.h. */
|
||||||
|
|
||||||
void
|
void
|
||||||
tui_win_info::refresh ()
|
tui_source_window_base::refresh_window ()
|
||||||
{
|
{
|
||||||
touchwin (handle);
|
|
||||||
refresh_window ();
|
|
||||||
}
|
|
||||||
|
|
||||||
/* See tui-data.h. */
|
|
||||||
|
|
||||||
void
|
|
||||||
tui_source_window_base::refresh ()
|
|
||||||
{
|
|
||||||
touchwin (execution_info->handle);
|
|
||||||
execution_info->refresh_window ();
|
execution_info->refresh_window ();
|
||||||
tui_win_info::refresh ();
|
tui_win_info::refresh_window ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Function to refresh all the windows currently displayed. */
|
/* Function to refresh all the windows currently displayed. */
|
||||||
@ -257,13 +249,10 @@ tui_refresh_all ()
|
|||||||
for (tui_win_info *win_info : all_tui_windows ())
|
for (tui_win_info *win_info : all_tui_windows ())
|
||||||
{
|
{
|
||||||
if (win_info->is_visible)
|
if (win_info->is_visible)
|
||||||
win_info->refresh ();
|
win_info->refresh_window ();
|
||||||
}
|
}
|
||||||
if (locator->is_visible)
|
if (locator->is_visible)
|
||||||
{
|
locator->refresh_window ();
|
||||||
touchwin (locator->handle);
|
|
||||||
locator->refresh_window ();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -513,7 +513,6 @@ tui_show_exec_info_content (struct tui_source_window_base *win_info)
|
|||||||
const tui_exec_info_content *content = exec_info->get_content ();
|
const tui_exec_info_content *content = exec_info->get_content ();
|
||||||
|
|
||||||
werase (exec_info->handle);
|
werase (exec_info->handle);
|
||||||
exec_info->refresh_window ();
|
|
||||||
for (int cur_line = 1; cur_line <= win_info->content.size (); cur_line++)
|
for (int cur_line = 1; cur_line <= win_info->content.size (); cur_line++)
|
||||||
mvwaddstr (exec_info->handle,
|
mvwaddstr (exec_info->handle,
|
||||||
cur_line,
|
cur_line,
|
||||||
|
Loading…
Reference in New Issue
Block a user