38#ifdef USE_DEBUG_WINDOW
75 if (!(*wp)->state.visible)
77 rows +=
MAX(0, (*wp)->req_rows);
126 struct MuttWindow *win_top = wp_top ? *wp_top : NULL;
140#ifdef USE_DEBUG_WINDOW
165 if (!(*wp)->state.visible)
167 if (keep_msgwin && ((*wp)->type ==
WT_MESSAGE))
178#ifdef USE_DEBUG_WINDOW
#define ARRAY_FIRST(head)
Convenience method to get the first element.
#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_LAST(head)
Convenience method to get the last element.
#define ARRAY_SIZE(head)
The number of elements stored.
#define ARRAY_GET(head, idx)
Return the element at index.
Convenience wrapper for the core headers.
Convenience wrapper for the debug headers.
void debug_win_dump(void)
Dump all windows to debug output.
#define MAX(a, b)
Return the maximum of two values.
@ MODULE_ID_GUI
ModuleGui, Graphical code
struct MuttWindow * msgcont_new(void)
Create a new Message Container.
int msgcont_num_windows(void)
Count the Windows in the Message Container.
void msgcont_push_window(struct MuttWindow *win)
Add a window to the Container Stack.
void msgcont_recalc_rows(void)
Recalculate the Bottom Bar height.
struct MuttWindow * msgcont_pop_window(void)
Remove the last Window from the Container Stack.
struct MuttWindow * msgcont_get_msgwin(void)
Get the Message Window.
bool msgwin_has_text(void)
Does the Message Window currently hold any text?
Convenience wrapper for the library headers.
void window_redraw(struct MuttWindow *win)
Reflow, recalc and repaint a tree of Windows.
void mutt_window_reflow(struct MuttWindow *win)
Resize a Window and its children.
void mutt_window_add_child(struct MuttWindow *parent, struct MuttWindow *child)
Add a child to Window.
struct MuttWindow * mutt_window_new(enum WindowType type, enum MuttWindowOrientation orient, enum MuttWindowSize size, int cols, int rows)
Create a new Window.
void window_set_visible(struct MuttWindow *win, bool visible)
Set a Window visible or hidden.
@ WT_MESSAGE
Window for messages/errors.
@ WT_CONTAINER
Invisible shaping container Window.
@ MUTT_WIN_ORIENT_VERTICAL
Window uses all available vertical space.
@ WA_RECALC
Recalculate the contents of the Window.
#define MUTT_WIN_SIZE_UNLIMITED
Use as much space as possible.
@ MUTT_WIN_SIZE_MAXIMISE
Window wants as much space as possible.
void * neomutt_get_module_data(struct NeoMutt *n, enum ModuleId id)
Get the private data for a Module.
struct MuttWindow * message_container
Message Container Window.
struct MuttWindow * bottom_bar
Bottom Bar Container Window.
struct MuttWindowArray children
Children Windows.
short req_rows
Number of rows required.
WindowActionFlags actions
Actions to be performed, e.g. WA_RECALC.
enum WindowType type
Window type, e.g. WT_SIDEBAR.
Container for Accounts, Notifications.