comparison mcabber/src/screen.c @ 1295:33cb828282d5

Fix recognizing of bright colors
author Michal 'vorner' Vaner <vorner@ucw.cz>
date Tue, 28 Aug 2007 11:24:58 +0200
parents 86caabe72f3a
children 7a0eaa53bd53
comparison
equal deleted inserted replaced
1294:86caabe72f3a 1295:33cb828282d5
239 239
240 scr_LogPrint(LPRINT_LOGNORM, "ERROR: Wrong color: %s", name); 240 scr_LogPrint(LPRINT_LOGNORM, "ERROR: Wrong color: %s", name);
241 return -1; 241 return -1;
242 } 242 }
243 243
244 static int get_user_color(const char *color)
245 {
246 bool isbright = false;
247 int cl;
248 if (!strncmp(color, "bright", 6)) {
249 isbright = true;
250 color += 6;
251 }
252 cl = color_to_color_fg(FindColorInternal(color));
253 if (cl < 0)
254 return cl;
255 if (isbright)
256 cl += COLOR_BLACK_BOLD_FG - COLOR_BLACK_FG;
257 return cl;
258 }
259
244 static void ensure_string_htable(GHashTable **table, 260 static void ensure_string_htable(GHashTable **table,
245 GDestroyNotify value_destroy_func) 261 GDestroyNotify value_destroy_func)
246 { 262 {
247 if (*table)//Have it already 263 if (*table)//Have it already
248 return; 264 return;
300 } 316 }
301 g_free(snick);//They are not saved in the hash 317 g_free(snick);//They are not saved in the hash
302 g_free(mnick); 318 g_free(mnick);
303 need_update = true; 319 need_update = true;
304 } else { 320 } else {
305 int cl = color_to_color_fg(FindColorInternal(color)); 321 int cl = get_user_color(color);
306 if (cl < 0) { 322 if (cl < 0) {
307 scr_LogPrint(LPRINT_NORMAL, "No such color name"); 323 scr_LogPrint(LPRINT_NORMAL, "No such color name");
308 g_free(snick); 324 g_free(snick);
309 g_free(mnick); 325 g_free(mnick);
310 } else { 326 } else {
371 } else { 387 } else {
372 scr_LogPrint(LPRINT_NORMAL, "No such color rule, nothing removed"); 388 scr_LogPrint(LPRINT_NORMAL, "No such color rule, nothing removed");
373 return FALSE; 389 return FALSE;
374 } 390 }
375 } else { 391 } else {
376 bool isbright = false; 392 int cl = get_user_color(color);
377 int cl;
378 if (!strncmp(color, "bright", 6)) {
379 isbright = true;
380 color += 6;
381 }
382 cl = color_to_color_fg(FindColorInternal(color));
383 if (isbright)
384 cl += COLOR_BLACK_BOLD_FG - COLOR_BLACK_FG;
385 if (cl < 0 ) { 393 if (cl < 0 ) {
386 scr_LogPrint(LPRINT_NORMAL, "No such color name"); 394 scr_LogPrint(LPRINT_NORMAL, "No such color name");
387 return FALSE; 395 return FALSE;
388 } 396 }
389 if (found) { 397 if (found) {