]> granicus.if.org Git - neomutt/commitdiff
refactor: printw() to mutt_window_printf()
authorRichard Russon <rich@flatcap.org>
Fri, 27 Sep 2019 15:22:13 +0000 (16:22 +0100)
committerRichard Russon <rich@flatcap.org>
Sat, 28 Sep 2019 02:18:42 +0000 (03:18 +0100)
Encapsulate a curses function to reduce dependencies.

compose.c
edit.c
enter.c
mutt_window.c
mutt_window.h
pager.c
sidebar.c

index a60d6745d406ecfa82a07ded59884f7a306dac60..76109a0dbb52f8b2d57235fff2298f35ee69288a 100644 (file)
--- a/compose.c
+++ b/compose.c
@@ -428,18 +428,18 @@ static void redraw_crypt_lines(struct ComposeRedrawData *rd)
       (e->security & APPLICATION_PGP) && (e->security & SEC_SIGN))
   {
     mutt_curses_set_color(MT_COLOR_COMPOSE_HEADER);
-    printw("%*s", HeaderPadding[HDR_CRYPTINFO], _(Prompts[HDR_CRYPTINFO]));
+    mutt_window_printf("%*s", HeaderPadding[HDR_CRYPTINFO], _(Prompts[HDR_CRYPTINFO]));
     mutt_curses_set_color(MT_COLOR_NORMAL);
-    printw("%s", C_PgpSignAs ? C_PgpSignAs : _("<default>"));
+    mutt_window_printf("%s", C_PgpSignAs ? C_PgpSignAs : _("<default>"));
   }
 
   if (((WithCrypto & APPLICATION_SMIME) != 0) &&
       (e->security & APPLICATION_SMIME) && (e->security & SEC_SIGN))
   {
     mutt_curses_set_color(MT_COLOR_COMPOSE_HEADER);
-    printw("%*s", HeaderPadding[HDR_CRYPTINFO], _(Prompts[HDR_CRYPTINFO]));
+    mutt_window_printf("%*s", HeaderPadding[HDR_CRYPTINFO], _(Prompts[HDR_CRYPTINFO]));
     mutt_curses_set_color(MT_COLOR_NORMAL);
-    printw("%s", C_SmimeSignAs ? C_SmimeSignAs : _("<default>"));
+    mutt_window_printf("%s", C_SmimeSignAs ? C_SmimeSignAs : _("<default>"));
   }
 
   if (((WithCrypto & APPLICATION_SMIME) != 0) && (e->security & APPLICATION_SMIME) &&
@@ -448,7 +448,7 @@ static void redraw_crypt_lines(struct ComposeRedrawData *rd)
     mutt_curses_set_color(MT_COLOR_COMPOSE_HEADER);
     mutt_window_mvprintw(rd->win, HDR_CRYPTINFO, 40, "%s", _("Encrypt with: "));
     mutt_curses_set_color(MT_COLOR_NORMAL);
-    printw("%s", NONULL(C_SmimeEncryptWith));
+    mutt_window_printf("%s", NONULL(C_SmimeEncryptWith));
   }
 
 #ifdef USE_AUTOCRYPT
@@ -457,7 +457,7 @@ static void redraw_crypt_lines(struct ComposeRedrawData *rd)
   if (C_Autocrypt)
   {
     mutt_curses_set_color(MT_COLOR_COMPOSE_HEADER);
-    printw("%*s", HeaderPadding[HDR_AUTOCRYPT], _(Prompts[HDR_AUTOCRYPT]));
+    mutt_window_printf("%*s", HeaderPadding[HDR_AUTOCRYPT], _(Prompts[HDR_AUTOCRYPT]));
     mutt_curses_set_color(MT_COLOR_NORMAL);
     if (e->security & SEC_AUTOCRYPT)
     {
@@ -479,7 +479,7 @@ static void redraw_crypt_lines(struct ComposeRedrawData *rd)
                           */
                          _("Recommendation: "));
     mutt_curses_set_color(MT_COLOR_NORMAL);
-    printw("%s", _(AutocryptRecUiFlags[rd->autocrypt_rec]));
+    mutt_window_printf("%s", _(AutocryptRecUiFlags[rd->autocrypt_rec]));
   }
 #endif
 }
diff --git a/edit.c b/edit.c
index 5cb870b9bdc53782b862f81512489988b7b7b4ad..29f7d44ad4da4649c52990fe8a71801f0bb8bc9b 100644 (file)
--- a/edit.c
+++ b/edit.c
@@ -182,7 +182,7 @@ static int be_barf_file(const char *path, char **buf, int buflen)
     fputs(buf[i], fp);
   if (fclose(fp) == 0)
     return 0;
-  printw("fclose: %s\n", strerror(errno));
+  mutt_window_printf("fclose: %s\n", strerror(errno));
   return -1;
 }
 
@@ -257,7 +257,7 @@ static char **be_include_messages(char *msg, char **buf, int *bufmax,
       buf[(*buflen)++] = mutt_str_strdup("\n");
     }
     else
-      printw(_("%d: invalid message number.\n"), n);
+      mutt_window_printf(_("%d: invalid message number.\n"), n);
     msg = NULL;
   }
   return buf;
@@ -534,7 +534,7 @@ int mutt_builtin_editor(const char *path, struct Email *e_new, struct Email *e_c
               mutt_env_to_local(e_new->env);
               mutt_edit_headers(NONULL(C_Visual), path, e_new, NULL, 0);
               if (mutt_env_to_intl(e_new->env, &tag, &err))
-                printw(_("Bad IDN in '%s': '%s'"), tag, err);
+                mutt_window_printf(_("Bad IDN in '%s': '%s'"), tag, err);
               /* tag is a statically allocated string and should not be freed */
               FREE(&err);
             }
@@ -554,7 +554,7 @@ int mutt_builtin_editor(const char *path, struct Email *e_new, struct Email *e_c
           done = true;
           break;
         default:
-          printw(_("%s: unknown editor command (~? for help)\n"), tmp);
+          mutt_window_printf(_("%s: unknown editor command (~? for help)\n"), tmp);
           break;
       }
     }
diff --git a/enter.c b/enter.c
index 3433ebb05d5c4cc17d9bd92d157f0dc5d53bc0f4..1750801060db8d9688f83fde148c6fe2025b9df1 100644 (file)
--- a/enter.c
+++ b/enter.c
@@ -76,10 +76,10 @@ static int my_addwch(wchar_t wc)
   if (IsWPrint(wc) && (n > 0))
     return mutt_addwch(wc);
   if (!(wc & ~0x7f))
-    return printw("^%c", ((int) wc + 0x40) & 0x7f);
+    return mutt_window_printf("^%c", ((int) wc + 0x40) & 0x7f);
   if (!(wc & ~0xffff))
-    return printw("\\u%04x", (int) wc);
-  return printw("\\u%08x", (int) wc);
+    return mutt_window_printf("\\u%04x", (int) wc);
+  return mutt_window_printf("\\u%08x", (int) wc);
 }
 
 /**
index f6f9ca6cef3d9cd9177d9c56dd85c4865bd66788..51c484172c94178e428f373178a7a89d7d86c6f5 100644 (file)
@@ -411,3 +411,19 @@ void mutt_window_move_abs(int row, int col)
 {
   move(row, col);
 }
+
+/**
+ * mutt_window_printf - Write a formatted string to a Window
+ * @param fmt Format string
+ * @param ... Arguments
+ * @retval num Number of characters written
+ */
+int mutt_window_printf(const char *fmt, ...)
+{
+  va_list ap;
+  va_start(ap, fmt);
+  int rc = vw_printw(stdscr, fmt, ap);
+  va_end(ap);
+
+  return rc;
+}
index 81d2e94cd705f367f7f967a214196ff8cdfd0e54..ac3c0e6ee46a78a2116763e2d90da37c688bee51 100644 (file)
@@ -68,5 +68,6 @@ int  mutt_window_move     (struct MuttWindow *win, int row, int col);
 void mutt_window_move_abs (int row, int col);
 int  mutt_window_mvaddstr (struct MuttWindow *win, int row, int col, const char *str);
 int  mutt_window_mvprintw (struct MuttWindow *win, int row, int col, const char *fmt, ...);
+int  mutt_window_printf   (const char *format, ...);
 
 #endif /* MUTT_MUTT_WINDOW_H */
diff --git a/pager.c b/pager.c
index bd0a680fcd044799f0eaaf8635d67dc2d59b1c28..5c63186ed596c5a4c947e1da24edf705a314c927 100644 (file)
--- a/pager.c
+++ b/pager.c
@@ -1487,7 +1487,7 @@ static int format_line(struct Line **line_info, int n, unsigned char *buf,
         break;
       col += 4;
       if (pa)
-        printw("\\%03o", buf[ch]);
+        mutt_window_printf("\\%03o", buf[ch]);
       k = 1;
       continue;
     }
@@ -1586,7 +1586,7 @@ static int format_line(struct Line **line_info, int n, unsigned char *buf,
         break;
       col += 2;
       if (pa)
-        printw("^%c", ('@' + wc) & 0x7f);
+        mutt_window_printf("^%c", ('@' + wc) & 0x7f);
     }
     else if (wc < 0x100)
     {
@@ -1594,7 +1594,7 @@ static int format_line(struct Line **line_info, int n, unsigned char *buf,
         break;
       col += 4;
       if (pa)
-        printw("\\%03o", wc);
+        mutt_window_printf("\\%03o", wc);
     }
     else
     {
index ba35213792c254275c3f028f7ecc6ab65d22bea2..b0ead8acb9e537d3afb0b5a4ebd1316713a29d83 100644 (file)
--- a/sidebar.c
+++ b/sidebar.c
@@ -949,7 +949,7 @@ static void draw_sidebar(int num_rows, int num_cols, int div_width)
     }
     char str[256];
     make_sidebar_entry(str, sizeof(str), w, sidebar_folder_name, entry);
-    printw("%s", str);
+    mutt_window_printf("%s", str);
     mutt_buffer_pool_release(&short_folder_name);
     row++;
   }