login

<     >

2014-11-07 18:06:15 (UTC-02:00)

Marcel Rodrigues <marcelgmr@gmail.com>

Add colors.

diff --git a/config.h b/config.h
index 87ea5d3..1918d56 100644
--- a/config.h
+++ b/config.h
@@ -17,7 +17,11 @@
 #define RVK_TG_HIDDEN   "s"
 
 /* Colors available: DEFAULT, RED, GREEN, YELLOW, BLUE, CYAN, MAGENTA, WHITE. */
-#define RVC_CWD         BLUE
-#define RVC_STATUS      GREEN
+#define RVC_CWD         GREEN
+#define RVC_STATUS      BLUE
+#define RVC_BORDER      CYAN
+#define RVC_FILE        DEFAULT
+#define RVC_DIR         DEFAULT
+#define RVC_HIDDEN      MAGENTA
 
 #define RV_JUMP         10

diff --git a/rover.c b/rover.c
index 56a1ee6..646e1f2 100644
--- a/rover.c
+++ b/rover.c
@@ -140,10 +140,15 @@ update_browser()
     for (i = 0, j = rover.scroll; i < HEIGHT && j < rover.nfiles; i++, j++) {
         if (j == rover.fsel)
             wattr_on(rover.window, A_REVERSE, NULL);
-        (void) mvwhline(rover.window, i + 1, 1,
-                        ' ', COLS - 2);
-        (void) mvwaddnstr(rover.window, i + 1, 1,
-                          rover.fnames[j], COLS - 2);
+        if (rover.fnames[j][0] == '.')
+            wcolor_set(rover.window, RVC_HIDDEN, NULL);
+        else if (strchr(rover.fnames[j], '/') != NULL)
+            wcolor_set(rover.window, RVC_DIR, NULL);
+        else
+            wcolor_set(rover.window, RVC_FILE, NULL);
+        (void) mvwhline(rover.window, i + 1, 1, ' ', COLS - 2);
+        (void) mvwaddnstr(rover.window, i + 1, 1, rover.fnames[j], COLS - 2);
+        wcolor_set(rover.window, DEFAULT, NULL);
         if (j == rover.fsel)
             wattr_off(rover.window, A_REVERSE, NULL);
     }
@@ -180,7 +185,9 @@ cd()
         free(rover.fnames);
     rover.nfiles = ls(rover.cwd, &rover.fnames, rover.flags);
     (void) wclear(rover.window);
+    wcolor_set(rover.window, RVC_BORDER, NULL);
     wborder(rover.window, 0, 0, 0, 0, 0, 0, 0, 0);
+    wcolor_set(rover.window, DEFAULT, NULL);
     update_browser();
     refresh();
 }