]> granicus.if.org Git - neomutt/commitdiff
refactor: ATTR_SET() to mutt_curses_set_attr()
authorRichard Russon <rich@flatcap.org>
Fri, 27 Sep 2019 12:57:35 +0000 (13:57 +0100)
committerRichard Russon <rich@flatcap.org>
Sat, 28 Sep 2019 02:18:27 +0000 (03:18 +0100)
Encapsulate a curses function to reduce dependencies.

menu.c
mutt_curses.c
mutt_curses.h
pager.c

diff --git a/menu.c b/menu.c
index e210fe7f3a53fe195f6843bab2aef2fce3833136..27fcf5ef7f5f5079274957bb8f968275875825a1 100644 (file)
--- a/menu.c
+++ b/menu.c
@@ -156,7 +156,7 @@ static void print_enriched_string(int index, int attr, unsigned char *s, bool do
         /* Combining tree fg color and another bg color requires
          * having use_default_colors, because the other bg color
          * may be undefined. */
-        ATTR_SET(mutt_color_combine(ColorDefs[MT_COLOR_TREE], attr));
+        mutt_curses_set_attr(mutt_color_combine(ColorDefs[MT_COLOR_TREE], attr));
 #else
         mutt_curses_set_color(MT_COLOR_TREE);
 #endif
@@ -279,7 +279,7 @@ static void print_enriched_string(int index, int attr, unsigned char *s, bool do
         n--;
       }
       if (do_color)
-        ATTR_SET(attr);
+        mutt_curses_set_attr(attr);
     }
     else if (*s == MUTT_SPECIAL_INDEX)
     {
@@ -430,7 +430,7 @@ void menu_redraw_index(struct Menu *menu)
       menu_make_entry(buf, sizeof(buf), menu, i);
       menu_pad_string(menu, buf, sizeof(buf));
 
-      ATTR_SET(attr);
+      mutt_curses_set_attr(attr);
       mutt_window_move(menu->indexwin, i - menu->top + menu->offset, 0);
       do_color = true;
 
@@ -440,7 +440,7 @@ void menu_redraw_index(struct Menu *menu)
         if (C_ArrowCursor)
         {
           addstr("->");
-          ATTR_SET(attr);
+          mutt_curses_set_attr(attr);
           addch(' ');
         }
         else
@@ -481,7 +481,7 @@ void menu_redraw_motion(struct Menu *menu)
    * position the cursor for drawing. */
   const int old_color = menu->menu_color(menu->oldcurrent);
   mutt_window_move(menu->indexwin, menu->oldcurrent + menu->offset - menu->top, 0);
-  ATTR_SET(old_color);
+  mutt_curses_set_attr(old_color);
 
   if (C_ArrowCursor)
   {
@@ -536,7 +536,7 @@ void menu_redraw_current(struct Menu *menu)
   if (C_ArrowCursor)
   {
     addstr("->");
-    ATTR_SET(attr);
+    mutt_curses_set_attr(attr);
     addch(' ');
     menu_pad_string(menu, buf, sizeof(buf));
     print_enriched_string(menu->current, attr, (unsigned char *) buf, true);
index 12146455a04c2d4a9f0c14a0c18ebf6482c27a0c..68c32f8c6ebcad793f638612eff5abde3fe31fb1 100644 (file)
 #include "mutt_curses.h"
 #include "color.h"
 
+/**
+ * mutt_curses_set_attr - Set the attributes for text
+ * @param attr Attributes to set, e.g. A_UNDERLINE
+ */
+void mutt_curses_set_attr(int attr)
+{
+#ifdef HAVE_BKGDSET
+  bkgdset(attr | ' ');
+#endif
+}
+
 /**
  * mutt_curses_set_color - Set the current colour for text
  * @param color Colour to set, e.g. #MT_COLOR_HEADER
index 6c76e01f9e24d3459685fffaa5c07d152ae566b3..6b9df2d0371eccfa952693f468ed54f3ba7f3dab 100644 (file)
@@ -102,13 +102,8 @@ void mutt_curs_set(int cursor);
 #define CI_is_return(ch) (((ch) == '\r') || ((ch) == '\n'))
 #endif
 
+void mutt_curses_set_attr(int attr);
 void mutt_curses_set_color(enum ColorId color);
 void mutt_resize_screen(void);
 
-#ifdef HAVE_BKGDSET
-#define ATTR_SET(X) bkgdset(X | ' ')
-#else
-#define ATTR_SET attrset
-#endif
-
 #endif /* MUTT_MUTT_CURSES_H */
diff --git a/pager.c b/pager.c
index 84743ce7d93ded7a9eb15460778423d8371f6420..4389301c9aba5b7650c8ddbabb0ebd54284721dc 100644 (file)
--- a/pager.c
+++ b/pager.c
@@ -480,7 +480,7 @@ static void resolve_color(struct Line *line_info, int n, int cnt,
 
   if (color != last_color)
   {
-    ATTR_SET(color);
+    mutt_curses_set_attr(color);
     last_color = color;
   }
 }
@@ -1875,7 +1875,7 @@ static int display_line(FILE *fp, LOFF_T *last_pos, struct Line **line_info,
     else
       def_color = ColorDefs[(*line_info)[m].type];
 
-    ATTR_SET(def_color);
+    mutt_curses_set_attr(def_color);
   }
 
   if (col < pager_window->cols)