52 {
"sidebar-first", OP_SIDEBAR_FIRST },
53 {
"sidebar-last", OP_SIDEBAR_LAST },
54 {
"sidebar-next", OP_SIDEBAR_NEXT },
55 {
"sidebar-next-new", OP_SIDEBAR_NEXT_NEW },
56 {
"sidebar-open", OP_SIDEBAR_OPEN },
57 {
"sidebar-page-down", OP_SIDEBAR_PAGE_DOWN },
58 {
"sidebar-page-up", OP_SIDEBAR_PAGE_UP },
59 {
"sidebar-prev", OP_SIDEBAR_PREV },
60 {
"sidebar-prev-new", OP_SIDEBAR_PREV_NEW },
61 {
"sidebar-toggle-virtual", OP_SIDEBAR_TOGGLE_VIRTUAL },
62 {
"sidebar-toggle-visible", OP_SIDEBAR_TOGGLE_VISIBLE },
97 if (!(*sbep)->is_hidden)
99 wdata->
hil_index = ARRAY_FOREACH_IDX_sbep;
120 if ((*sbep)->mailbox->has_new || ((*sbep)->mailbox->msg_unread != 0))
133 struct SbEntry **sbep = NULL, **prev = NULL;
136 if (!(*sbep)->is_hidden)
159 struct SbEntry **sbep = NULL, **prev = NULL;
162 if ((*sbep)->mailbox->has_new || ((*sbep)->mailbox->msg_unread != 0))
249 if ((max_entries == 0) || (wdata->
hil_index < 0))
290 int orig_hil_index =
wdata->hil_index;
298 if (orig_hil_index ==
wdata->hil_index)
316 int orig_hil_index =
wdata->hil_index;
324 if (orig_hil_index ==
wdata->hil_index)
360 if ((max_entries == 0) || (
wdata->hil_index < 0))
366 (c_sidebar_next_new_wrap &&
424 if (!event || !win || !win->
wdata)
427 const int op =
event->op;
#define ARRAY_IDX(head, elem)
Return the index of an element of the array.
#define ARRAY_EMPTY(head)
Check if an array is empty.
#define ARRAY_FOREACH_TO(elem, head, to)
Iterate from the beginning to an index.
#define ARRAY_SIZE(head)
The number of elements stored.
#define ARRAY_FOREACH_FROM(elem, head, from)
Iterate from an index to the end.
#define ARRAY_GET(head, idx)
Return the element at index.
#define ARRAY_FOREACH_FROM_TO(elem, head, from, to)
Iterate between two indexes.
int bool_str_toggle(struct ConfigSubset *sub, const char *name, struct Buffer *err)
Toggle the value of a bool.
bool cs_subset_bool(const struct ConfigSubset *sub, const char *name)
Get a boolean config item by name.
Convenience wrapper for the config headers.
Convenience wrapper for the core headers.
struct MuttWindow * dialog_find(struct MuttWindow *win)
Find the parent Dialog of a Window.
const char * dispatcher_get_retval_name(int rv)
Get the name of a return value.
@ FR_SUCCESS
Valid function - successfully performed.
@ FR_UNKNOWN
Unknown function.
@ FR_NO_ACTION
Valid function - no action performed.
void index_change_folder(struct MuttWindow *dlg, struct Mailbox *m)
Change the current folder, cautiously.
int sb_function_dispatcher(struct MuttWindow *win, const struct KeyEvent *event)
Perform a Sidebar function - Implements function_dispatcher_t -.
#define mutt_debug(LEVEL,...)
Convenience wrapper for the gui headers.
GUI manage the main index (list of emails)
void km_menu_add_submenu(struct MenuDefinition *md, struct SubMenu *sm)
Add a SubMenu to a Menu Definition.
struct SubMenu * km_register_submenu(const struct MenuFuncOp functions[])
Register a submenu.
struct MenuDefinition * km_register_menu(int menu, const char *name)
Register a menu.
@ LL_DEBUG1
Log at debug level 1.
Convenience wrapper for the library headers.
bool mutt_window_is_visible(struct MuttWindow *win)
Is the Window visible?
void mutt_window_reflow(struct MuttWindow *win)
Resize a Window and its children.
#define WA_RECALC
Recalculate the contents of the Window.
const char * opcodes_get_name(int op)
Get the name of an opcode.
An event such as a keypress.
void * wdata
Private data.
WindowActionFlags actions
Actions to be performed, e.g. WA_RECALC.
Container for Accounts, Notifications.
struct ConfigSubset * sub
Inherited config items.
Info about folders in the sidebar.
@ MENU_SIDEBAR
Sidebar menu.