X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=buffy.h;h=89b6d532b0c611d375778881ee985545f64fd255;hp=1e1c55f62b158e60c4120473f598e7ab4d0a5771;hb=98f62b5fcbd680fd5214ee85e1635b84322cbdd1;hpb=bd0ed9bc7c534be30b0140b341b4d8a390483dbd diff --git a/buffy.h b/buffy.h index 1e1c55f..89b6d53 100644 --- a/buffy.h +++ b/buffy.h @@ -9,33 +9,36 @@ #ifndef _BUFFY_H #define _BUFFY_H -#include "lib/list.h" - -/*parameter to mutt_parse_mailboxes*/ -#define M_MAILBOXES 1 -#define M_UNMAILBOXES 2 - typedef struct buffy_t { - char *path; - short new; /* mailbox has new mail */ - short has_new; /* set it new if new and not read */ - int msgcount; /* total number of messages */ - int msg_unread; /* number of unread messages */ - int msg_flagged; /* number of flagged messages */ - short notified; /* user has been notified */ - short magic; /* mailbox type */ - short newly_created; /* mbox or mmdf just popped into existence */ + char *path; + short new; /* mailbox has new mail */ + short has_new; /* set it new if new and not read */ + int msgcount; /* total number of messages */ + int msg_unread; /* number of unread messages */ + int msg_flagged; /* number of flagged messages */ + short notified; /* user has been notified */ + short magic; /* mailbox type */ + short newly_created; /* mbox just popped into existence */ } BUFFY; +DO_INIT(BUFFY, buffy); +static inline void buffy_wipe(BUFFY *p) { + p_delete(&p->path); +} +DO_NEW(BUFFY, buffy); +DO_DELETE(BUFFY, buffy); + +DO_ARRAY_TYPE(BUFFY, buffy); +DO_ARRAY_FUNCS(BUFFY, buffy, buffy_delete); + +#include "buffy.li" + /* folders with incomming mail (via mailboxes command) */ -WHERE list2_t* Incoming; -WHERE short BuffyTimeout INITVAL (3); -extern time_t BuffyDoneTime; /* last time we knew for sure how much mail there was */ +extern buffy_array Incoming; -/* looks up a path in Incoming list (returns index) */ int buffy_lookup (const char*); -/* handles mailboxes commands */ -int buffy_parse_mailboxes (BUFFER*, BUFFER*, unsigned long, BUFFER*); +void buffy_do_mailboxes(const char *s, int add); + /* from given path, gets next mailbox in Incoming with new mail */ void buffy_next (char*, size_t); /* checks mailboxes for new mail (returns number) */