mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-29 16:38:05 +08:00
Introduce make_visible method
This introduceds the make_visible to tui_win_info and overrides it in subclasses as appropriate. This allows the removal of the tui_win_is_source_type, as it is no longer used. gdb/ChangeLog 2019-06-25 Tom Tromey <tom@tromey.com> * tui/tui-wingeneral.c (tui_win_info::make_visible) (tui_source_window_base::make_visible): New methods. (make_all_visible): Make method call. * tui/tui-data.h (struct tui_win_info) <make_visible>: New method. (struct tui_source_window_base, struct tui_cmd_window): Override make_visible. (tui_win_is_source_type): Don't declare. * tui/tui-data.c (tui_win_is_source_type): Remove.
This commit is contained in:
@ -1,3 +1,14 @@
|
|||||||
|
2019-06-25 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
|
* tui/tui-wingeneral.c (tui_win_info::make_visible)
|
||||||
|
(tui_source_window_base::make_visible): New methods.
|
||||||
|
(make_all_visible): Make method call.
|
||||||
|
* tui/tui-data.h (struct tui_win_info) <make_visible>: New method.
|
||||||
|
(struct tui_source_window_base, struct tui_cmd_window): Override
|
||||||
|
make_visible.
|
||||||
|
(tui_win_is_source_type): Don't declare.
|
||||||
|
* tui/tui-data.c (tui_win_is_source_type): Remove.
|
||||||
|
|
||||||
2019-06-25 Tom Tromey <tom@tromey.com>
|
2019-06-25 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
* tui/tui-layout.c (show_source_or_disasm_and_command): Remove
|
* tui/tui-layout.c (show_source_or_disasm_and_command): Remove
|
||||||
|
@ -63,12 +63,6 @@ static void free_content_elements (tui_win_content,
|
|||||||
** PUBLIC FUNCTIONS
|
** PUBLIC FUNCTIONS
|
||||||
**********************************/
|
**********************************/
|
||||||
|
|
||||||
int
|
|
||||||
tui_win_is_source_type (enum tui_win_type win_type)
|
|
||||||
{
|
|
||||||
return (win_type == SRC_WIN || win_type == DISASSEM_WIN);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
tui_win_is_auxillary (enum tui_win_type win_type)
|
tui_win_is_auxillary (enum tui_win_type win_type)
|
||||||
{
|
{
|
||||||
|
@ -255,6 +255,9 @@ public:
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Make this window visible or invisible. */
|
||||||
|
virtual void make_visible (int visible);
|
||||||
|
|
||||||
/* Methods to scroll the contents of this window. Note that they
|
/* Methods to scroll the contents of this window. Note that they
|
||||||
are named with "_scroll" coming at the end because the more
|
are named with "_scroll" coming at the end because the more
|
||||||
obvious "scroll_forward" is defined as a macro in term.h. */
|
obvious "scroll_forward" is defined as a macro in term.h. */
|
||||||
@ -295,6 +298,8 @@ public:
|
|||||||
return m_has_locator;
|
return m_has_locator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void make_visible (int visible) override;
|
||||||
|
|
||||||
/* Does the locator belong to this window? */
|
/* Does the locator belong to this window? */
|
||||||
bool m_has_locator = false;
|
bool m_has_locator = false;
|
||||||
/* Execution information window. */
|
/* Execution information window. */
|
||||||
@ -388,6 +393,10 @@ struct tui_cmd_window : public tui_win_info
|
|||||||
|
|
||||||
void clear_detail () override;
|
void clear_detail () override;
|
||||||
|
|
||||||
|
void make_visible (int visible) override
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
int start_line = 0;
|
int start_line = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@ -403,7 +412,6 @@ protected:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
extern int tui_win_is_source_type (enum tui_win_type win_type);
|
|
||||||
extern int tui_win_is_auxillary (enum tui_win_type win_type);
|
extern int tui_win_is_auxillary (enum tui_win_type win_type);
|
||||||
extern void tui_set_win_highlight (struct tui_win_info *win_info,
|
extern void tui_set_win_highlight (struct tui_win_info *win_info,
|
||||||
int highlight);
|
int highlight);
|
||||||
|
@ -211,6 +211,22 @@ tui_make_invisible (struct tui_gen_win_info *win_info)
|
|||||||
make_visible (win_info, 0);
|
make_visible (win_info, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* See tui-data.h. */
|
||||||
|
|
||||||
|
void
|
||||||
|
tui_win_info::make_visible (int visible)
|
||||||
|
{
|
||||||
|
::make_visible (&generic, visible);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* See tui-data.h. */
|
||||||
|
|
||||||
|
void
|
||||||
|
tui_source_window_base::make_visible (int visible)
|
||||||
|
{
|
||||||
|
::make_visible (execution_info, visible);
|
||||||
|
tui_win_info::make_visible (visible);
|
||||||
|
}
|
||||||
|
|
||||||
/* Makes all windows invisible (except the command and locator
|
/* Makes all windows invisible (except the command and locator
|
||||||
windows). */
|
windows). */
|
||||||
@ -221,17 +237,8 @@ make_all_visible (int visible)
|
|||||||
|
|
||||||
for (i = 0; i < MAX_MAJOR_WINDOWS; i++)
|
for (i = 0; i < MAX_MAJOR_WINDOWS; i++)
|
||||||
{
|
{
|
||||||
if (tui_win_list[i] != NULL
|
if (tui_win_list[i] != NULL)
|
||||||
&& ((tui_win_list[i])->generic.type) != CMD_WIN)
|
tui_win_list[i]->make_visible (visible);
|
||||||
{
|
|
||||||
if (tui_win_is_source_type ((tui_win_list[i])->generic.type))
|
|
||||||
{
|
|
||||||
tui_source_window_base *base
|
|
||||||
= (tui_source_window_base *) tui_win_list[i];
|
|
||||||
make_visible (base->execution_info, visible);
|
|
||||||
}
|
|
||||||
make_visible (&tui_win_list[i]->generic, visible);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
Reference in New Issue
Block a user