Remove tui_scroll_direction enum

The tui_scroll_direction enum is not really needed, because it's
simple to adapt the various scrolling methods to use the sign of their
argument as the direction in which to scroll.

gdb/ChangeLog
2019-06-25  Tom Tromey  <tom@tromey.com>

	* tui/tui-winsource.c
	(tui_source_window_base::do_scroll_horizontal): Remove direction
	parameter.
	* tui/tui-windata.c (tui_data_window::do_scroll_vertical): Remove
	direction parameter.
	* tui/tui-win.c (tui_win_info::forward_scroll)
	(tui_win_info::backward_scroll, tui_win_info::left_scroll)
	(tui_win_info::right_scroll): Update.
	* tui/tui-source.c (tui_source_window::do_scroll_vertical): Remove
	direction parameter.
	* tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Remove
	direction parameter.
	* tui/tui-data.h (enum tui_scroll_direction): Remove.
	(struct tui_win_info) <do_scroll_vertical, do_scroll_horizontal>:
	Remove direction parameter.
	(struct tui_source_window_base, struct tui_source_window)
	(struct tui_disasm_window, struct tui_data_window)
	(struct tui_cmd_window): Update.
This commit is contained in:
Tom Tromey
2019-06-17 12:56:39 -06:00
parent 21c32dca76
commit c3bd716ffc
7 changed files with 56 additions and 76 deletions

View File

@ -1,3 +1,24 @@
2019-06-25 Tom Tromey <tom@tromey.com>
* tui/tui-winsource.c
(tui_source_window_base::do_scroll_horizontal): Remove direction
parameter.
* tui/tui-windata.c (tui_data_window::do_scroll_vertical): Remove
direction parameter.
* tui/tui-win.c (tui_win_info::forward_scroll)
(tui_win_info::backward_scroll, tui_win_info::left_scroll)
(tui_win_info::right_scroll): Update.
* tui/tui-source.c (tui_source_window::do_scroll_vertical): Remove
direction parameter.
* tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Remove
direction parameter.
* tui/tui-data.h (enum tui_scroll_direction): Remove.
(struct tui_win_info) <do_scroll_vertical, do_scroll_horizontal>:
Remove direction parameter.
(struct tui_source_window_base, struct tui_source_window)
(struct tui_disasm_window, struct tui_data_window)
(struct tui_cmd_window): Update.
2019-06-25 Tom Tromey <tom@tromey.com> 2019-06-25 Tom Tromey <tom@tromey.com>
* tui/tui-winsource.h (tui_set_exec_info_content) * tui/tui-winsource.h (tui_set_exec_info_content)

View File

@ -122,16 +122,6 @@ struct tui_gen_win_info
#define MAX_TARGET_WIDTH 10 #define MAX_TARGET_WIDTH 10
#define MAX_PID_WIDTH 19 #define MAX_PID_WIDTH 19
/* Scroll direction enum. */
enum tui_scroll_direction
{
FORWARD_SCROLL,
BACKWARD_SCROLL,
LEFT_SCROLL,
RIGHT_SCROLL
};
/* The kinds of layouts available. */ /* The kinds of layouts available. */
enum tui_layout_type enum tui_layout_type
{ {
@ -264,13 +254,11 @@ protected:
/* Scroll the contents vertically. This is only called via /* Scroll the contents vertically. This is only called via
forward_scroll and backward_scroll. */ forward_scroll and backward_scroll. */
virtual void do_scroll_vertical (enum tui_scroll_direction, virtual void do_scroll_vertical (int num_to_scroll) = 0;
int num_to_scroll) = 0;
/* Scroll the contents horizontally. This is only called via /* Scroll the contents horizontally. This is only called via
left_scroll and right_scroll. */ left_scroll and right_scroll. */
virtual void do_scroll_horizontal (enum tui_scroll_direction, virtual void do_scroll_horizontal (int num_to_scroll) = 0;
int num_to_scroll) = 0;
public: public:
@ -337,8 +325,7 @@ protected:
~tui_source_window_base () override; ~tui_source_window_base () override;
DISABLE_COPY_AND_ASSIGN (tui_source_window_base); DISABLE_COPY_AND_ASSIGN (tui_source_window_base);
void do_scroll_horizontal (enum tui_scroll_direction, void do_scroll_horizontal (int num_to_scroll) override;
int num_to_scroll) override;
public: public:
@ -396,8 +383,7 @@ struct tui_source_window : public tui_source_window_base
protected: protected:
void do_scroll_vertical (enum tui_scroll_direction, void do_scroll_vertical (int num_to_scroll) override;
int num_to_scroll) override;
}; };
/* A TUI disassembly window. */ /* A TUI disassembly window. */
@ -418,8 +404,7 @@ struct tui_disasm_window : public tui_source_window_base
protected: protected:
void do_scroll_vertical (enum tui_scroll_direction, void do_scroll_vertical (int num_to_scroll) override;
int num_to_scroll) override;
}; };
struct tui_data_window : public tui_win_info struct tui_data_window : public tui_win_info
@ -457,10 +442,8 @@ struct tui_data_window : public tui_win_info
protected: protected:
void do_scroll_vertical (enum tui_scroll_direction, void do_scroll_vertical (int num_to_scroll) override;
int num_to_scroll) override; void do_scroll_horizontal (int num_to_scroll) override
void do_scroll_horizontal (enum tui_scroll_direction,
int num_to_scroll) override
{ {
} }
}; };
@ -495,13 +478,11 @@ struct tui_cmd_window : public tui_win_info
protected: protected:
void do_scroll_vertical (enum tui_scroll_direction, void do_scroll_vertical (int num_to_scroll) override
int num_to_scroll) override
{ {
} }
void do_scroll_horizontal (enum tui_scroll_direction, void do_scroll_horizontal (int num_to_scroll) override
int num_to_scroll) override
{ {
} }
}; };

View File

@ -371,22 +371,21 @@ tui_get_low_disassembly_address (struct gdbarch *gdbarch,
/* Scroll the disassembly forward or backward vertically. */ /* Scroll the disassembly forward or backward vertically. */
void void
tui_disasm_window::do_scroll_vertical tui_disasm_window::do_scroll_vertical (int num_to_scroll)
(enum tui_scroll_direction scroll_direction, int num_to_scroll)
{ {
if (content != NULL) if (content != NULL)
{ {
CORE_ADDR pc; CORE_ADDR pc;
struct tui_line_or_address val; struct tui_line_or_address val;
int dir;
pc = content[0]->which_element.source.line_or_addr.u.addr; pc = content[0]->which_element.source.line_or_addr.u.addr;
num_to_scroll++; if (num_to_scroll >= 0)
dir = (scroll_direction == FORWARD_SCROLL) num_to_scroll++;
? num_to_scroll : -num_to_scroll; else
--num_to_scroll;
val.loa = LOA_ADDRESS; val.loa = LOA_ADDRESS;
val.u.addr = tui_find_disassembly_address (gdbarch, pc, dir); val.u.addr = tui_find_disassembly_address (gdbarch, pc, num_to_scroll);
tui_update_source_window_as_is (this, gdbarch, tui_update_source_window_as_is (this, gdbarch,
NULL, val, FALSE); NULL, val, FALSE);
} }

View File

@ -308,8 +308,7 @@ tui_source_is_displayed (const char *fullname)
/* Scroll the source forward or backward vertically. */ /* Scroll the source forward or backward vertically. */
void void
tui_source_window::do_scroll_vertical tui_source_window::do_scroll_vertical (int num_to_scroll)
(enum tui_scroll_direction scroll_direction, int num_to_scroll)
{ {
if (content != NULL) if (content != NULL)
{ {
@ -323,23 +322,15 @@ tui_source_window::do_scroll_vertical
s = cursal.symtab; s = cursal.symtab;
l.loa = LOA_LINE; l.loa = LOA_LINE;
if (scroll_direction == FORWARD_SCROLL) l.u.line_no = content[0]->which_element.source.line_or_addr.u.line_no
{ + num_to_scroll;
l.u.line_no = content[0]->which_element.source.line_or_addr.u.line_no if (l.u.line_no > s->nlines)
+ num_to_scroll; /* line = s->nlines - win_info->content_size + 1; */
if (l.u.line_no > s->nlines) /* elz: fix for dts 23398. */
/* line = s->nlines - win_info->content_size + 1; */ l.u.line_no
/* elz: fix for dts 23398. */ = content[0]->which_element.source.line_or_addr.u.line_no;
l.u.line_no if (l.u.line_no <= 0)
= content[0]->which_element.source.line_or_addr.u.line_no; l.u.line_no = 1;
}
else
{
l.u.line_no = content[0]->which_element.source.line_or_addr.u.line_no
- num_to_scroll;
if (l.u.line_no <= 0)
l.u.line_no = 1;
}
print_source_lines (s, l.u.line_no, l.u.line_no + 1, 0); print_source_lines (s, l.u.line_no, l.u.line_no + 1, 0);
} }

View File

@ -475,7 +475,7 @@ tui_win_info::forward_scroll (int num_to_scroll)
if (num_to_scroll == 0) if (num_to_scroll == 0)
num_to_scroll = height - 3; num_to_scroll = height - 3;
do_scroll_vertical (FORWARD_SCROLL, num_to_scroll); do_scroll_vertical (num_to_scroll);
} }
void void
@ -484,7 +484,7 @@ tui_win_info::backward_scroll (int num_to_scroll)
if (num_to_scroll == 0) if (num_to_scroll == 0)
num_to_scroll = height - 3; num_to_scroll = height - 3;
do_scroll_vertical (BACKWARD_SCROLL, num_to_scroll); do_scroll_vertical (-num_to_scroll);
} }
@ -494,7 +494,7 @@ tui_win_info::left_scroll (int num_to_scroll)
if (num_to_scroll == 0) if (num_to_scroll == 0)
num_to_scroll = 1; num_to_scroll = 1;
do_scroll_horizontal (LEFT_SCROLL, num_to_scroll); do_scroll_horizontal (num_to_scroll);
} }
@ -504,7 +504,7 @@ tui_win_info::right_scroll (int num_to_scroll)
if (num_to_scroll == 0) if (num_to_scroll == 0)
num_to_scroll = 1; num_to_scroll = 1;
do_scroll_horizontal (RIGHT_SCROLL, num_to_scroll); do_scroll_horizontal (-num_to_scroll);
} }

View File

@ -243,8 +243,7 @@ tui_check_data_values (struct frame_info *frame)
/* Scroll the data window vertically forward or backward. */ /* Scroll the data window vertically forward or backward. */
void void
tui_data_window::do_scroll_vertical tui_data_window::do_scroll_vertical (int num_to_scroll)
(enum tui_scroll_direction scroll_direction, int num_to_scroll)
{ {
int first_element_no; int first_element_no;
int first_line = (-1); int first_line = (-1);
@ -259,10 +258,7 @@ tui_data_window::do_scroll_vertical
if (first_line >= 0) if (first_line >= 0)
{ {
if (scroll_direction == FORWARD_SCROLL) first_line += num_to_scroll;
first_line += num_to_scroll;
else
first_line -= num_to_scroll;
tui_erase_data_content (NULL); tui_erase_data_content (NULL);
tui_delete_data_content_windows (); tui_delete_data_content_windows ();
tui_display_data_from_line (first_line); tui_display_data_from_line (first_line);

View File

@ -332,21 +332,13 @@ tui_source_window_base::refill ()
/* Scroll the source forward or backward horizontally. */ /* Scroll the source forward or backward horizontally. */
void void
tui_source_window_base::do_scroll_horizontal tui_source_window_base::do_scroll_horizontal (int num_to_scroll)
(enum tui_scroll_direction direction, int num_to_scroll)
{ {
if (content != NULL) if (content != NULL)
{ {
int offset; int offset = horizontal_offset + num_to_scroll;
if (offset < 0)
if (direction == LEFT_SCROLL) offset = 0;
offset = horizontal_offset + num_to_scroll;
else
{
offset = horizontal_offset - num_to_scroll;
if (offset < 0)
offset = 0;
}
horizontal_offset = offset; horizontal_offset = offset;
refill (); refill ();
} }