1 #ifndef THEME_H
2 #define THEME_H
3 
4 #include <stdint.h>
5 
6 typedef enum {
7     THEME_DEFAULT,
8     THEME_LIGHT,
9     THEME_DARK,
10     THEME_HIGHCONTRAST,
11     THEME_CUSTOM,
12     THEME_ZENBURN,
13     THEME_SOLARIZED_LIGHT,
14     THEME_SOLARIZED_DARK,
15     // TODO: THEME_XRESOURCE
16 } THEME;
17 
18 /* Colors for drawing the backgrounds */
19 extern uint32_t COLOR_BKGRND_MAIN;
20 extern uint32_t COLOR_BKGRND_ALT;
21 extern uint32_t COLOR_BKGRND_AUX;
22 extern uint32_t COLOR_BKGRND_MENU;
23 extern uint32_t COLOR_BKGRND_MENU_HOVER;
24 extern uint32_t COLOR_BKGRND_MENU_ACTIVE;
25 extern uint32_t COLOR_BKGRND_LIST;
26 extern uint32_t COLOR_BKGRND_LIST_HOVER;
27 
28 extern uint32_t COLOR_MAIN_TEXT;
29 extern uint32_t COLOR_MAIN_TEXT_CHAT;
30 extern uint32_t COLOR_MAIN_TEXT_SUBTEXT;
31 extern uint32_t COLOR_MAIN_TEXT_ACTION;
32 extern uint32_t COLOR_MAIN_TEXT_QUOTE;
33 extern uint32_t COLOR_MAIN_TEXT_RED;
34 extern uint32_t COLOR_MAIN_TEXT_URL;
35 extern uint32_t COLOR_MAIN_TEXT_HINT;
36 
37 extern uint32_t COLOR_MSG_USER;
38 extern uint32_t COLOR_MSG_USER_PEND;
39 extern uint32_t COLOR_MSG_USER_ERROR;
40 extern uint32_t COLOR_MSG_CONTACT;
41 
42 extern uint32_t COLOR_MENU_TEXT;
43 extern uint32_t COLOR_MENU_TEXT_SUBTEXT;
44 extern uint32_t COLOR_MENU_TEXT_ACTIVE;
45 
46 extern uint32_t COLOR_LIST_TEXT;
47 extern uint32_t COLOR_LIST_TEXT_SUBTEXT;
48 
49 extern uint32_t COLOR_AUX_EDGE_NORMAL;
50 extern uint32_t COLOR_AUX_EDGE_HOVER;
51 extern uint32_t COLOR_AUX_EDGE_ACTIVE;
52 extern uint32_t COLOR_AUX_TEXT;
53 extern uint32_t COLOR_AUX_ACTIVEOPTION_BKGRND;
54 extern uint32_t COLOR_AUX_ACTIVEOPTION_TEXT;
55 
56 extern uint32_t COLOR_GROUP_SELF;
57 extern uint32_t COLOR_GROUP_PEER;
58 extern uint32_t COLOR_GROUP_AUDIO;
59 extern uint32_t COLOR_GROUP_MUTED;
60 
61 extern uint32_t COLOR_SELECTION_BACKGROUND;
62 extern uint32_t COLOR_SELECTION_TEXT;
63 
64 extern uint32_t COLOR_EDGE_NORMAL;
65 extern uint32_t COLOR_EDGE_ACTIVE;
66 extern uint32_t COLOR_EDGE_HOVER;
67 
68 extern uint32_t COLOR_ACTIVEOPTION_BKGRND;
69 extern uint32_t COLOR_ACTIVEOPTION_TEXT;
70 
71 extern uint32_t COLOR_STATUS_ONLINE;
72 extern uint32_t COLOR_STATUS_AWAY;
73 
74 extern uint32_t COLOR_STATUS_BUSY;
75 extern uint32_t COLOR_BTN_SUCCESS_BKGRND;
76 extern uint32_t COLOR_BTN_SUCCESS_TEXT;
77 extern uint32_t COLOR_BTN_SUCCESS_BKGRND_HOVER;
78 extern uint32_t COLOR_BTN_SUCCESS_TEXT_HOVER;
79 
80 extern uint32_t COLOR_BTN_WARNING_BKGRND;
81 extern uint32_t COLOR_BTN_WARNING_TEXT;
82 extern uint32_t COLOR_BTN_WARNING_BKGRND_HOVER;
83 extern uint32_t COLOR_BTN_WARNING_TEXT_HOVER;
84 
85 extern uint32_t COLOR_BTN_DANGER_BACKGROUND;
86 extern uint32_t COLOR_BTN_DANGER_TEXT;
87 extern uint32_t COLOR_BTN_DANGER_BKGRND_HOVER;
88 extern uint32_t COLOR_BTN_DANGER_TEXT_HOVER;
89 
90 extern uint32_t COLOR_BTN_DISABLED_BKGRND;
91 extern uint32_t COLOR_BTN_DISABLED_TEXT;
92 extern uint32_t COLOR_BTN_DISABLED_BKGRND_HOVER;
93 extern uint32_t COLOR_BTN_DISABLED_TRANSFER;
94 
95 extern uint32_t COLOR_BTN_INPROGRESS_BKGRND;
96 extern uint32_t COLOR_BTN_INPROGRESS_TEXT;
97 extern uint32_t COLOR_BTN_DISABLED_FORGRND;
98 extern uint32_t COLOR_BTN_INPROGRESS_FORGRND;
99 
100 void theme_load(const THEME loadtheme);
101 
102 extern uint32_t status_color[4];
103 
104 #endif
105