colors.h revision 3515
1141098Sdes/*
2117610Sdes *  colors.h -- color attribute definitions
3117610Sdes *
4117610Sdes *  AUTHOR: Savio Lam (lam836@cs.cuhk.hk)
5117610Sdes *
6255376Sdes *  This program is free software; you can redistribute it and/or
7255376Sdes *  modify it under the terms of the GNU General Public License
8255376Sdes *  as published by the Free Software Foundation; either version 2
9117610Sdes *  of the License, or (at your option) any later version.
10117610Sdes *
11117610Sdes *  This program is distributed in the hope that it will be useful,
12141098Sdes *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13141098Sdes *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14141098Sdes *  GNU General Public License for more details.
15255376Sdes *
16255376Sdes *  You should have received a copy of the GNU General Public License
17255376Sdes *  along with this program; if not, write to the Free Software
18236109Sdes *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19236109Sdes */
20236109Sdes
21117610Sdes
22117610Sdes/*
23117610Sdes *   Default color definitions
24117610Sdes *
25117610Sdes *   *_FG = foreground
26117610Sdes *   *_BG = background
27228692Sdes *   *_HL = highlight?
28228692Sdes */
29228692Sdes#define SCREEN_FG                    COLOR_CYAN
30255376Sdes#define SCREEN_BG                    COLOR_BLUE
31255376Sdes#define SCREEN_HL                    TRUE
32255376Sdes
33228692Sdes#define SHADOW_FG                    COLOR_BLACK
34228692Sdes#define SHADOW_BG                    COLOR_BLACK
35228692Sdes#define SHADOW_HL                    TRUE
36117610Sdes
37117610Sdes#define DIALOG_FG                    COLOR_BLACK
38117610Sdes#define DIALOG_BG                    COLOR_WHITE
39255376Sdes#define DIALOG_HL                    FALSE
40255376Sdes
41255376Sdes#define TITLE_FG                     COLOR_YELLOW
42117610Sdes#define TITLE_BG                     COLOR_WHITE
43117610Sdes#define TITLE_HL                     TRUE
44117610Sdes
45117610Sdes#define BORDER_FG                    COLOR_WHITE
46117610Sdes#define BORDER_BG                    COLOR_WHITE
47117610Sdes#define BORDER_HL                    TRUE
48117610Sdes
49117610Sdes#define BUTTON_ACTIVE_FG             COLOR_WHITE
50117610Sdes#define BUTTON_ACTIVE_BG             COLOR_BLUE
51117610Sdes#define BUTTON_ACTIVE_HL             TRUE
52117610Sdes
53117610Sdes#define BUTTON_INACTIVE_FG           COLOR_BLACK
54236109Sdes#define BUTTON_INACTIVE_BG           COLOR_WHITE
55236109Sdes#define BUTTON_INACTIVE_HL           FALSE
56236109Sdes
57228692Sdes#define BUTTON_KEY_ACTIVE_FG         COLOR_WHITE
58228692Sdes#define BUTTON_KEY_ACTIVE_BG         COLOR_BLUE
59228692Sdes#define BUTTON_KEY_ACTIVE_HL         TRUE
60228692Sdes
61228692Sdes#define BUTTON_KEY_INACTIVE_FG       COLOR_RED
62228692Sdes#define BUTTON_KEY_INACTIVE_BG       COLOR_WHITE
63271947Sdes#define BUTTON_KEY_INACTIVE_HL       FALSE
64271947Sdes
65271947Sdes#define BUTTON_LABEL_ACTIVE_FG       COLOR_YELLOW
66117610Sdes#define BUTTON_LABEL_ACTIVE_BG       COLOR_BLUE
67117610Sdes#define BUTTON_LABEL_ACTIVE_HL       TRUE
68117610Sdes
69117610Sdes#define BUTTON_LABEL_INACTIVE_FG     COLOR_BLACK
70117610Sdes#define BUTTON_LABEL_INACTIVE_BG     COLOR_WHITE
71117610Sdes#define BUTTON_LABEL_INACTIVE_HL     TRUE
72117610Sdes
73117610Sdes#define INPUTBOX_FG                  COLOR_BLACK
74117610Sdes#define INPUTBOX_BG                  COLOR_WHITE
75255376Sdes#define INPUTBOX_HL                  FALSE
76255376Sdes
77255376Sdes#define INPUTBOX_BORDER_FG           COLOR_BLACK
78117610Sdes#define INPUTBOX_BORDER_BG           COLOR_WHITE
79117610Sdes#define INPUTBOX_BORDER_HL           FALSE
80117610Sdes
81228692Sdes#define SEARCHBOX_FG                 COLOR_BLACK
82228692Sdes#define SEARCHBOX_BG                 COLOR_WHITE
83228692Sdes#define SEARCHBOX_HL                 FALSE
84228692Sdes
85255376Sdes#define SEARCHBOX_TITLE_FG           COLOR_YELLOW
86174832Sdes#define SEARCHBOX_TITLE_BG           COLOR_WHITE
87174832Sdes#define SEARCHBOX_TITLE_HL           TRUE
88117610Sdes
89117610Sdes#define SEARCHBOX_BORDER_FG          COLOR_WHITE
90117610Sdes#define SEARCHBOX_BORDER_BG          COLOR_WHITE
91117610Sdes#define SEARCHBOX_BORDER_HL          TRUE
92117610Sdes
93117610Sdes#define POSITION_INDICATOR_FG        COLOR_YELLOW
94117610Sdes#define POSITION_INDICATOR_BG        COLOR_WHITE
95117610Sdes#define POSITION_INDICATOR_HL        TRUE
96117610Sdes
97117610Sdes#define MENUBOX_FG                   COLOR_BLACK
98117610Sdes#define MENUBOX_BG                   COLOR_WHITE
99117610Sdes#define MENUBOX_HL                   FALSE
100117610Sdes
101117610Sdes#define MENUBOX_BORDER_FG            COLOR_WHITE
102117610Sdes#define MENUBOX_BORDER_BG            COLOR_WHITE
103117610Sdes#define MENUBOX_BORDER_HL            TRUE
104117610Sdes
105117610Sdes#define ITEM_FG                      COLOR_BLACK
106228692Sdes#define ITEM_BG                      COLOR_WHITE
107228692Sdes#define ITEM_HL                      FALSE
108228692Sdes
109117610Sdes#define ITEM_SELECTED_FG             COLOR_WHITE
110117610Sdes#define ITEM_SELECTED_BG             COLOR_BLUE
111117610Sdes#define ITEM_SELECTED_HL             TRUE
112117610Sdes
113117610Sdes#define TAG_FG                       COLOR_YELLOW
114117610Sdes#define TAG_BG                       COLOR_WHITE
115228692Sdes#define TAG_HL                       TRUE
116228692Sdes
117228692Sdes#define TAG_SELECTED_FG              COLOR_YELLOW
118228692Sdes#define TAG_SELECTED_BG              COLOR_BLUE
119228692Sdes#define TAG_SELECTED_HL              TRUE
120228692Sdes
121228692Sdes#define TAG_KEY_FG                   COLOR_RED
122228692Sdes#define TAG_KEY_BG                   COLOR_WHITE
123228692Sdes#define TAG_KEY_HL                   TRUE
124228692Sdes
125228692Sdes#define TAG_KEY_SELECTED_FG          COLOR_RED
126228692Sdes#define TAG_KEY_SELECTED_BG          COLOR_BLUE
127228692Sdes#define TAG_KEY_SELECTED_HL          TRUE
128228692Sdes
129228692Sdes#define CHECK_FG                     COLOR_BLACK
130228692Sdes#define CHECK_BG                     COLOR_WHITE
131228692Sdes#define CHECK_HL                     FALSE
132228692Sdes
133228692Sdes#define CHECK_SELECTED_FG            COLOR_WHITE
134228692Sdes#define CHECK_SELECTED_BG            COLOR_BLUE
135228692Sdes#define CHECK_SELECTED_HL            TRUE
136228692Sdes
137117610Sdes#define UARROW_FG                    COLOR_GREEN
138117610Sdes#define UARROW_BG                    COLOR_WHITE
139117610Sdes#define UARROW_HL                    TRUE
140228692Sdes
141228692Sdes#define DARROW_FG                    COLOR_GREEN
142228692Sdes#define DARROW_BG                    COLOR_WHITE
143228692Sdes#define DARROW_HL                    TRUE
144228692Sdes
145228692Sdes/* End of default color definitions */
146228692Sdes
147228692Sdes#define C_ATTR(x,y)                  ((x ? A_BOLD : 0) | COLOR_PAIR((y)))
148228692Sdes#define COLOR_NAME_LEN               10
149228692Sdes#define COLOR_COUNT                  8
150228692Sdes
151228692Sdes
152228692Sdes/*
153228692Sdes * Global variables
154228692Sdes */
155228692Sdes
156228692Sdestypedef struct {
157228692Sdes  unsigned char name[COLOR_NAME_LEN];
158228692Sdes  int  value;
159228692Sdes} color_names_st;
160228692Sdes
161228692Sdes
162228692Sdes#ifdef __DIALOG_MAIN__
163228692Sdes
164228692Sdes/*
165228692Sdes * For matching color names with color values
166228692Sdes */
167117610Sdescolor_names_st color_names[] = {
168117610Sdes  {"BLACK",   COLOR_BLACK},
169117610Sdes  {"RED",     COLOR_RED},
170  {"GREEN",   COLOR_GREEN},
171  {"YELLOW",  COLOR_YELLOW},
172  {"BLUE",    COLOR_BLUE},
173  {"MAGENTA", COLOR_MAGENTA},
174  {"CYAN",    COLOR_CYAN},
175  {"WHITE",   COLOR_WHITE},
176};    /* color names */
177
178
179/*
180 * Table of color values
181 */
182int color_table[][3] = {
183  {SCREEN_FG,               SCREEN_BG,               SCREEN_HL               },
184  {SHADOW_FG,               SHADOW_BG,               SHADOW_HL               },
185  {DIALOG_FG,               DIALOG_BG,               DIALOG_HL               },
186  {TITLE_FG,                TITLE_BG,                TITLE_HL                },
187  {BORDER_FG,               BORDER_BG,               BORDER_HL               },
188  {BUTTON_ACTIVE_FG,        BUTTON_ACTIVE_BG,        BUTTON_ACTIVE_HL        },
189  {BUTTON_INACTIVE_FG,      BUTTON_INACTIVE_BG,      BUTTON_INACTIVE_HL      },
190  {BUTTON_KEY_ACTIVE_FG,    BUTTON_KEY_ACTIVE_BG,    BUTTON_KEY_ACTIVE_HL    },
191  {BUTTON_KEY_INACTIVE_FG,  BUTTON_KEY_INACTIVE_BG,  BUTTON_KEY_INACTIVE_HL  },
192  {BUTTON_LABEL_ACTIVE_FG,  BUTTON_LABEL_ACTIVE_BG,  BUTTON_LABEL_ACTIVE_HL  },
193  {BUTTON_LABEL_INACTIVE_FG,BUTTON_LABEL_INACTIVE_BG,BUTTON_LABEL_INACTIVE_HL},
194  {INPUTBOX_FG,             INPUTBOX_BG,             INPUTBOX_HL             },
195  {INPUTBOX_BORDER_FG,      INPUTBOX_BORDER_BG,      INPUTBOX_BORDER_HL      },
196  {SEARCHBOX_FG,            SEARCHBOX_BG,            SEARCHBOX_HL            },
197  {SEARCHBOX_TITLE_FG,      SEARCHBOX_TITLE_BG,      SEARCHBOX_TITLE_HL      },
198  {SEARCHBOX_BORDER_FG,     SEARCHBOX_BORDER_BG,     SEARCHBOX_BORDER_HL     },
199  {POSITION_INDICATOR_FG,   POSITION_INDICATOR_BG,   POSITION_INDICATOR_HL   },
200  {MENUBOX_FG,              MENUBOX_BG,              MENUBOX_HL              },
201  {MENUBOX_BORDER_FG,       MENUBOX_BORDER_BG,       MENUBOX_BORDER_HL       },
202  {ITEM_FG,                 ITEM_BG,                 ITEM_HL                 },
203  {ITEM_SELECTED_FG,        ITEM_SELECTED_BG,        ITEM_SELECTED_HL        },
204  {TAG_FG,                  TAG_BG,                  TAG_HL                  },
205  {TAG_SELECTED_FG,         TAG_SELECTED_BG,         TAG_SELECTED_HL         },
206  {TAG_KEY_FG,              TAG_KEY_BG,              TAG_KEY_HL              },
207  {TAG_KEY_SELECTED_FG,     TAG_KEY_SELECTED_BG,     TAG_KEY_SELECTED_HL     },
208  {CHECK_FG,                CHECK_BG,                CHECK_HL                },
209  {CHECK_SELECTED_FG,       CHECK_SELECTED_BG,       CHECK_SELECTED_HL       },
210  {UARROW_FG,               UARROW_BG,               UARROW_HL               },
211  {DARROW_FG,               DARROW_BG,               DARROW_HL               },
212};    /* color_table */
213
214#else
215
216extern color_names_st color_names[];
217extern int color_table[][3];
218
219#endif    /* __DIALOG_MAIN__ */
220