void neomutt_free(struct NeoMutt **ptr)
Free a NeoMutt.
void * mutt_mem_calloc(size_t nmemb, size_t size)
Allocate zeroed memory on the heap.
struct AccountList accounts
List of all Accounts.
enum MailboxType type
Type of Mailboxes this Account contains.
#define STAILQ_REMOVE(head, elm, type, field)
struct Notify * notify
Notifications handler.
#define TAILQ_FOREACH(var, head, field)
An Event that happened to an Account.
size_t neomutt_mailboxlist_get_all(struct MailboxList *head, struct NeoMutt *n, enum MailboxType type)
Get a List of all Mailboxes.
#define TAILQ_INSERT_TAIL(head, elm, field)
struct Mailbox * mailbox
Mailbox in the list.
#define STAILQ_FOREACH(var, head, field)
bool notify_send(struct Notify *notify, enum NotifyType event_type, int event_subtype, void *event_data)
Send out a notification message.
struct Notify * notify_new(void)
Create a new notifications handler.
void cs_subset_free(struct ConfigSubset **ptr)
Free a Config Subset.
#define TAILQ_REMOVE(head, elm, field)
void account_free(struct Account **ptr)
Free an Account.
A group of associated Mailboxes.
struct MailboxList mailboxes
List of Mailboxes.
struct ConfigSet * cs
Parent ConfigSet.
@ MUTT_UNKNOWN
Mailbox wasn't recognised.
#define TAILQ_FOREACH_SAFE(var, head, field, tvar)
struct ConfigSubset * cs_subset_new(const char *name, struct ConfigSubset *sub_parent, struct Notify *not_parent)
Create a new Config Subset.
#define STAILQ_FOREACH_SAFE(var, head, field, tvar)
@ NT_ACCOUNT_REMOVE
An Account is about to be destroyed.
bool neomutt_account_remove(struct NeoMutt *n, struct Account *a)
Remove an Account from the global list.
@ SET_SCOPE_NEOMUTT
This Config is NeoMutt-specific (global)
#define STAILQ_INSERT_TAIL(head, elm, field)
Container for Accounts, Notifications.
struct NeoMutt * neomutt_new(struct ConfigSet *cs)
Create the main NeoMutt object.
void notify_free(struct Notify **ptr)
Free a notification handler.
Container for lots of config items.
enum ConfigScope scope
Scope of Subset, e.g. SET_SCOPE_ACCOUNT.
MailboxType
Supported mailbox formats.
struct ConfigSubset * sub
Inherited config items.
void notify_set_parent(struct Notify *notify, struct Notify *parent)
Set the parent notification handler.
bool neomutt_account_add(struct NeoMutt *n, struct Account *a)
Add an Account to the global list.
struct NeoMutt * NeoMutt
Global NeoMutt object.
@ NT_ACCOUNT_ADD
A new Account has been created.
struct Notify * notify
Notifications handler.
void neomutt_mailboxlist_clear(struct MailboxList *ml)
Free a Mailbox List.
@ NT_ACCOUNT
Account has changed, NotifyAccount, EventAccount.