2 * Copyright (C) 2007-2014 Andre Noll <maan@systemlinux.org>
4 * Licensed under the GPL v2. For licencing details see COPYING.
7 /** \file gui.h symbols used by gui and gui_theme */
9 /** How to display one status item. */
10 struct stat_item_data {
11 const char *prefix; /**< Text to print before the item content. */
12 const char *postfix; /**< Text to print after item content. */
13 unsigned x; /**< Horizontal start coordinate for this item. */
14 unsigned y; /**< Vertical start coordinate for this item. */
15 unsigned len; /**< Item width, including \a prefix and \a postfix. */
16 int fg; /**< Foreground color. */
17 int bg; /**< Background color. */
18 int align; /**< How to align this item. */
21 /** Theme definition. */
23 /** Printed at startup. */
25 /** Also printed at startup. */
27 /** Foreground color of the status bar. */
29 /** Background color of the status bar. */
31 /** Foreground for the name and args of the executing process. */
33 /** Background for the name and args of the executing process. */
35 /** Foreground color for stdout of the executing process. */
37 /** Background color for stdout of the executing process. */
39 /** Foreground color for log messages of moderate severity. */
41 /** Background color for log messages of moderate severity. */
43 /** Foreground color for severe log messages. */
45 /** Background color for severe log messages. */
47 /** Foreground color for the separator line. */
49 /** Background color for the separator line. */
51 /** The character for the separator line. */
53 /** Default foreground color, see assume_default_colors(3). */
55 /** Default background color. */
57 /** Default number of lines of the top window. */
58 int top_lines_default;
59 /** Minimal admissible number of lines to display the top window. */
61 /** Minimal admissible number of lines to display this theme. */
63 /** Minimal admissible number of columns to display this theme. */
65 /** Individual status item properties. */
66 struct stat_item_data data[NUM_STAT_ITEMS];
69 void theme_init(const char *name, struct gui_theme *t);
70 void theme_prev(struct gui_theme *t);
71 void theme_next(struct gui_theme *t);
73 /** Status item text should be left-aligned. */
75 /** Status item text should be right-aligned. */
77 /** Status item text should be displayed centered. */