222 const char *file,
int line,
const char *func)
#define ARRAY_ADD(head, elem)
Add an element at the end of the array.
#define ARRAY_REMOVE(head, elem)
Remove an entry from the array, shifting down the subsequent entries.
#define ARRAY_FOREACH(elem, head)
Iterate over all elements of the array.
#define ARRAY_EMPTY(head)
Check if an array is empty.
#define ARRAY_FREE(head)
Release all memory.
#define ARRAY_INIT(head)
Initialize an array.
#define ARRAY_HEAD_INITIALIZER
Static initializer for arrays.
Convenience wrapper for the config headers.
void account_free(struct Account **ptr)
Free an Account.
A group of associated Mailboxes.
@ NT_ACCOUNT_ADD
Account has been added.
@ NT_ACCOUNT_DELETE_ALL
All Accounts are about to be deleted.
const char * mailbox_get_type_name(enum MailboxType type)
Get the type of a Mailbox.
Representation of a mailbox.
MailboxType
Supported mailbox formats.
@ MUTT_UNKNOWN
Mailbox wasn't recognised.
void envlist_free(char ***envp)
Free the private copy of the environment.
void mutt_exit(int code)
Leave NeoMutt NOW.
FILE * mutt_file_fopen_full(const char *path, const char *mode, const mode_t perms, const char *file, int line, const char *func)
Call fopen() safely.
#define mutt_debug(LEVEL,...)
@ LL_DEBUG3
Log at debug level 3.
@ LL_NOTIFY
Log of notifications.
#define MUTT_MEM_CALLOC(n, type)
Convenience wrapper for the library headers.
struct Notify * notify_new(void)
Create a new notifications handler.
bool notify_send(struct Notify *notify, enum NotifyType event_type, int event_subtype, void *event_data)
Send out a notification message.
void notify_set_parent(struct Notify *notify, struct Notify *parent)
Set the parent notification handler.
void notify_free(struct Notify **ptr)
Free a notification handler.
struct MailboxArray neomutt_mailboxes_get(struct NeoMutt *n, enum MailboxType type)
Get an Array of matching Mailboxes.
void neomutt_account_remove(struct NeoMutt *n, const struct Account *a)
Remove an Account from the global list.
bool neomutt_account_add(struct NeoMutt *n, struct Account *a)
Add an Account to the global list.
struct NeoMutt * neomutt_new(struct ConfigSet *cs)
Create the main NeoMutt object.
void neomutt_accounts_free(struct NeoMutt *n)
FILE * mutt_file_fopen_masked_full(const char *path, const char *mode, const char *file, int line, const char *func)
Wrapper around mutt_file_fopen_full()
void neomutt_free(struct NeoMutt **ptr)
Free a NeoMutt.
Container for Accounts, Notifications.
@ NT_ACCOUNT
Account has changed, NotifyAccount, EventAccount.
A group of associated Mailboxes.
enum MailboxType type
Type of Mailboxes this Account contains.
struct Notify * notify
Notifications: NotifyAccount, EventAccount.
struct MailboxArray mailboxes
All Mailboxes.
Container for lots of config items.
struct ConfigSet * cs
Parent ConfigSet.
enum ConfigScope scope
Scope of Subset, e.g. SET_SCOPE_ACCOUNT.
An Event that happened to an Account.
Container for Accounts, Notifications.
struct Notify * notify_timeout
Timeout notifications handler.
struct AccountArray accounts
All Accounts.
struct Notify * notify_resize
Window resize notifications handler.
char ** env
Private copy of the environment variables.
char * username
User's login name.
mode_t user_default_umask
User's default file writing permissions (inferred from umask)
char * home_dir
User's home directory.
struct Notify * notify
Notifications handler.
struct ConfigSubset * sub
Inherited config items.
locale_t time_c_locale
Current locale but LC_TIME=C.
struct ConfigSubset * cs_subset_new(const char *name, struct ConfigSubset *sub_parent, struct Notify *not_parent)
Create a new Config Subset.
void cs_subset_free(struct ConfigSubset **ptr)
Free a Config Subset.
@ SET_SCOPE_NEOMUTT
This Config is NeoMutt-specific (global)