NeoMutt  2024-04-25-97-g7d2481
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
mview.h
Go to the documentation of this file.
1
24#ifndef MUTT_MVIEW_H
25#define MUTT_MVIEW_H
26
27#include <stdbool.h>
28#include <sys/types.h>
29
30struct Email;
31struct EmailArray;
32struct Mailbox;
33struct Notify;
34struct NotifyCallback;
35
40{
41 off_t vsize;
42 char *pattern;
43 struct PatternList *limit_pattern;
46
47 struct Menu *menu;
48
49 bool collapsed : 1;
50
51 struct Mailbox *mailbox;
52 struct Notify *notify;
53};
54
61{
65};
66
71{
72 struct MailboxView *mv;
73};
74
75void mview_free (struct MailboxView **ptr);
77struct MailboxView *mview_new (struct Mailbox *m, struct Notify *parent);
78void mview_update (struct MailboxView *mv);
79bool mview_has_limit (const struct MailboxView *mv);
80struct Mailbox * mview_mailbox (struct MailboxView *mv);
81
82bool message_is_tagged(struct Email *e);
83struct Email *mutt_get_virt_email(struct Mailbox *m, int vnum);
84
85int ea_add_tagged(struct EmailArray *ea, struct MailboxView *mv, struct Email *e, bool use_tagged);
86
87bool mutt_limit_current_thread(struct MailboxView *mv, struct Email *e);
88
89#endif /* MUTT_MVIEW_H */
int mview_mailbox_observer(struct NotifyCallback *nc)
Notification that a Mailbox has changed - Implements observer_t -.
Definition: mview.c:325
struct Email * mutt_get_virt_email(struct Mailbox *m, int vnum)
Get a virtual Email.
Definition: mview.c:418
NotifyMview
Types of MailboxView Event.
Definition: mview.h:61
@ NT_MVIEW_DELETE
The Mview is about to be destroyed.
Definition: mview.h:63
@ NT_MVIEW_CHANGE
The Mview has changed.
Definition: mview.h:64
@ NT_MVIEW_ADD
The Mview has been opened.
Definition: mview.h:62
struct Mailbox * mview_mailbox(struct MailboxView *mv)
Wrapper to get the mailbox in a MailboxView, or NULL.
Definition: mview.c:450
bool mutt_limit_current_thread(struct MailboxView *mv, struct Email *e)
Limit the email view to the current thread.
Definition: mview.c:481
void mview_free(struct MailboxView **ptr)
Free a MailboxView.
Definition: mview.c:50
int ea_add_tagged(struct EmailArray *ea, struct MailboxView *mv, struct Email *e, bool use_tagged)
Get an array of the tagged Emails.
Definition: mview.c:378
bool message_is_tagged(struct Email *e)
Is a message in the index tagged (and within limit)
Definition: mview.c:364
void mview_update(struct MailboxView *mv)
Update the MailboxView's message counts.
Definition: mview.c:139
bool mview_has_limit(const struct MailboxView *mv)
Is a limit active?
Definition: mview.c:439
struct MailboxView * mview_new(struct Mailbox *m, struct Notify *parent)
Create a new MailboxView.
Definition: mview.c:91
The envelope/body of an email.
Definition: email.h:39
int vnum
Virtual message number.
Definition: email.h:114
An Event that happened to an MailboxView.
Definition: mview.h:71
struct MailboxView * mv
The MailboxView this Event relates to.
Definition: mview.h:72
View of a Mailbox.
Definition: mview.h:40
bool collapsed
Are all threads collapsed?
Definition: mview.h:49
struct Menu * menu
Needed for pattern compilation.
Definition: mview.h:47
off_t vsize
Size (in bytes) of the messages shown.
Definition: mview.h:41
struct Notify * notify
Notifications: NotifyMview, EventMview.
Definition: mview.h:52
struct PatternList * limit_pattern
Compiled limit pattern.
Definition: mview.h:43
struct ThreadsContext * threads
Threads context.
Definition: mview.h:44
int msg_in_pager
Message currently shown in the pager.
Definition: mview.h:45
struct Mailbox * mailbox
Current Mailbox.
Definition: mview.h:51
char * pattern
Limit pattern string.
Definition: mview.h:42
A mailbox.
Definition: mailbox.h:79
Definition: lib.h:79
Data passed to a notification function.
Definition: observer.h:34
Notification API.
Definition: notify.c:53
The "current" threading state.
Definition: mutt_thread.h:43