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;
case COMMAND_MODE:
ret = wgetch(top.win);
if (ret != ERR && ret != KEY_RESIZE) {
- if (command_fds[0] >= 0) {
- close(command_fds[0]);
- command_fds[0] = -1;
- }
- if (command_fds[1] >= 0) {
- close(command_fds[1]);
- command_fds[1] = -1;
- }
if (cmd_pid)
kill(cmd_pid, SIGTERM);
return -1;