Mercurial > ~mikael > mcabber > hg
comparison mcabber/src/screen.c @ 267:8d3d5bd52da3
Improve color configuration
* Rename color options (it made no sense!!)
* Use default values
* Do not crash anymore when the colors options are buggy in the mcabberrc
author | mikael@frmp8452 |
---|---|
date | Sun, 03 Jul 2005 00:21:59 +0100 |
parents | 49e9e02dd6d0 |
children | 3c07026f1b47 |
comparison
equal
deleted
inserted
replaced
266:2b0db4b458eb | 267:8d3d5bd52da3 |
---|---|
132 return -1; | 132 return -1; |
133 } | 133 } |
134 | 134 |
135 void ParseColors(void) | 135 void ParseColors(void) |
136 { | 136 { |
137 char *colors[11] = { | 137 char *colors[8] = { |
138 "", "", | 138 "", "", |
139 "borderlines", | 139 "general", |
140 "jidonline", | |
141 "newmsg", | 140 "newmsg", |
142 "jidofflineselected", | 141 "rosterselect", |
143 "jidoffline", | 142 "rosternormal", |
144 "text", | |
145 NULL | 143 NULL |
146 }; | 144 }; |
147 | 145 |
148 char *tmp = malloc(1024); | 146 char *tmp = malloc(1024); |
149 char *color1; | 147 char *color; |
150 char *background = cfg_read("color_background"); | 148 char *background = cfg_read("color_background"); |
151 char *backselected = cfg_read("color_backselected"); | 149 char *backselected = cfg_read("color_backselected"); |
152 int i = 0; | 150 int i = 0; |
153 | 151 |
152 // Default values | |
153 if (!background) background = "blue"; | |
154 if (!backselected) backselected = "cyan"; | |
155 | |
154 while (colors[i]) { | 156 while (colors[i]) { |
155 sprintf(tmp, "color_%s", colors[i]); | 157 sprintf(tmp, "color_%s", colors[i]); |
156 color1 = cfg_read(tmp); | 158 color = cfg_read(tmp); |
157 | 159 |
158 switch (i + 1) { | 160 switch (i + 1) { |
159 case 1: | 161 case 1: |
160 init_pair(1, COLOR_BLACK, COLOR_WHITE); | 162 init_pair(1, COLOR_BLACK, COLOR_WHITE); |
161 break; | 163 break; |
162 case 2: | 164 case 2: |
163 init_pair(2, COLOR_WHITE, COLOR_BLACK); | 165 init_pair(2, COLOR_WHITE, COLOR_BLACK); |
164 break; | 166 break; |
165 case 3: | 167 case 3: |
166 init_pair(3, FindColor(color1), FindColor(background)); | 168 init_pair(3, ((color) ? FindColor(color) : COLOR_WHITE), |
169 FindColor(background)); | |
167 break; | 170 break; |
168 case 4: | 171 case 4: |
169 init_pair(4, FindColor(color1), FindColor(backselected)); | 172 init_pair(4, ((color) ? FindColor(color) : COLOR_RED), |
173 FindColor(background)); | |
170 break; | 174 break; |
171 case 5: | 175 case 5: |
172 init_pair(5, FindColor(color1), FindColor(background)); | 176 init_pair(5, ((color) ? FindColor(color) : COLOR_BLACK), |
177 FindColor(backselected)); | |
173 break; | 178 break; |
174 case 6: | 179 case 6: |
175 init_pair(6, FindColor(color1), FindColor(backselected)); | 180 init_pair(6, ((color) ? FindColor(color) : COLOR_MAGENTA), |
176 break; | 181 FindColor(background)); |
177 case 7: | |
178 init_pair(7, FindColor(color1), FindColor(background)); | |
179 break; | |
180 case 8: | |
181 init_pair(8, FindColor(color1), FindColor(background)); | |
182 break; | 182 break; |
183 } | 183 } |
184 i++; | 184 i++; |
185 } | 185 } |
186 } | 186 } |