X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=sidebar.c;h=869919618a4daa02ea588982300a63397464f677;hb=2709e0121568c93bd012a57dedb15456271ef025;hp=8adea8faf098323e79b8209cadf2f832d9bb00b7;hpb=82c978b426a6669d432c22f0773d807e2a974747;p=apps%2Fmadmutt.git diff --git a/sidebar.c b/sidebar.c index 8adea8f..8699196 100644 --- a/sidebar.c +++ b/sidebar.c @@ -133,7 +133,7 @@ static char * shortened_hierarchy(char * box) { return safe_strdup(box); } -char *make_sidebar_entry(char *box, int size, int new) +char *make_sidebar_entry(char *box, int size, int new, int flagged) { char *c; int i = 0, dlen = mutt_strlen (SidebarDelim); @@ -155,11 +155,22 @@ char *make_sidebar_entry(char *box, int size, int new) i = strlen(box); strncpy( entry, box, i < SidebarWidth - dlen ? i :SidebarWidth - dlen); - if ( new ) - sprintf(entry + SidebarWidth - 3 - quick_log10(size) - dlen - quick_log10(new), - "% d(%d)", size, new); - else - sprintf( entry + SidebarWidth - 1 - quick_log10(size) - dlen, "% d", size); + if ( new ) { + if (flagged>0) { + sprintf(entry + SidebarWidth - 5 - quick_log10(size) - dlen - quick_log10(new) - quick_log10(flagged), + "% d(%d)[%d]", size, new, flagged); + } else { + sprintf(entry + SidebarWidth - 3 - quick_log10(size) - dlen - quick_log10(new), + "% d(%d)", size, new); + } + } else { + if (flagged>0) { + sprintf( entry + SidebarWidth - 3 - quick_log10(size) - dlen - quick_log10(flagged), "% d[%d]", size,flagged); + } else { + sprintf( entry + SidebarWidth - 1 - quick_log10(size) - dlen, "% d", size); + } + + } if (option(OPTSHORTENHIERARCHY)) { free(box); } @@ -195,6 +206,7 @@ void set_buffystats (CONTEXT* Context) { tmp->msg_unread = Context->unread; tmp->msgcount = Context->msgcount; + tmp->msg_flagged = Context->flagged; break; } tmp = tmp->next; @@ -261,14 +273,15 @@ int draw_sidebar(int menu) { if ( Context && !strcmp( tmp->path, Context->path ) ) { printw( "%.*s", SidebarWidth - delim_len, make_sidebar_entry(basename(tmp->path), - Context->msgcount, Context->unread)); + Context->msgcount, Context->unread, Context->flagged)); tmp->msg_unread = Context->unread; tmp->msgcount = Context->msgcount; + tmp->msg_flagged = Context->flagged; } else printw( "%.*s", SidebarWidth - delim_len, make_sidebar_entry(basename(tmp->path), - tmp->msgcount,tmp->msg_unread)); + tmp->msgcount,tmp->msg_unread, tmp->msg_flagged)); lines++; } SETCOLOR(MT_COLOR_NORMAL);