Introduce enum tui_box
authorTom Tromey <tom@tromey.com>
Mon, 17 Jun 2019 23:15:23 +0000 (17:15 -0600)
committerTom Tromey <tom@tromey.com>
Tue, 25 Jun 2019 13:48:42 +0000 (07:48 -0600)
This adds a new enum to the TUI, replacing two #define constants,
providing better type safety.

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

* tui/tui-wingeneral.h (tui_make_window): Change type of "box_it"
parameter.
* tui/tui-wingeneral.c (tui_make_window): Change type of "box_it"
parameter.
(tui_gen_win_info::make_visible): Update.
* tui/tui-layout.c (init_and_make_win): Change type of "box_it"
parameter.
* tui/tui-data.h (enum tui_box): New enum.
(BOX_WINDOW, DONT_BOX_WINDOW): Remove defines.

gdb/ChangeLog
gdb/tui/tui-data.h
gdb/tui/tui-layout.c
gdb/tui/tui-wingeneral.c
gdb/tui/tui-wingeneral.h

index db76928..3188663 100644 (file)
@@ -1,5 +1,17 @@
 2019-06-25  Tom Tromey  <tom@tromey.com>
 
+       * tui/tui-wingeneral.h (tui_make_window): Change type of "box_it"
+       parameter.
+       * tui/tui-wingeneral.c (tui_make_window): Change type of "box_it"
+       parameter.
+       (tui_gen_win_info::make_visible): Update.
+       * tui/tui-layout.c (init_and_make_win): Change type of "box_it"
+       parameter.
+       * tui/tui-data.h (enum tui_box): New enum.
+       (BOX_WINDOW, DONT_BOX_WINDOW): Remove defines.
+
+2019-06-25  Tom Tromey  <tom@tromey.com>
+
        * tui/tui-layout.c (make_source_or_disasm_window): Always use
        init_and_make_win for EXEC_INFO_WIN.
        * tui/tui-data.h (struct tui_gen_win_info) <~tui_gen_win_info>: No
index 9c45d6f..95c9161 100644 (file)
@@ -91,6 +91,13 @@ struct tui_gen_win_info
   char *title = nullptr;
 };
 
+/* Whether or not a window should be drawn with a box.  */
+enum tui_box
+{
+  DONT_BOX_WINDOW = 0,
+  BOX_WINDOW
+};
+
 /* Constant definitions.  */
 #define DEFAULT_TAB_LEN         8
 #define NO_SRC_STRING           "[ No Source Available ]"
@@ -104,8 +111,6 @@ struct tui_gen_win_info
 #define DISASSEM_NAME           "asm"
 #define TUI_NULL_STR            ""
 #define DEFAULT_HISTORY_COUNT  25
-#define BOX_WINDOW              TRUE
-#define DONT_BOX_WINDOW         FALSE
 #define HILITE                  TRUE
 #define NO_HILITE               FALSE
 #define WITH_LOCATOR            TRUE
index 695fa35..6507b06 100644 (file)
@@ -45,7 +45,8 @@
 static void show_layout (enum tui_layout_type);
 static tui_gen_win_info *init_and_make_win (tui_gen_win_info *,
                                            enum tui_win_type,
-                                           int, int, int, int, int);
+                                           int, int, int, int,
+                                           enum tui_box);
 static void show_source_or_disasm_and_command (enum tui_layout_type);
 static struct tui_win_info *make_source_or_disasm_window (enum tui_win_type, 
                                                          int, int);
@@ -793,7 +794,7 @@ init_and_make_win (tui_gen_win_info *win_info,
                   enum tui_win_type win_type,
                   int height, int width, 
                   int origin_x, int origin_y,
-                  int box_it)
+                  enum tui_box box_it)
 {
   if (win_info == NULL)
     {
index acb8a26..cfa4a08 100644 (file)
@@ -146,7 +146,7 @@ tui_check_and_display_highlight_if_needed (struct tui_win_info *win_info)
 
 
 void
-tui_make_window (struct tui_gen_win_info *win_info, int box_it)
+tui_make_window (struct tui_gen_win_info *win_info, enum tui_box box_it)
 {
   WINDOW *handle;
 
@@ -175,7 +175,8 @@ tui_gen_win_info::make_visible (bool visible)
     {
       if (!is_visible)
        {
-         tui_make_window (this, !tui_win_is_auxillary (type));
+         tui_make_window (this, (tui_win_is_auxillary (type)
+                                 ? DONT_BOX_WINDOW : BOX_WINDOW));
          is_visible = true;
        }
     }
index 15e61c9..e925606 100644 (file)
@@ -32,7 +32,7 @@ extern void tui_make_visible (struct tui_gen_win_info *);
 extern void tui_make_invisible (struct tui_gen_win_info *);
 extern void tui_make_all_visible (void);
 extern void tui_make_all_invisible (void);
-extern void tui_make_window (struct tui_gen_win_info *, int);
+extern void tui_make_window (struct tui_gen_win_info *, enum tui_box);
 extern struct tui_win_info *tui_copy_win (struct tui_win_info *);
 extern void tui_box_win (struct tui_gen_win_info *, int);
 extern void tui_highlight_win (struct tui_win_info *);