Mercurial > pidgin.yaz
annotate console/libgnt/gntcolors.c @ 14301:9df5dd999402
[gaim-migrate @ 16991]
The color configurations should work now.
committer: Tailor Script <tailor@pidgin.im>
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Wed, 23 Aug 2006 02:34:40 +0000 |
parents | ea5193c23171 |
children | a8632e4bd849 |
rev | line source |
---|---|
13850
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
1 #include <ncursesw/ncurses.h> |
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
2 #include "gntcolors.h" |
14299
ea5193c23171
[gaim-migrate @ 16989]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14256
diff
changeset
|
3 #include "gntstyle.h" |
13850
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
4 |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
5 #include <glib.h> |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
6 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
7 #include <stdlib.h> |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
8 #include <string.h> |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
9 |
13964
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
10 static struct |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
11 { |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
12 short r, g, b; |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
13 } colors[GNT_TOTAL_COLORS]; |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
14 |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
15 static void |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
16 backup_colors() |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
17 { |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
18 short i; |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
19 for (i = 0; i < GNT_TOTAL_COLORS; i++) |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
20 { |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
21 color_content(i, &colors[i].r, |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
22 &colors[i].g, &colors[i].b); |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
23 } |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
24 } |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
25 |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
26 static gboolean |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
27 can_use_custom_color() |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
28 { |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
29 return (gnt_style_get_bool(GNT_STYLE_COLOR, FALSE) && can_change_color()); |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
30 } |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
31 |
13964
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
32 static void |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
33 restore_colors() |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
34 { |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
35 short i; |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
36 for (i = 0; i < GNT_TOTAL_COLORS; i++) |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
37 { |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
38 init_color(i, colors[i].r, |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
39 colors[i].g, colors[i].b); |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
40 } |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
41 } |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
42 |
13850
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
43 void gnt_init_colors() |
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
44 { |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
45 static gboolean init = FALSE; |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
46 |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
47 if (init) |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
48 return; |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
49 init = TRUE; |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
50 |
13964
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
51 start_color(); |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
52 use_default_colors(); |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
53 |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
54 if (can_use_custom_color()) |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
55 { |
13964
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
56 backup_colors(); |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
57 |
14256
e7de1f6d9f35
[gaim-migrate @ 16938]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14210
diff
changeset
|
58 /* Do some init_color()s */ |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
59 init_color(GNT_COLOR_BLACK, 0, 0, 0); |
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
60 init_color(GNT_COLOR_RED, 1000, 0, 0); |
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
61 init_color(GNT_COLOR_GREEN, 0, 1000, 0); |
13897
eaaf73de9188
[gaim-migrate @ 16382]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13896
diff
changeset
|
62 init_color(GNT_COLOR_BLUE, 250, 250, 700); |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
63 init_color(GNT_COLOR_WHITE, 1000, 1000, 1000); |
13896
a621329e8c85
[gaim-migrate @ 16381]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13882
diff
changeset
|
64 init_color(GNT_COLOR_GRAY, 699, 699, 699); |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
65 init_color(GNT_COLOR_DARK_GRAY, 256, 256, 256); |
13850
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
66 |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
67 /* Now some init_pair()s */ |
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
68 init_pair(GNT_COLOR_NORMAL, GNT_COLOR_BLACK, GNT_COLOR_WHITE); |
13896
a621329e8c85
[gaim-migrate @ 16381]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13882
diff
changeset
|
69 init_pair(GNT_COLOR_HIGHLIGHT, GNT_COLOR_WHITE, GNT_COLOR_BLUE); |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
70 init_pair(GNT_COLOR_SHADOW, GNT_COLOR_BLACK, GNT_COLOR_DARK_GRAY); |
13897
eaaf73de9188
[gaim-migrate @ 16382]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13896
diff
changeset
|
71 |
eaaf73de9188
[gaim-migrate @ 16382]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13896
diff
changeset
|
72 init_pair(GNT_COLOR_TITLE, GNT_COLOR_WHITE, GNT_COLOR_BLUE); |
eaaf73de9188
[gaim-migrate @ 16382]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13896
diff
changeset
|
73 init_pair(GNT_COLOR_TITLE_D, GNT_COLOR_WHITE, GNT_COLOR_GRAY); |
eaaf73de9188
[gaim-migrate @ 16382]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13896
diff
changeset
|
74 |
13896
a621329e8c85
[gaim-migrate @ 16381]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13882
diff
changeset
|
75 init_pair(GNT_COLOR_TEXT_NORMAL, GNT_COLOR_WHITE, GNT_COLOR_BLUE); |
13882
5c750626eaa5
[gaim-migrate @ 16362]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13855
diff
changeset
|
76 init_pair(GNT_COLOR_HIGHLIGHT_D, GNT_COLOR_BLACK, GNT_COLOR_GRAY); |
13896
a621329e8c85
[gaim-migrate @ 16381]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13882
diff
changeset
|
77 init_pair(GNT_COLOR_DISABLED, GNT_COLOR_GRAY, GNT_COLOR_WHITE); |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
78 } |
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
79 else |
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
80 { |
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
81 init_pair(GNT_COLOR_NORMAL, COLOR_BLACK, COLOR_WHITE); |
13911
b210409cdc56
[gaim-migrate @ 16410]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13897
diff
changeset
|
82 init_pair(GNT_COLOR_HIGHLIGHT, COLOR_WHITE, COLOR_BLUE); |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
83 init_pair(GNT_COLOR_SHADOW, COLOR_BLACK, COLOR_BLACK); |
13911
b210409cdc56
[gaim-migrate @ 16410]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13897
diff
changeset
|
84 init_pair(GNT_COLOR_TITLE, COLOR_WHITE, COLOR_BLUE); |
b210409cdc56
[gaim-migrate @ 16410]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13897
diff
changeset
|
85 init_pair(GNT_COLOR_TITLE_D, COLOR_WHITE, COLOR_BLACK); |
b210409cdc56
[gaim-migrate @ 16410]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13897
diff
changeset
|
86 init_pair(GNT_COLOR_TEXT_NORMAL, COLOR_WHITE, COLOR_BLUE); |
13882
5c750626eaa5
[gaim-migrate @ 16362]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13855
diff
changeset
|
87 init_pair(GNT_COLOR_HIGHLIGHT_D, COLOR_CYAN, COLOR_BLACK); |
13896
a621329e8c85
[gaim-migrate @ 16381]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13882
diff
changeset
|
88 init_pair(GNT_COLOR_DISABLED, COLOR_YELLOW, COLOR_WHITE); |
13851
41753203a94d
[gaim-migrate @ 16310]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13850
diff
changeset
|
89 } |
13850
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
90 } |
0e1e59770cb0
[gaim-migrate @ 16308]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
91 |
13964
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
92 void |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
93 gnt_uninit_colors() |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
94 { |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
95 if (can_use_custom_color()) |
14299
ea5193c23171
[gaim-migrate @ 16989]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14256
diff
changeset
|
96 restore_colors(); |
13964
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
97 } |
0a0d2a1fd2bc
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13911
diff
changeset
|
98 |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
99 static int |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
100 get_color(char *key) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
101 { |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
102 int color; |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
103 gboolean custom = can_use_custom_color(); |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
104 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
105 key = g_strstrip(key); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
106 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
107 if (strcmp(key, "black") == 0) |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
108 color = custom ? GNT_COLOR_BLACK : COLOR_BLACK; |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
109 else if (strcmp(key, "red") == 0) |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
110 color = custom ? GNT_COLOR_RED : COLOR_RED; |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
111 else if (strcmp(key, "green") == 0) |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
112 color = custom ? GNT_COLOR_GREEN : COLOR_GREEN; |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
113 else if (strcmp(key, "blue") == 0) |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
114 color = custom ? GNT_COLOR_BLUE : COLOR_BLUE; |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
115 else if (strcmp(key, "white") == 0) |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
116 color = custom ? GNT_COLOR_WHITE : COLOR_WHITE; |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
117 else if (strcmp(key, "gray") == 0) |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
118 color = custom ? GNT_COLOR_GRAY : COLOR_YELLOW; /* eh? */ |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
119 else if (strcmp(key, "darkgray") == 0) |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
120 color = custom ? GNT_COLOR_DARK_GRAY : COLOR_BLACK; |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
121 else if (strcmp(key, "magenta") == 0) |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
122 color = COLOR_MAGENTA; |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
123 else if (strcmp(key, "cyan") == 0) |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
124 color = COLOR_CYAN; |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
125 else |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
126 color = -1; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
127 return color; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
128 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
129 |
14210
bb38f32ab6aa
[gaim-migrate @ 16888]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14004
diff
changeset
|
130 #if GLIB_CHECK_VERSION(2,6,0) |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
131 void gnt_colors_parse(GKeyFile *kfile) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
132 { |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
133 GError *error = NULL; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
134 gsize nkeys; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
135 char **keys = g_key_file_get_keys(kfile, "colors", &nkeys, &error); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
136 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
137 if (error) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
138 { |
14256
e7de1f6d9f35
[gaim-migrate @ 16938]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14210
diff
changeset
|
139 g_printerr("GntColors: %s\n", error->message); |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
140 g_error_free(error); |
14256
e7de1f6d9f35
[gaim-migrate @ 16938]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14210
diff
changeset
|
141 error = NULL; |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
142 } |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
143 else if (nkeys) |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
144 { |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
145 gnt_init_colors(); |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
146 while (nkeys--) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
147 { |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
148 gsize len; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
149 char *key = keys[nkeys]; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
150 char **list = g_key_file_get_string_list(kfile, "colors", key, &len, NULL); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
151 if (len == 3) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
152 { |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
153 int r = atoi(list[0]); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
154 int g = atoi(list[1]); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
155 int b = atoi(list[2]); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
156 int color = -1; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
157 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
158 g_ascii_strdown(key, -1); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
159 color = get_color(key); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
160 if (color == -1) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
161 continue; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
162 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
163 init_color(color, r, g, b); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
164 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
165 g_strfreev(list); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
166 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
167 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
168 g_strfreev(keys); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
169 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
170 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
171 gnt_color_pairs_parse(kfile); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
172 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
173 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
174 void gnt_color_pairs_parse(GKeyFile *kfile) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
175 { |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
176 GError *error = NULL; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
177 gsize nkeys; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
178 char **keys = g_key_file_get_keys(kfile, "colorpairs", &nkeys, &error); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
179 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
180 if (error) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
181 { |
14256
e7de1f6d9f35
[gaim-migrate @ 16938]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14210
diff
changeset
|
182 g_printerr("GntColors: %s\n", error->message); |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
183 g_error_free(error); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
184 return; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
185 } |
14301
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
186 else if (nkeys) |
9df5dd999402
[gaim-migrate @ 16991]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14299
diff
changeset
|
187 gnt_init_colors(); |
14004
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
188 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
189 while (nkeys--) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
190 { |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
191 gsize len; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
192 char *key = keys[nkeys]; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
193 char **list = g_key_file_get_string_list(kfile, "colorpairs", key, &len, NULL); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
194 if (len == 2) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
195 { |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
196 GntColorType type = 0; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
197 int fg = get_color(g_ascii_strdown(list[0], -1)); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
198 int bg = get_color(g_ascii_strdown(list[1], -1)); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
199 if (fg == -1 || bg == -1) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
200 continue; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
201 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
202 g_ascii_strdown(key, -1); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
203 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
204 if (strcmp(key, "normal") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
205 type = GNT_COLOR_NORMAL; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
206 else if (strcmp(key, "highlight") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
207 type = GNT_COLOR_HIGHLIGHT; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
208 else if (strcmp(key, "highlightd") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
209 type = GNT_COLOR_HIGHLIGHT_D; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
210 else if (strcmp(key, "shadow") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
211 type = GNT_COLOR_SHADOW; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
212 else if (strcmp(key, "title") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
213 type = GNT_COLOR_TITLE; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
214 else if (strcmp(key, "titled") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
215 type = GNT_COLOR_TITLE_D; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
216 else if (strcmp(key, "text") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
217 type = GNT_COLOR_TEXT_NORMAL; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
218 else if (strcmp(key, "disabled") == 0) |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
219 type = GNT_COLOR_DISABLED; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
220 else |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
221 continue; |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
222 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
223 init_pair(type, fg, bg); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
224 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
225 g_strfreev(list); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
226 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
227 |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
228 g_strfreev(keys); |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
229 } |
06f75fb84a78
[gaim-migrate @ 16589]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
13964
diff
changeset
|
230 |
14210
bb38f32ab6aa
[gaim-migrate @ 16888]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14004
diff
changeset
|
231 #endif /* GKeyFile */ |