NeoMutt  2021-02-05-666-ge300cd
Teaching an old dog new tricks
Go to the documentation of this file.
26 #include <stdbool.h>
27 #include <stdint.h>
29 struct Email;
34 struct MuttThread
35 {
36  bool fake_thread : 1;
37  bool duplicate_thread : 1;
38  bool sort_children : 1;
39  bool check_subject : 1;
40  bool visible : 1;
41  bool deep : 1;
42  unsigned int subtree_visible : 2;
45  struct MuttThread *parent;
46  struct MuttThread *child;
47  struct MuttThread *next;
48  struct MuttThread *prev;
49  struct Email *message;
51  struct Email *sort_aux_key;
52 };
54 void clean_references (struct MuttThread *brk, struct MuttThread *cur);
55 struct Email *find_virtual (struct MuttThread *cur, bool reverse);
56 void insert_message (struct MuttThread **add, struct MuttThread *parent, struct MuttThread *cur);
57 bool is_descendant (struct MuttThread *a, struct MuttThread *b);
58 void mutt_break_thread (struct Email *e);
59 void thread_hash_destructor(int type, void *obj, intptr_t data);
60 void unlink_message (struct MuttThread **old, struct MuttThread *cur);
62 #endif /* MUTT_EMAIL_THREAD_H */
void clean_references(struct MuttThread *brk, struct MuttThread *cur)
Update email references for a broken Thread.
Definition: thread.c:181
struct MuttThread * next
Next sibling Thread.
Definition: thread.h:47
The envelope/body of an email.
Definition: email.h:37
struct Email * sort_thread_key
Email that controls how top thread sorts.
Definition: thread.h:50
bool is_descendant(struct MuttThread *a, struct MuttThread *b)
Is one thread a descendant of another.
Definition: thread.c:44
bool deep
Is the Thread deeply nested?
Definition: thread.h:41
void thread_hash_destructor(int type, void *obj, intptr_t data)
Hash Destructor callback - Implements hash_hdata_free_t.
Definition: thread.c:119
void mutt_break_thread(struct Email *e)
Break the email Thread.
Definition: thread.c:233
struct MuttThread * parent
Parent of this Thread.
Definition: thread.h:45
bool next_subtree_visible
Is the next Thread subtree visible?
Definition: thread.h:43
struct Email * sort_aux_key
Email that controls how subthread siblings sort.
Definition: thread.h:51
struct MuttThread * prev
Previous sibling Thread.
Definition: thread.h:48
bool old
Email is seen, but unread.
Definition: email.h:50
void insert_message(struct MuttThread **add, struct MuttThread *parent, struct MuttThread *cur)
Insert a message into a thread.
Definition: thread.c:102
struct MuttThread * child
Child of this Thread.
Definition: thread.h:46
bool duplicate_thread
Duplicated Email in Thread.
Definition: thread.h:37
bool fake_thread
Emails grouped by Subject.
Definition: thread.h:36
void unlink_message(struct MuttThread **old, struct MuttThread *cur)
Break the message out of the thread.
Definition: thread.c:64
struct Email * find_virtual(struct MuttThread *cur, bool reverse)
Find an email with a Virtual message number.
Definition: thread.c:130
unsigned int subtree_visible
Is this Thread subtree visible?
Definition: thread.h:42
struct Email * message
Email this Thread refers to.
Definition: thread.h:49
An Email conversation.
Definition: thread.h:34
bool sort_children
Sort the children.
Definition: thread.h:38
bool visible
Is this Thread visible?
Definition: thread.h:40
bool check_subject
Should the Subject be checked?
Definition: thread.h:39