]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - gui.c
gui: Avoid magic number in enum gui_color_pair.
[paraslash.git] / gui.c
diff --git a/gui.c b/gui.c
index 7507eea4cbe0364f837d94761ae36aa626dddd04..49f595137ac4c18315ba36e9fa5ffbdef2f69663 100644 (file)
--- a/gui.c
+++ b/gui.c
@@ -53,7 +53,7 @@ static struct ringbuffer *bot_win_rb;
 
 static unsigned scroll_position;
 
-static int curses_active;
+static bool curses_active;
 static pid_t cmd_pid;
 
 static int command_fds[2] = {-1, -1};
@@ -63,15 +63,23 @@ static struct gui_args_info conf;
 enum {GETCH_MODE, COMMAND_MODE, EXTERNAL_MODE};
 
 
-#define COLOR_STATUSBAR 52
-#define COLOR_COMMAND 53
-#define COLOR_OUTPUT 54
-#define COLOR_MSG 55
-#define COLOR_ERRMSG 56
-#define COLOR_WELCOME 57
-#define COLOR_SEPARATOR 58
-#define COLOR_TOP 59
-#define COLOR_BOT 60
+/**
+ * Codes for various colors.
+ *
+ * Each status item has its own color pair. The ones defined here start at a
+ * higher number so that they do not overlap with these.
+ */
+enum gui_color_pair {
+       COLOR_STATUSBAR = NUM_STAT_ITEMS + 1,
+       COLOR_COMMAND,
+       COLOR_OUTPUT,
+       COLOR_MSG,
+       COLOR_ERRMSG,
+       COLOR_WELCOME,
+       COLOR_SEPARATOR,
+       COLOR_TOP,
+       COLOR_BOT,
+};
 
 struct gui_command {
        const char *key;
@@ -564,7 +572,7 @@ static void shutdown_curses(void)
        if (!curses_active)
                return;
        def_prog_mode();
-       curses_active = 0;
+       curses_active = false;
        endwin();
 }
 
@@ -823,7 +831,7 @@ static void init_colors_or_die(void)
 /* (Re-)initialize the curses library. */
 static void init_curses(void)
 {
-       curses_active = 1;
+       curses_active = true;
        if (top.win && refresh() == ERR) /* refresh is really needed */
                msg_n_exit(EXIT_FAILURE, "refresh() failed\n");
        if (LINES < theme.lines_min || COLS < theme.cols_min)
@@ -887,25 +895,25 @@ static int check_key_map_args(void)
        for (i = 0; i < conf.key_map_given; ++i) {
                s = conf.key_map_arg[i];
                if (!(*s))
-                       goto err_out;
+                       goto out;
                free(tmp);
                tmp = para_strdup(s);
                if (!split_key_map(tmp, &handler, &arg))
-                       goto err_out;
+                       goto out;
                if (strlen(handler) != 1)
-                       goto err_out;
+                       goto out;
                if (*handler != 'x'
                        && *handler != 'd'
                        && *handler != 'i'
                        && *handler != 'p')
-                       goto err_out;
+                       goto out;
                if (*handler != 'i')
                        continue;
                if (find_cmd_byname(arg) < 0)
-                       goto err_out;
+                       goto out;
        }
        ret = 0;
-err_out:
+out:
        free(tmp);
        return ret;
 }
@@ -1553,7 +1561,6 @@ int main(int argc, char *argv[])
                exit(EXIT_FAILURE);
        }
        init_theme_or_die(conf.theme_arg, &theme);
-       top.lines = theme.top_lines_default;
        setup_signal_handling();
        bot_win_rb = ringbuffer_new(RINGBUFFER_SIZE);
        setlocale(LC_CTYPE, "");