Thanks to visit codestin.com
Credit goes to code.neomutt.org

NeoMutt  2025-12-11-189-gceedb6
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
functions.c
Go to the documentation of this file.
1
22
28
29#include "config.h"
30#ifdef _MAKEDOC
31#include "docs/makedoc_defs.h"
32#else
33#include <stddef.h>
34#include "gui/lib.h"
35#include "key/lib.h"
36#include "menu/lib.h"
37#include "ncrypt/lib.h"
38#endif
39
40// clang-format off
44static const struct MenuFuncOp OpPgp[] = { /* map: pgp */
45 { "exit", OP_EXIT },
46 { "verify-key", OP_VERIFY_KEY },
47 { "view-name", OP_VIEW_ID },
48 { NULL, 0 },
49};
50
54static const struct MenuFuncOp OpSmime[] = { /* map: smime */
55 { "exit", OP_EXIT },
56#ifdef CRYPT_BACKEND_GPGME
57 { "verify-key", OP_VERIFY_KEY },
58 { "view-name", OP_VIEW_ID },
59#endif
60 { NULL, 0 },
61};
62
66static const struct MenuOpSeq PgpDefaultBindings[] = { /* map: pgp */
67 { OP_EXIT, "q" },
68 { OP_VERIFY_KEY, "c" },
69 { OP_VIEW_ID, "%" },
70 { 0, NULL },
71};
72
76static const struct MenuOpSeq SmimeDefaultBindings[] = { /* map: smime */
77 { OP_EXIT, "q" },
78#ifdef CRYPT_BACKEND_GPGME
79 { OP_VERIFY_KEY, "c" },
80 { OP_VIEW_ID, "%" },
81#endif
82 { 0, NULL },
83};
84// clang-format on
85
89void pgp_init_keys(struct SubMenu *sm_generic)
90{
91 struct MenuDefinition *md = NULL;
92 struct SubMenu *sm = NULL;
93
95 md = km_register_menu(MENU_PGP, "pgp");
96 km_menu_add_submenu(md, sm);
97 km_menu_add_submenu(md, sm_generic);
99
101 md = km_register_menu(MENU_SMIME, "smime");
102 km_menu_add_submenu(md, sm);
103 km_menu_add_submenu(md, sm_generic);
105}
Convenience wrapper for the gui headers.
void km_menu_add_submenu(struct MenuDefinition *md, struct SubMenu *sm)
Add a SubMenu to a Menu Definition.
Definition init.c:123
struct SubMenu * km_register_submenu(const struct MenuFuncOp functions[])
Register a submenu.
Definition init.c:91
struct MenuDefinition * km_register_menu(int menu, const char *name)
Register a menu.
Definition init.c:107
void km_menu_add_bindings(struct MenuDefinition *md, const struct MenuOpSeq bindings[])
Add Keybindings to a Menu.
Definition init.c:136
Manage keymappings.
GUI present the user with a selectable list.
static const struct MenuFuncOp OpSmime[]
Functions for the Smime Menu.
Definition functions.c:54
void pgp_init_keys(struct SubMenu *sm_generic)
Initialise the PGP Keybindings - Implements ::init_keys_api.
Definition functions.c:89
static const struct MenuFuncOp OpPgp[]
Functions for the Pgp Menu.
Definition functions.c:44
static const struct MenuOpSeq PgpDefaultBindings[]
Key bindings for the Pgp Menu.
Definition functions.c:66
static const struct MenuOpSeq SmimeDefaultBindings[]
Key bindings for the Smime Menu.
Definition functions.c:76
API for encryption/signing of emails.
Functions for a Dialog or Window.
Definition menu.h:81
Mapping between a function and an operation.
Definition menu.h:39
Mapping between an operation and a key sequence.
Definition menu.h:49
Collection of related functions.
Definition menu.h:69
@ MENU_PGP
PGP encryption menu.
Definition type.h:46
@ MENU_SMIME
SMIME encryption menu.
Definition type.h:50