NeoMutt  2025-12-11-949-g4870ee
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
menudef.h
Go to the documentation of this file.
1
22
23#ifndef MUTT_KEY_MENUDEF_H
24#define MUTT_KEY_MENUDEF_H
25
26#include "mutt/lib.h"
27#include "keymap.h"
28
32struct SubMenu
33{
35 const struct MenuFuncOp *functions;
36 struct KeymapList keymaps;
37};
38ARRAY_HEAD(SubMenuArray, struct SubMenu *);
39
44{
45 int id;
46 const char *name;
47 struct SubMenuArray submenus;
48};
49ARRAY_HEAD(MenuDefinitionArray, struct MenuDefinition *);
50
51void submenu_free(struct SubMenu **pptr);
52struct SubMenu *submenu_new (void);
53
54void menudef_free(struct MenuDefinition **pptr);
55struct MenuDefinition *menudef_new (void);
56
57#endif /* MUTT_KEY_MENUDEF_H */
#define ARRAY_HEAD(name, T)
Define a named struct for arrays of elements of a certain type.
Definition array.h:47
Keymap handling.
void submenu_free(struct SubMenu **pptr)
Free a SubMenu.
Definition menudef.c:38
struct MenuDefinition * menudef_new(void)
Create a new MenuDefinition.
Definition menudef.c:84
struct SubMenu * submenu_new(void)
Create a new SubMenu.
Definition menudef.c:53
void menudef_free(struct MenuDefinition **pptr)
Free a MenuDefinition.
Definition menudef.c:66
Convenience wrapper for the library headers.
Functions for a Dialog or Window.
Definition menudef.h:44
struct SubMenuArray submenus
Parts making up the Menu.
Definition menudef.h:47
const char * name
Menu name, e.g. "alias".
Definition menudef.h:46
int id
Menu ID, e.g. MENU_ALIAS.
Definition menudef.h:45
Mapping between a function and an operation.
Definition menu.h:37
Collection of related functions.
Definition menudef.h:33
const struct MenuFuncOp * functions
All available functions.
Definition menudef.h:35
struct KeymapList keymaps
All keybindings.
Definition menudef.h:36
struct MenuDefinition * parent
Primary parent.
Definition menudef.h:34