NeoMutt
2025-12-11-1039-g550ac6
Teaching an old dog new tricks
DOXYGEN
Toggle main menu visibility
Loading...
Searching...
No Matches
module.c
Go to the documentation of this file.
1
22
28
29
#include "config.h"
30
#include <stdbool.h>
31
#include <stddef.h>
32
#include "
mutt/lib.h
"
33
#include "
config/lib.h
"
34
#include "
core/lib.h
"
35
#include "
module_data.h
"
36
37
extern
struct
ConfigDef
ComposeVars
[];
38
42
static
bool
compose_init
(
struct
NeoMutt
*n)
43
{
44
struct
ComposeModuleData
*mod_data =
MUTT_MEM_CALLOC
(1,
struct
ComposeModuleData
);
45
neomutt_set_module_data
(n,
MODULE_ID_COMPOSE
, mod_data);
46
47
mod_data->
notify
=
notify_new
();
48
notify_set_parent
(mod_data->
notify
, n->
notify
);
49
50
return
true
;
51
}
52
56
static
bool
compose_config_define_variables
(
struct
NeoMutt
*n,
struct
ConfigSet
*cs)
57
{
58
return
cs_register_variables
(cs,
ComposeVars
);
59
}
60
64
static
bool
compose_cleanup
(
struct
NeoMutt
*n,
void
*data)
65
{
66
struct
ComposeModuleData
*mod_data = data;
67
68
notify_free
(&mod_data->
notify
);
69
70
FREE
(&mod_data);
71
return
true
;
72
}
73
77
const
struct
Module
ModuleCompose
= {
78
MODULE_ID_COMPOSE
,
79
"compose"
,
80
compose_init
,
81
NULL,
// config_define_types
82
compose_config_define_variables
,
83
NULL,
// commands_register
84
NULL,
// gui_init
85
NULL,
// gui_cleanup
86
compose_cleanup
,
87
};
ComposeVars
struct ConfigDef ComposeVars[]
Config definitions for compose.
Definition
config.c:74
ModuleCompose
const struct Module ModuleCompose
Module for the Compose library.
Definition
module.c:77
compose_init
static bool compose_init(struct NeoMutt *n)
Initialise a Module - Implements Module::init().
Definition
module.c:42
compose_cleanup
static bool compose_cleanup(struct NeoMutt *n, void *data)
Clean up a Module - Implements Module::cleanup().
Definition
module.c:64
compose_config_define_variables
static bool compose_config_define_variables(struct NeoMutt *n, struct ConfigSet *cs)
Define the Config Variables - Implements Module::config_define_variables().
Definition
module.c:56
module_data.h
Compose private Module data.
lib.h
Convenience wrapper for the config headers.
cs_register_variables
bool cs_register_variables(const struct ConfigSet *cs, struct ConfigDef vars[])
Register a set of config items.
Definition
set.c:290
lib.h
Convenience wrapper for the core headers.
FREE
#define FREE(x)
Free memory and set the pointer to NULL.
Definition
memory.h:68
MUTT_MEM_CALLOC
#define MUTT_MEM_CALLOC(n, type)
Definition
memory.h:52
MODULE_ID_COMPOSE
@ MODULE_ID_COMPOSE
ModuleCompose, Compose an Email
Definition
module_api.h:57
lib.h
Convenience wrapper for the library headers.
notify_new
struct Notify * notify_new(void)
Create a new notifications handler.
Definition
notify.c:62
notify_set_parent
void notify_set_parent(struct Notify *notify, struct Notify *parent)
Set the parent notification handler.
Definition
notify.c:95
notify_free
void notify_free(struct Notify **ptr)
Free a notification handler.
Definition
notify.c:75
neomutt_set_module_data
void neomutt_set_module_data(struct NeoMutt *n, enum ModuleId id, void *data)
Set the private data for a Module.
Definition
neomutt.c:680
ComposeModuleData
Compose private Module data.
Definition
module_data.h:30
ComposeModuleData::notify
struct Notify * notify
Notifications.
Definition
module_data.h:31
ConfigDef
Definition
set.h:65
ConfigSet
Container for lots of config items.
Definition
set.h:251
Module
Definition
module_api.h:104
NeoMutt
Container for Accounts, Notifications.
Definition
neomutt.h:41
NeoMutt::notify
struct Notify * notify
Notifications handler.
Definition
neomutt.h:45