X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=flags.c;h=d25aca7e2049cfc9d8d0101429b69cc121217879;hp=aca2dcfb2e4ae968d409d60ecb20e8ffe09913eb;hb=7db27b8f24670fd40cf24755f2782a104ad24594;hpb=8ab1ab66eb1c4b95f9b2a5ed9c2b2cf1dfa74544 diff --git a/flags.c b/flags.c index aca2dcf..d25aca7 100644 --- a/flags.c +++ b/flags.c @@ -11,14 +11,12 @@ #include #include -#include #include +#include #include "mutt.h" #include "sort.h" -#include - void _mutt_set_flag (CONTEXT * ctx, HEADER * h, int flag, int bf, int upd_ctx) { @@ -284,7 +282,7 @@ int mutt_thread_set_flag (HEADER * hdr, int flag, int bf, int subthread) if ((Sort & SORT_MASK) != SORT_THREADS) { mutt_error _("Threading is not enabled."); - return (-1); + return -1; } if (!subthread) @@ -296,7 +294,7 @@ int mutt_thread_set_flag (HEADER * hdr, int flag, int bf, int subthread) mutt_set_flag (Context, cur->message, flag, bf); if ((cur = cur->child) == NULL) - return (0); + return 0; for (;;) { if (cur->message) @@ -310,7 +308,7 @@ int mutt_thread_set_flag (HEADER * hdr, int flag, int bf, int subthread) while (!cur->next) { cur = cur->parent; if (cur == start) - return (0); + return 0; } cur = cur->next; } @@ -320,6 +318,8 @@ int mutt_thread_set_flag (HEADER * hdr, int flag, int bf, int subthread) int mutt_change_flag(HEADER * h, int bf) { + char buf[STRING]; + const char letters[] = "dDnNoOrR*!"; static char const actions[] = { ['d'] = M_DELETE, ['D'] = M_DELETE, ['n'] = M_NEW, ['N'] = M_NEW, @@ -331,23 +331,12 @@ int mutt_change_flag(HEADER * h, int bf) int c; - mvwprintw(main_w, LINES - 1, 0, "%s? (D/N/O/r/*/!): ", + snprintf(buf, sizeof(buf), "%s? (D/N/O/r/*/!): ", bf ? _("Set flag") : _("Clear flag")); - wclrtoeol(main_w); - - c = mutt_getch().ch; - if (c == -1) { - CLEARLINE(main_w, LINES - 1); - return (-1); - } - - CLEARLINE(main_w, LINES - 1); - - if (c < 0 || c > countof(actions) || !actions[c]) { - BEEP(); + c = mutt_multi_choice(buf, letters); + if (c <= 0) return -1; - } - + c = letters[c - 1]; if (actions[c] == M_OLD) { if (h) { mutt_set_flag(Context, h, M_READ, !bf);