24 |
void |
void |
25 |
loadSettings () |
loadSettings () |
26 |
{ |
{ |
27 |
char *rc[][2] = { |
char *rc[][2] = { |
28 |
{"theme", NULL}, |
{"theme", NULL}, |
29 |
{"scheme", NULL}, |
{"scheme", NULL}, |
30 |
{"font", NULL}, |
{"font", NULL}, |
31 |
{"title_alignment", NULL}, |
{"title_alignment", NULL}, |
32 |
{"full_width_title", NULL}, |
{"full_width_title", NULL}, |
33 |
{"button_layout", NULL}, |
{"button_layout", NULL}, |
34 |
{"button_spacing", NULL}, |
{"button_spacing", NULL}, |
35 |
{"button_offset", NULL}, |
{"button_offset", NULL}, |
36 |
{"active_text_color", NULL}, |
{"active_text_color", NULL}, |
37 |
{"inactive_text_color", NULL}, |
{"inactive_text_color", NULL}, |
38 |
{"active_border_color", NULL}, |
{"active_border_color", NULL}, |
39 |
{"inactive_border_color", NULL}, |
{"inactive_border_color", NULL}, |
40 |
{"active_color_1", NULL}, |
{"active_color_1", NULL}, |
41 |
{"inactive_color_1", NULL}, |
{"inactive_color_1", NULL}, |
42 |
{"active_shadow_1", NULL}, |
{"active_shadow_1", NULL}, |
43 |
{"inactive_shadow_1", NULL}, |
{"inactive_shadow_1", NULL}, |
44 |
{"active_hilight_1", NULL}, |
{"active_hilight_1", NULL}, |
45 |
{"inactive_hilight_1", NULL}, |
{"inactive_hilight_1", NULL}, |
46 |
{"active_color_2", NULL}, |
{"active_color_2", NULL}, |
47 |
{"inactive_color_2", NULL}, |
{"inactive_color_2", NULL}, |
48 |
{"active_shadow_2", NULL}, |
{"active_shadow_2", NULL}, |
49 |
{"inactive_shadow_2", NULL}, |
{"inactive_shadow_2", NULL}, |
50 |
{"active_hilight_2", NULL}, |
{"active_hilight_2", NULL}, |
51 |
{"inactive_hilight_2", NULL}, |
{"inactive_hilight_2", NULL}, |
52 |
{"double_click_action", NULL}, |
{"double_click_action", NULL}, |
53 |
{"box_move", NULL}, |
{"box_move", NULL}, |
54 |
{"box_resize", NULL}, |
{"box_resize", NULL}, |
55 |
{"click_to_focus", NULL}, |
{"click_to_focus", NULL}, |
56 |
{"focus_new", NULL}, |
{"focus_new", NULL}, |
57 |
{"raise_on_focus", NULL}, |
{"raise_on_focus", NULL}, |
58 |
{"raise_delay", NULL}, |
{"raise_delay", NULL}, |
59 |
{"raise_on_click", NULL}, |
{"raise_on_click", NULL}, |
60 |
{"window_placement", NULL}, |
{"window_placement", NULL}, |
61 |
{"snap_to_border", NULL}, |
{"snap_to_border", NULL}, |
62 |
{"snap_to_windows", NULL}, |
{"snap_to_windows", NULL}, |
63 |
{"snap_width", NULL}, |
{"snap_width", NULL}, |
64 |
{"workspace_count", NULL}, |
{"workspace_count", NULL}, |
65 |
{"wrap_workspaces", NULL}, |
{"wrap_workspaces", NULL}, |
66 |
{"close_window_key", NULL}, |
{"close_window_key", NULL}, |
67 |
{"hide_window_key", NULL}, |
{"hide_window_key", NULL}, |
68 |
{"maximize_window_key", NULL}, |
{"maximize_window_key", NULL}, |
69 |
{"maximize_vert_key", NULL}, |
{"maximize_vert_key", NULL}, |
70 |
{"maximize_horiz_key", NULL}, |
{"maximize_horiz_key", NULL}, |
71 |
{"shade_window_key", NULL}, |
{"shade_window_key", NULL}, |
72 |
{"lower_window_layer_key", NULL}, |
{"lower_window_layer_key", NULL}, |
73 |
{"raise_window_layer_key", NULL}, |
{"raise_window_layer_key", NULL}, |
74 |
{"cycle_windows_key", NULL}, |
{"cycle_windows_key", NULL}, |
75 |
{"move_window_up_key", NULL}, |
{"move_window_up_key", NULL}, |
76 |
{"move_window_down_key", NULL}, |
{"move_window_down_key", NULL}, |
77 |
{"move_window_left_key", NULL}, |
{"move_window_left_key", NULL}, |
78 |
{"move_window_right_key", NULL}, |
{"move_window_right_key", NULL}, |
79 |
{"resize_window_up_key", NULL}, |
{"resize_window_up_key", NULL}, |
80 |
{"resize_window_down_key", NULL}, |
{"resize_window_down_key", NULL}, |
81 |
{"resize_window_left_key", NULL}, |
{"resize_window_left_key", NULL}, |
82 |
{"resize_window_right_key", NULL}, |
{"resize_window_right_key", NULL}, |
83 |
{"next_workspace_key", NULL}, |
{"next_workspace_key", NULL}, |
84 |
{"prev_workspace_key", NULL}, |
{"prev_workspace_key", NULL}, |
85 |
{"add_workspace_key", NULL}, |
{"add_workspace_key", NULL}, |
86 |
{"del_workspace_key", NULL}, |
{"del_workspace_key", NULL}, |
87 |
{"stick_window_key", NULL}, |
{"stick_window_key", NULL}, |
88 |
{"workspace_1_key", NULL}, |
{"workspace_1_key", NULL}, |
89 |
{"workspace_2_key", NULL}, |
{"workspace_2_key", NULL}, |
90 |
{"workspace_3_key", NULL}, |
{"workspace_3_key", NULL}, |
91 |
{"workspace_4_key", NULL}, |
{"workspace_4_key", NULL}, |
92 |
{"workspace_5_key", NULL}, |
{"workspace_5_key", NULL}, |
93 |
{"workspace_6_key", NULL}, |
{"workspace_6_key", NULL}, |
94 |
{"workspace_7_key", NULL}, |
{"workspace_7_key", NULL}, |
95 |
{"workspace_8_key", NULL}, |
{"workspace_8_key", NULL}, |
96 |
{"workspace_9_key", NULL}, |
{"workspace_9_key", NULL}, |
97 |
{"move_window_next_workspace_key", NULL}, |
{"move_window_next_workspace_key", NULL}, |
98 |
{"move_window_prev_workspace_key", NULL}, |
{"move_window_prev_workspace_key", NULL}, |
99 |
{"move_window_workspace_1_key", NULL}, |
{"move_window_workspace_1_key", NULL}, |
100 |
{"move_window_workspace_2_key", NULL}, |
{"move_window_workspace_2_key", NULL}, |
101 |
{"move_window_workspace_3_key", NULL}, |
{"move_window_workspace_3_key", NULL}, |
102 |
{"move_window_workspace_4_key", NULL}, |
{"move_window_workspace_4_key", NULL}, |
103 |
{"move_window_workspace_5_key", NULL}, |
{"move_window_workspace_5_key", NULL}, |
104 |
{"move_window_workspace_6_key", NULL}, |
{"move_window_workspace_6_key", NULL}, |
105 |
{"move_window_workspace_7_key", NULL}, |
{"move_window_workspace_7_key", NULL}, |
106 |
{"move_window_workspace_8_key", NULL}, |
{"move_window_workspace_8_key", NULL}, |
107 |
{"move_window_workspace_9_key", NULL}, |
{"move_window_workspace_9_key", NULL}, |
108 |
{"move_top_left_key", NULL}, |
{"move_top_left_key", NULL}, |
109 |
{"move_top_right_key", NULL}, |
{"move_top_right_key", NULL}, |
110 |
{"move_bottom_left_key", NULL}, |
{"move_bottom_left_key", NULL}, |
111 |
{"move_bottom_right_key", NULL}, |
{"move_bottom_right_key", NULL}, |
112 |
{"window_ops_modifiers", NULL}, |
{"window_ops_modifiers", NULL}, |
113 |
{"quit_key", NULL}, |
{"quit_key", NULL}, |
114 |
{"borderless_windows", NULL}, |
{"borderless_windows", NULL}, |
115 |
{NULL, NULL} |
{NULL, NULL} |
116 |
}; |
}; |
117 |
char *theme, *scheme; |
char *theme, *scheme; |
118 |
XpmColorSymbol colsym[16]; |
XpmColorSymbol colsym[16]; |
119 |
|
|
120 |
#ifdef DEBUG |
#ifdef DEBUG |
121 |
printf ("entering settingsLoad\n"); |
printf ("entering settingsLoad\n"); |
122 |
#endif |
#endif |
123 |
|
|
124 |
if (!parseRc ("defaults", DATADIR, rc)) |
if (!parseRc ("defaults", DATADIR, rc)) |
125 |
{ |
{ |
126 |
fprintf (stderr, "%s: Missing defaults file\n", progname); |
fprintf (stderr, "%s: Missing defaults file\n", progname); |
127 |
exit (1); |
exit (1); |
128 |
} |
} |
129 |
if (!checkRc (rc)) |
if (!checkRc (rc)) |
130 |
{ |
{ |
131 |
fprintf (stderr, "%s: Missing values in defaults file\n", progname); |
fprintf (stderr, "%s: Missing values in defaults file\n", progname); |
132 |
exit (1); |
exit (1); |
133 |
} |
} |
134 |
|
|
135 |
parseRc (".oroborusrc", getenv ("HOME"), rc); |
parseRc (".oroborusrc", getenv ("HOME"), rc); |
136 |
|
|
137 |
scheme = getValue ("scheme", rc); |
scheme = getValue ("scheme", rc); |
138 |
parseRc (scheme, NULL, rc); |
parseRc (scheme, NULL, rc); |
139 |
|
|
140 |
theme = getValue ("theme", rc); |
theme = getValue ("theme", rc); |
141 |
parseRc ("themerc", theme, rc); |
parseRc ("themerc", theme, rc); |
142 |
|
|
143 |
parseRc (".oroborusrc", getenv ("HOME"), rc); |
parseRc (".oroborusrc", getenv ("HOME"), rc); |
144 |
|
|
145 |
if (!getFont (dpy, &title_font, getValue ("font", rc))) |
if (!getFont (dpy, &title_font, getValue ("font", rc))) |
146 |
{ |
{ |
147 |
fprintf (stderr, "%s: Cannot load default font\n", progname); |
fprintf (stderr, "%s: Cannot load default font\n", progname); |
148 |
exit (1); |
exit (1); |
149 |
} |
} |
150 |
|
|
151 |
colsym[0].name = "active_text_color"; |
colsym[0].name = "active_text_color"; |
152 |
colsym[0].value = getValue ("active_text_color", rc); |
colsym[0].value = getValue ("active_text_color", rc); |
153 |
colsym[1].name = "inactive_text_color"; |
colsym[1].name = "inactive_text_color"; |
154 |
colsym[1].value = getValue ("inactive_text_color", rc); |
colsym[1].value = getValue ("inactive_text_color", rc); |
155 |
colsym[2].name = "active_border_color"; |
colsym[2].name = "active_border_color"; |
156 |
colsym[2].value = getValue ("active_border_color", rc); |
colsym[2].value = getValue ("active_border_color", rc); |
157 |
colsym[3].name = "inactive_border_color"; |
colsym[3].name = "inactive_border_color"; |
158 |
colsym[3].value = getValue ("inactive_border_color", rc); |
colsym[3].value = getValue ("inactive_border_color", rc); |
159 |
colsym[4].name = "active_color_1"; |
colsym[4].name = "active_color_1"; |
160 |
colsym[4].value = getValue ("active_color_1", rc); |
colsym[4].value = getValue ("active_color_1", rc); |
161 |
colsym[5].name = "inactive_color_1"; |
colsym[5].name = "inactive_color_1"; |
162 |
colsym[5].value = getValue ("inactive_color_1", rc); |
colsym[5].value = getValue ("inactive_color_1", rc); |
163 |
colsym[6].name = "active_shadow_1"; |
colsym[6].name = "active_shadow_1"; |
164 |
colsym[6].value = getValue ("active_shadow_1", rc); |
colsym[6].value = getValue ("active_shadow_1", rc); |
165 |
colsym[7].name = "inactive_shadow_1"; |
colsym[7].name = "inactive_shadow_1"; |
166 |
colsym[7].value = getValue ("inactive_shadow_1", rc); |
colsym[7].value = getValue ("inactive_shadow_1", rc); |
167 |
colsym[8].name = "active_hilight_1"; |
colsym[8].name = "active_hilight_1"; |
168 |
colsym[8].value = getValue ("active_hilight_1", rc); |
colsym[8].value = getValue ("active_hilight_1", rc); |
169 |
colsym[9].name = "inactive_hilight_1"; |
colsym[9].name = "inactive_hilight_1"; |
170 |
colsym[9].value = getValue ("inactive_hilight_1", rc); |
colsym[9].value = getValue ("inactive_hilight_1", rc); |
171 |
colsym[10].name = "active_color_2"; |
colsym[10].name = "active_color_2"; |
172 |
colsym[10].value = getValue ("active_color_2", rc); |
colsym[10].value = getValue ("active_color_2", rc); |
173 |
colsym[11].name = "inactive_color_2"; |
colsym[11].name = "inactive_color_2"; |
174 |
colsym[11].value = getValue ("inactive_color_2", rc); |
colsym[11].value = getValue ("inactive_color_2", rc); |
175 |
colsym[12].name = "active_shadow_2"; |
colsym[12].name = "active_shadow_2"; |
176 |
colsym[12].value = getValue ("active_shadow_2", rc); |
colsym[12].value = getValue ("active_shadow_2", rc); |
177 |
colsym[13].name = "inactive_shadow_2"; |
colsym[13].name = "inactive_shadow_2"; |
178 |
colsym[13].value = getValue ("inactive_shadow_2", rc); |
colsym[13].value = getValue ("inactive_shadow_2", rc); |
179 |
colsym[14].name = "active_hilight_2"; |
colsym[14].name = "active_hilight_2"; |
180 |
colsym[14].value = getValue ("active_hilight_2", rc); |
colsym[14].value = getValue ("active_hilight_2", rc); |
181 |
colsym[15].name = "inactive_hilight_2"; |
colsym[15].name = "inactive_hilight_2"; |
182 |
colsym[15].value = getValue ("inactive_hilight_2", rc); |
colsym[15].value = getValue ("inactive_hilight_2", rc); |
183 |
|
|
184 |
title_gc[ACTIVE] = |
title_gc[ACTIVE] = |
185 |
createGC (dpy, cmap, getValue ("active_text_color", rc), GXcopy, |
createGC (dpy, cmap, getValue ("active_text_color", rc), GXcopy, |
186 |
title_font.font, False); |
title_font.font, False); |
187 |
title_gc[INACTIVE] = |
title_gc[INACTIVE] = |
188 |
createGC (dpy, cmap, getValue ("inactive_text_color", rc), GXcopy, |
createGC (dpy, cmap, getValue ("inactive_text_color", rc), GXcopy, |
189 |
title_font.font, False); |
title_font.font, False); |
190 |
|
|
191 |
loadPixmap (dpy, &sides[SIDE_LEFT][ACTIVE], theme, "left-active.xpm", |
loadPixmap (dpy, &sides[SIDE_LEFT][ACTIVE], theme, "left-active.xpm", |
192 |
colsym, 16); |
colsym, 16); |
193 |
loadPixmap (dpy, &sides[SIDE_LEFT][INACTIVE], theme, "left-inactive.xpm", |
loadPixmap (dpy, &sides[SIDE_LEFT][INACTIVE], theme, "left-inactive.xpm", |
194 |
colsym, 16); |
colsym, 16); |
195 |
loadPixmap (dpy, &sides[SIDE_RIGHT][ACTIVE], theme, "right-active.xpm", |
loadPixmap (dpy, &sides[SIDE_RIGHT][ACTIVE], theme, "right-active.xpm", |
196 |
colsym, 16); |
colsym, 16); |
197 |
loadPixmap (dpy, &sides[SIDE_RIGHT][INACTIVE], theme, "right-inactive.xpm", |
loadPixmap (dpy, &sides[SIDE_RIGHT][INACTIVE], theme, "right-inactive.xpm", |
198 |
colsym, 16); |
colsym, 16); |
199 |
loadPixmap (dpy, &sides[SIDE_BOTTOM][ACTIVE], theme, "bottom-active.xpm", |
loadPixmap (dpy, &sides[SIDE_BOTTOM][ACTIVE], theme, "bottom-active.xpm", |
200 |
colsym, 16); |
colsym, 16); |
201 |
loadPixmap (dpy, &sides[SIDE_BOTTOM][INACTIVE], theme, |
loadPixmap (dpy, &sides[SIDE_BOTTOM][INACTIVE], theme, |
202 |
"bottom-inactive.xpm", colsym, 16); |
"bottom-inactive.xpm", colsym, 16); |
203 |
loadPixmap (dpy, &corners[CORNER_TOP_LEFT][ACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_TOP_LEFT][ACTIVE], theme, |
204 |
"top-left-active.xpm", colsym, 16); |
"top-left-active.xpm", colsym, 16); |
205 |
loadPixmap (dpy, &corners[CORNER_TOP_LEFT][INACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_TOP_LEFT][INACTIVE], theme, |
206 |
"top-left-inactive.xpm", colsym, 16); |
"top-left-inactive.xpm", colsym, 16); |
207 |
loadPixmap (dpy, &corners[CORNER_TOP_RIGHT][ACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_TOP_RIGHT][ACTIVE], theme, |
208 |
"top-right-active.xpm", colsym, 16); |
"top-right-active.xpm", colsym, 16); |
209 |
loadPixmap (dpy, &corners[CORNER_TOP_RIGHT][INACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_TOP_RIGHT][INACTIVE], theme, |
210 |
"top-right-inactive.xpm", colsym, 16); |
"top-right-inactive.xpm", colsym, 16); |
211 |
loadPixmap (dpy, &corners[CORNER_BOTTOM_LEFT][ACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_BOTTOM_LEFT][ACTIVE], theme, |
212 |
"bottom-left-active.xpm", colsym, 16); |
"bottom-left-active.xpm", colsym, 16); |
213 |
loadPixmap (dpy, &corners[CORNER_BOTTOM_LEFT][INACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_BOTTOM_LEFT][INACTIVE], theme, |
214 |
"bottom-left-inactive.xpm", colsym, 16); |
"bottom-left-inactive.xpm", colsym, 16); |
215 |
loadPixmap (dpy, &corners[CORNER_BOTTOM_RIGHT][ACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_BOTTOM_RIGHT][ACTIVE], theme, |
216 |
"bottom-right-active.xpm", colsym, 16); |
"bottom-right-active.xpm", colsym, 16); |
217 |
loadPixmap (dpy, &corners[CORNER_BOTTOM_RIGHT][INACTIVE], theme, |
loadPixmap (dpy, &corners[CORNER_BOTTOM_RIGHT][INACTIVE], theme, |
218 |
"bottom-right-inactive.xpm", colsym, 16); |
"bottom-right-inactive.xpm", colsym, 16); |
219 |
loadPixmap (dpy, &buttons[HIDE_BUTTON][ACTIVE], theme, "hide-active.xpm", |
loadPixmap (dpy, &buttons[HIDE_BUTTON][ACTIVE], theme, "hide-active.xpm", |
220 |
colsym, 16); |
colsym, 16); |
221 |
loadPixmap (dpy, &buttons[HIDE_BUTTON][INACTIVE], theme, |
loadPixmap (dpy, &buttons[HIDE_BUTTON][INACTIVE], theme, |
222 |
"hide-inactive.xpm", colsym, 16); |
"hide-inactive.xpm", colsym, 16); |
223 |
loadPixmap (dpy, &buttons[HIDE_BUTTON][PRESSED], theme, "hide-pressed.xpm", |
loadPixmap (dpy, &buttons[HIDE_BUTTON][PRESSED], theme, "hide-pressed.xpm", |
224 |
colsym, 16); |
colsym, 16); |
225 |
loadPixmap (dpy, &buttons[CLOSE_BUTTON][ACTIVE], theme, "close-active.xpm", |
loadPixmap (dpy, &buttons[CLOSE_BUTTON][ACTIVE], theme, "close-active.xpm", |
226 |
colsym, 16); |
colsym, 16); |
227 |
loadPixmap (dpy, &buttons[CLOSE_BUTTON][INACTIVE], theme, |
loadPixmap (dpy, &buttons[CLOSE_BUTTON][INACTIVE], theme, |
228 |
"close-inactive.xpm", colsym, 16); |
"close-inactive.xpm", colsym, 16); |
229 |
loadPixmap (dpy, &buttons[CLOSE_BUTTON][PRESSED], theme, |
loadPixmap (dpy, &buttons[CLOSE_BUTTON][PRESSED], theme, |
230 |
"close-pressed.xpm", colsym, 16); |
"close-pressed.xpm", colsym, 16); |
231 |
loadPixmap (dpy, &buttons[MAXIMIZE_BUTTON][ACTIVE], theme, |
loadPixmap (dpy, &buttons[MAXIMIZE_BUTTON][ACTIVE], theme, |
232 |
"maximize-active.xpm", colsym, 16); |
"maximize-active.xpm", colsym, 16); |
233 |
loadPixmap (dpy, &buttons[MAXIMIZE_BUTTON][INACTIVE], theme, |
loadPixmap (dpy, &buttons[MAXIMIZE_BUTTON][INACTIVE], theme, |
234 |
"maximize-inactive.xpm", colsym, 16); |
"maximize-inactive.xpm", colsym, 16); |
235 |
loadPixmap (dpy, &buttons[MAXIMIZE_BUTTON][PRESSED], theme, |
loadPixmap (dpy, &buttons[MAXIMIZE_BUTTON][PRESSED], theme, |
236 |
"maximize-pressed.xpm", colsym, 16); |
"maximize-pressed.xpm", colsym, 16); |
237 |
loadPixmap (dpy, &buttons[SHADE_BUTTON][ACTIVE], theme, "shade-active.xpm", |
loadPixmap (dpy, &buttons[SHADE_BUTTON][ACTIVE], theme, "shade-active.xpm", |
238 |
colsym, 16); |
colsym, 16); |
239 |
loadPixmap (dpy, &buttons[SHADE_BUTTON][INACTIVE], theme, |
loadPixmap (dpy, &buttons[SHADE_BUTTON][INACTIVE], theme, |
240 |
"shade-inactive.xpm", colsym, 16); |
"shade-inactive.xpm", colsym, 16); |
241 |
loadPixmap (dpy, &buttons[SHADE_BUTTON][PRESSED], theme, |
loadPixmap (dpy, &buttons[SHADE_BUTTON][PRESSED], theme, |
242 |
"shade-pressed.xpm", colsym, 16); |
"shade-pressed.xpm", colsym, 16); |
243 |
loadPixmap (dpy, &title[TITLE_1][ACTIVE], theme, "title-1-active.xpm", |
loadPixmap (dpy, &title[TITLE_1][ACTIVE], theme, "title-1-active.xpm", |
244 |
colsym, 16); |
colsym, 16); |
245 |
loadPixmap (dpy, &title[TITLE_1][INACTIVE], theme, "title-1-inactive.xpm", |
loadPixmap (dpy, &title[TITLE_1][INACTIVE], theme, "title-1-inactive.xpm", |
246 |
colsym, 16); |
colsym, 16); |
247 |
loadPixmap (dpy, &title[TITLE_2][ACTIVE], theme, "title-2-active.xpm", |
loadPixmap (dpy, &title[TITLE_2][ACTIVE], theme, "title-2-active.xpm", |
248 |
colsym, 16); |
colsym, 16); |
249 |
loadPixmap (dpy, &title[TITLE_2][INACTIVE], theme, "title-2-inactive.xpm", |
loadPixmap (dpy, &title[TITLE_2][INACTIVE], theme, "title-2-inactive.xpm", |
250 |
colsym, 16); |
colsym, 16); |
251 |
loadPixmap (dpy, &title[TITLE_3][ACTIVE], theme, "title-3-active.xpm", |
loadPixmap (dpy, &title[TITLE_3][ACTIVE], theme, "title-3-active.xpm", |
252 |
colsym, 16); |
colsym, 16); |
253 |
loadPixmap (dpy, &title[TITLE_3][INACTIVE], theme, "title-3-inactive.xpm", |
loadPixmap (dpy, &title[TITLE_3][INACTIVE], theme, "title-3-inactive.xpm", |
254 |
colsym, 16); |
colsym, 16); |
255 |
loadPixmap (dpy, &title[TITLE_4][ACTIVE], theme, "title-4-active.xpm", |
loadPixmap (dpy, &title[TITLE_4][ACTIVE], theme, "title-4-active.xpm", |
256 |
colsym, 16); |
colsym, 16); |
257 |
loadPixmap (dpy, &title[TITLE_4][INACTIVE], theme, "title-4-inactive.xpm", |
loadPixmap (dpy, &title[TITLE_4][INACTIVE], theme, "title-4-inactive.xpm", |
258 |
colsym, 16); |
colsym, 16); |
259 |
loadPixmap (dpy, &title[TITLE_5][ACTIVE], theme, "title-5-active.xpm", |
loadPixmap (dpy, &title[TITLE_5][ACTIVE], theme, "title-5-active.xpm", |
260 |
colsym, 16); |
colsym, 16); |
261 |
loadPixmap (dpy, &title[TITLE_5][INACTIVE], theme, "title-5-inactive.xpm", |
loadPixmap (dpy, &title[TITLE_5][INACTIVE], theme, "title-5-inactive.xpm", |
262 |
colsym, 16); |
colsym, 16); |
263 |
|
|
264 |
if (!strcmp ("left", getValue ("title_alignment", rc))) |
if (!strcmp ("left", getValue ("title_alignment", rc))) |
265 |
title_alignment = ALIGN_LEFT; |
title_alignment = ALIGN_LEFT; |
266 |
else if (!strcmp ("right", getValue ("title_alignment", rc))) |
else if (!strcmp ("right", getValue ("title_alignment", rc))) |
267 |
title_alignment = ALIGN_RIGHT; |
title_alignment = ALIGN_RIGHT; |
268 |
else |
else |
269 |
title_alignment = ALIGN_CENTER; |
title_alignment = ALIGN_CENTER; |
270 |
full_width_title = !strcmp ("true", getValue ("full_width_title", rc)); |
full_width_title = !strcmp ("true", getValue ("full_width_title", rc)); |
271 |
|
|
272 |
strncpy (button_layout, getValue ("button_layout", rc), 5); |
strncpy (button_layout, getValue ("button_layout", rc), 5); |
273 |
button_spacing = atoi (getValue ("button_spacing", rc)); |
button_spacing = atoi (getValue ("button_spacing", rc)); |
274 |
button_offset = atoi (getValue ("button_offset", rc)); |
button_offset = atoi (getValue ("button_offset", rc)); |
275 |
|
|
276 |
box_gc = createGC (dpy, cmap, "#FFFFFF", GXxor, title_font.font, True); |
box_gc = createGC (dpy, cmap, "#FFFFFF", GXxor, title_font.font, True); |
277 |
box_resize = !strcmp ("true", getValue ("box_resize", rc)); |
box_resize = !strcmp ("true", getValue ("box_resize", rc)); |
278 |
box_move = !strcmp ("true", getValue ("box_move", rc)); |
box_move = !strcmp ("true", getValue ("box_move", rc)); |
279 |
|
|
280 |
click_to_focus = !strcmp ("true", getValue ("click_to_focus", rc)); |
click_to_focus = !strcmp ("true", getValue ("click_to_focus", rc)); |
281 |
focus_new = !strcmp ("true", getValue ("focus_new", rc)); |
focus_new = !strcmp ("true", getValue ("focus_new", rc)); |
282 |
raise_on_focus = !strcmp ("true", getValue ("raise_on_focus", rc)); |
raise_on_focus = !strcmp ("true", getValue ("raise_on_focus", rc)); |
283 |
raise_delay = abs (atoi (getValue ("raise_delay", rc))); |
raise_delay = abs (atoi (getValue ("raise_delay", rc))); |
284 |
raise_on_click = !strcmp ("true", getValue ("raise_on_click", rc)); |
raise_on_click = !strcmp ("true", getValue ("raise_on_click", rc)); |
285 |
|
|
286 |
if (!strcmp ("center_root", getValue ("window_placement", rc))) |
if (!strcmp ("center_root", getValue ("window_placement", rc))) |
287 |
window_placement = PLACEMENT_ROOT; |
window_placement = PLACEMENT_ROOT; |
288 |
else |
else |
289 |
window_placement = PLACEMENT_MOUSE; |
window_placement = PLACEMENT_MOUSE; |
290 |
snap_to_border = !strcmp ("true", getValue ("snap_to_border", rc)); |
snap_to_border = !strcmp ("true", getValue ("snap_to_border", rc)); |
291 |
snap_width = abs (atoi (getValue ("snap_width", rc))); |
snap_width = abs (atoi (getValue ("snap_width", rc))); |
292 |
snap_to_windows = !strcmp ("true", getValue ("snap_to_windows", rc)); |
snap_to_windows = !strcmp ("true", getValue ("snap_to_windows", rc)); |
293 |
|
|
294 |
if (!strcmp ("shade", getValue ("double_click_action", rc))) |
if (!strcmp ("shade", getValue ("double_click_action", rc))) |
295 |
double_click_action = ACTION_SHADE; |
double_click_action = ACTION_SHADE; |
296 |
else if (!strcmp ("hide", getValue ("double_click_action", rc))) |
else if (!strcmp ("hide", getValue ("double_click_action", rc))) |
297 |
double_click_action = ACTION_HIDE; |
double_click_action = ACTION_HIDE; |
298 |
else if (!strcmp ("maximize", getValue ("double_click_action", rc))) |
else if (!strcmp ("maximize", getValue ("double_click_action", rc))) |
299 |
double_click_action = ACTION_MAXIMIZE; |
double_click_action = ACTION_MAXIMIZE; |
300 |
else |
else |
301 |
double_click_action = ACTION_NONE; |
double_click_action = ACTION_NONE; |
302 |
|
|
303 |
if (workspace_count < 0) |
if (workspace_count < 0) |
304 |
{ |
{ |
305 |
workspace_count = abs (atoi (getValue ("workspace_count", rc))); |
workspace_count = abs (atoi (getValue ("workspace_count", rc))); |
306 |
setGnomeHint (root, win_workspace_count, workspace_count); |
setGnomeHint (root, win_workspace_count, workspace_count); |
307 |
setGnomeHint (root, net_atoms[NET_NUMBER_OF_DESKTOPS], workspace_count); |
setGnomeHint (root, net_atoms[NET_NUMBER_OF_DESKTOPS], workspace_count); |
308 |
} |
} |
309 |
wrap_workspaces = !strcmp ("true", getValue ("wrap_workspaces", rc)); |
wrap_workspaces = !strcmp ("true", getValue ("wrap_workspaces", rc)); |
310 |
|
|
311 |
parseKeyString (dpy, &keys[KEY_MOVE_UP], |
parseKeyString (dpy, &keys[KEY_MOVE_UP], |
312 |
getValue ("move_window_up_key", rc)); |
getValue ("move_window_up_key", rc)); |
313 |
parseKeyString (dpy, &keys[KEY_MOVE_DOWN], |
parseKeyString (dpy, &keys[KEY_MOVE_DOWN], |
314 |
getValue ("move_window_down_key", rc)); |
getValue ("move_window_down_key", rc)); |
315 |
parseKeyString (dpy, &keys[KEY_MOVE_LEFT], |
parseKeyString (dpy, &keys[KEY_MOVE_LEFT], |
316 |
getValue ("move_window_left_key", rc)); |
getValue ("move_window_left_key", rc)); |
317 |
parseKeyString (dpy, &keys[KEY_MOVE_RIGHT], |
parseKeyString (dpy, &keys[KEY_MOVE_RIGHT], |
318 |
getValue ("move_window_right_key", rc)); |
getValue ("move_window_right_key", rc)); |
319 |
parseKeyString (dpy, &keys[KEY_RESIZE_UP], |
parseKeyString (dpy, &keys[KEY_RESIZE_UP], |
320 |
getValue ("resize_window_up_key", rc)); |
getValue ("resize_window_up_key", rc)); |
321 |
parseKeyString (dpy, &keys[KEY_RESIZE_DOWN], |
parseKeyString (dpy, &keys[KEY_RESIZE_DOWN], |
322 |
getValue ("resize_window_down_key", rc)); |
getValue ("resize_window_down_key", rc)); |
323 |
parseKeyString (dpy, &keys[KEY_RESIZE_LEFT], |
parseKeyString (dpy, &keys[KEY_RESIZE_LEFT], |
324 |
getValue ("resize_window_left_key", rc)); |
getValue ("resize_window_left_key", rc)); |
325 |
parseKeyString (dpy, &keys[KEY_RESIZE_RIGHT], |
parseKeyString (dpy, &keys[KEY_RESIZE_RIGHT], |
326 |
getValue ("resize_window_right_key", rc)); |
getValue ("resize_window_right_key", rc)); |
327 |
parseKeyString (dpy, &keys[KEY_CYCLE_WINDOWS], |
parseKeyString (dpy, &keys[KEY_CYCLE_WINDOWS], |
328 |
getValue ("cycle_windows_key", rc)); |
getValue ("cycle_windows_key", rc)); |
329 |
parseKeyString (dpy, &keys[KEY_CLOSE_WINDOW], |
parseKeyString (dpy, &keys[KEY_CLOSE_WINDOW], |
330 |
getValue ("close_window_key", rc)); |
getValue ("close_window_key", rc)); |
331 |
parseKeyString (dpy, &keys[KEY_HIDE_WINDOW], |
parseKeyString (dpy, &keys[KEY_HIDE_WINDOW], |
332 |
getValue ("hide_window_key", rc)); |
getValue ("hide_window_key", rc)); |
333 |
parseKeyString (dpy, &keys[KEY_MAXIMIZE_WINDOW], |
parseKeyString (dpy, &keys[KEY_MAXIMIZE_WINDOW], |
334 |
getValue ("maximize_window_key", rc)); |
getValue ("maximize_window_key", rc)); |
335 |
parseKeyString (dpy, &keys[KEY_MAXIMIZE_VERT], |
parseKeyString (dpy, &keys[KEY_MAXIMIZE_VERT], |
336 |
getValue ("maximize_vert_key", rc)); |
getValue ("maximize_vert_key", rc)); |
337 |
parseKeyString (dpy, &keys[KEY_MAXIMIZE_HORIZ], |
parseKeyString (dpy, &keys[KEY_MAXIMIZE_HORIZ], |
338 |
getValue ("maximize_horiz_key", rc)); |
getValue ("maximize_horiz_key", rc)); |
339 |
parseKeyString (dpy, &keys[KEY_SHADE_WINDOW], |
parseKeyString (dpy, &keys[KEY_SHADE_WINDOW], |
340 |
getValue ("shade_window_key", rc)); |
getValue ("shade_window_key", rc)); |
341 |
parseKeyString (dpy, &keys[KEY_LOWER_WINDOW_LAYER], |
parseKeyString (dpy, &keys[KEY_LOWER_WINDOW_LAYER], |
342 |
getValue ("lower_window_layer_key", rc)); |
getValue ("lower_window_layer_key", rc)); |
343 |
parseKeyString (dpy, &keys[KEY_RAISE_WINDOW_LAYER], |
parseKeyString (dpy, &keys[KEY_RAISE_WINDOW_LAYER], |
344 |
getValue ("raise_window_layer_key", rc)); |
getValue ("raise_window_layer_key", rc)); |
345 |
parseKeyString (dpy, &keys[KEY_NEXT_WORKSPACE], |
parseKeyString (dpy, &keys[KEY_NEXT_WORKSPACE], |
346 |
getValue ("next_workspace_key", rc)); |
getValue ("next_workspace_key", rc)); |
347 |
parseKeyString (dpy, &keys[KEY_PREV_WORKSPACE], |
parseKeyString (dpy, &keys[KEY_PREV_WORKSPACE], |
348 |
getValue ("prev_workspace_key", rc)); |
getValue ("prev_workspace_key", rc)); |
349 |
parseKeyString (dpy, &keys[KEY_ADD_WORKSPACE], |
parseKeyString (dpy, &keys[KEY_ADD_WORKSPACE], |
350 |
getValue ("add_workspace_key", rc)); |
getValue ("add_workspace_key", rc)); |
351 |
parseKeyString (dpy, &keys[KEY_DEL_WORKSPACE], |
parseKeyString (dpy, &keys[KEY_DEL_WORKSPACE], |
352 |
getValue ("del_workspace_key", rc)); |
getValue ("del_workspace_key", rc)); |
353 |
parseKeyString (dpy, &keys[KEY_STICK_WINDOW], |
parseKeyString (dpy, &keys[KEY_STICK_WINDOW], |
354 |
getValue ("stick_window_key", rc)); |
getValue ("stick_window_key", rc)); |
355 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_1], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_1], |
356 |
getValue ("workspace_1_key", rc)); |
getValue ("workspace_1_key", rc)); |
357 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_2], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_2], |
358 |
getValue ("workspace_2_key", rc)); |
getValue ("workspace_2_key", rc)); |
359 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_3], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_3], |
360 |
getValue ("workspace_3_key", rc)); |
getValue ("workspace_3_key", rc)); |
361 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_4], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_4], |
362 |
getValue ("workspace_4_key", rc)); |
getValue ("workspace_4_key", rc)); |
363 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_5], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_5], |
364 |
getValue ("workspace_5_key", rc)); |
getValue ("workspace_5_key", rc)); |
365 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_6], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_6], |
366 |
getValue ("workspace_6_key", rc)); |
getValue ("workspace_6_key", rc)); |
367 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_7], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_7], |
368 |
getValue ("workspace_7_key", rc)); |
getValue ("workspace_7_key", rc)); |
369 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_8], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_8], |
370 |
getValue ("workspace_8_key", rc)); |
getValue ("workspace_8_key", rc)); |
371 |
parseKeyString (dpy, &keys[KEY_WORKSPACE_9], |
parseKeyString (dpy, &keys[KEY_WORKSPACE_9], |
372 |
getValue ("workspace_9_key", rc)); |
getValue ("workspace_9_key", rc)); |
373 |
parseKeyString (dpy, &keys[KEY_MOVE_NEXT_WORKSPACE], |
parseKeyString (dpy, &keys[KEY_MOVE_NEXT_WORKSPACE], |
374 |
getValue ("move_window_next_workspace_key", rc)); |
getValue ("move_window_next_workspace_key", rc)); |
375 |
parseKeyString (dpy, &keys[KEY_MOVE_PREV_WORKSPACE], |
parseKeyString (dpy, &keys[KEY_MOVE_PREV_WORKSPACE], |
376 |
getValue ("move_window_prev_workspace_key", rc)); |
getValue ("move_window_prev_workspace_key", rc)); |
377 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_1], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_1], |
378 |
getValue ("move_window_workspace_1_key", rc)); |
getValue ("move_window_workspace_1_key", rc)); |
379 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_2], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_2], |
380 |
getValue ("move_window_workspace_2_key", rc)); |
getValue ("move_window_workspace_2_key", rc)); |
381 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_3], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_3], |
382 |
getValue ("move_window_workspace_3_key", rc)); |
getValue ("move_window_workspace_3_key", rc)); |
383 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_4], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_4], |
384 |
getValue ("move_window_workspace_4_key", rc)); |
getValue ("move_window_workspace_4_key", rc)); |
385 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_5], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_5], |
386 |
getValue ("move_window_workspace_5_key", rc)); |
getValue ("move_window_workspace_5_key", rc)); |
387 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_6], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_6], |
388 |
getValue ("move_window_workspace_6_key", rc)); |
getValue ("move_window_workspace_6_key", rc)); |
389 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_7], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_7], |
390 |
getValue ("move_window_workspace_7_key", rc)); |
getValue ("move_window_workspace_7_key", rc)); |
391 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_8], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_8], |
392 |
getValue ("move_window_workspace_8_key", rc)); |
getValue ("move_window_workspace_8_key", rc)); |
393 |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_9], |
parseKeyString (dpy, &keys[KEY_MOVE_WORKSPACE_9], |
394 |
getValue ("move_window_workspace_9_key", rc)); |
getValue ("move_window_workspace_9_key", rc)); |
395 |
parseKeyString (dpy, &keys[KEY_WINDOW_OPS], |
parseKeyString (dpy, &keys[KEY_WINDOW_OPS], |
396 |
getValue ("window_ops_modifiers", rc)); |
getValue ("window_ops_modifiers", rc)); |
397 |
parseKeyString (dpy, &keys[KEY_TOP_LEFT], |
parseKeyString (dpy, &keys[KEY_TOP_LEFT], |
398 |
getValue ("move_top_left_key", rc)); |
getValue ("move_top_left_key", rc)); |
399 |
parseKeyString (dpy, &keys[KEY_TOP_RIGHT], |
parseKeyString (dpy, &keys[KEY_TOP_RIGHT], |
400 |
getValue ("move_top_right_key", rc)); |
getValue ("move_top_right_key", rc)); |
401 |
parseKeyString (dpy, &keys[KEY_BOTTOM_LEFT], |
parseKeyString (dpy, &keys[KEY_BOTTOM_LEFT], |
402 |
getValue ("move_bottom_left_key", rc)); |
getValue ("move_bottom_left_key", rc)); |
403 |
parseKeyString (dpy, &keys[KEY_BOTTOM_RIGHT], |
parseKeyString (dpy, &keys[KEY_BOTTOM_RIGHT], |
404 |
getValue ("move_bottom_right_key", rc)); |
getValue ("move_bottom_right_key", rc)); |
405 |
parseKeyString (dpy, &keys[KEY_QUIT], getValue ("quit_key", rc)); |
parseKeyString (dpy, &keys[KEY_QUIT], getValue ("quit_key", rc)); |
406 |
|
|
407 |
borderless_windows = |
borderless_windows = |
408 |
malloc (sizeof (char) * |
malloc (sizeof (char) * |
409 |
(strlen (getValue ("borderless_windows", rc)) + 1)); |
(strlen (getValue ("borderless_windows", rc)) + 1)); |
410 |
snprintf (borderless_windows, |
snprintf (borderless_windows, |
411 |
sizeof (char) * (strlen (getValue ("borderless_windows", rc)) + |
sizeof (char) * (strlen (getValue ("borderless_windows", rc)) + |
412 |
1), "%s", getValue ("borderless_windows", rc)); |
1), "%s", getValue ("borderless_windows", rc)); |
413 |
|
|
414 |
ungrabKeys (dpy, gnome_win); |
ungrabKeys (dpy, gnome_win); |
415 |
grabKey (dpy, &keys[KEY_CYCLE_WINDOWS], gnome_win); |
grabKey (dpy, &keys[KEY_CYCLE_WINDOWS], gnome_win); |
416 |
grabKey (dpy, &keys[KEY_NEXT_WORKSPACE], gnome_win); |
grabKey (dpy, &keys[KEY_NEXT_WORKSPACE], gnome_win); |
417 |
grabKey (dpy, &keys[KEY_PREV_WORKSPACE], gnome_win); |
grabKey (dpy, &keys[KEY_PREV_WORKSPACE], gnome_win); |
418 |
grabKey (dpy, &keys[KEY_ADD_WORKSPACE], gnome_win); |
grabKey (dpy, &keys[KEY_ADD_WORKSPACE], gnome_win); |
419 |
grabKey (dpy, &keys[KEY_NEXT_WORKSPACE], gnome_win); |
grabKey (dpy, &keys[KEY_NEXT_WORKSPACE], gnome_win); |
420 |
grabKey (dpy, &keys[KEY_WORKSPACE_1], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_1], gnome_win); |
421 |
grabKey (dpy, &keys[KEY_WORKSPACE_2], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_2], gnome_win); |
422 |
grabKey (dpy, &keys[KEY_WORKSPACE_3], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_3], gnome_win); |
423 |
grabKey (dpy, &keys[KEY_WORKSPACE_4], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_4], gnome_win); |
424 |
grabKey (dpy, &keys[KEY_WORKSPACE_5], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_5], gnome_win); |
425 |
grabKey (dpy, &keys[KEY_WORKSPACE_6], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_6], gnome_win); |
426 |
grabKey (dpy, &keys[KEY_WORKSPACE_7], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_7], gnome_win); |
427 |
grabKey (dpy, &keys[KEY_WORKSPACE_8], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_8], gnome_win); |
428 |
grabKey (dpy, &keys[KEY_WORKSPACE_9], gnome_win); |
grabKey (dpy, &keys[KEY_WORKSPACE_9], gnome_win); |
429 |
grabKey (dpy, &keys[KEY_QUIT], gnome_win); |
grabKey (dpy, &keys[KEY_QUIT], gnome_win); |
430 |
freeRc (rc); |
freeRc (rc); |
431 |
} |
} |
432 |
|
|
433 |
void |
void |
434 |
unloadSettings () |
unloadSettings () |
435 |
{ |
{ |
436 |
int i; |
int i; |
437 |
#ifdef DEBUG |
#ifdef DEBUG |
438 |
printf ("entering unloadSettings\n"); |
printf ("entering unloadSettings\n"); |
439 |
#endif |
#endif |
440 |
for (i = 0; i < 3; i++) |
for (i = 0; i < 3; i++) |
441 |
{ |
{ |
442 |
freePixmap (dpy, &sides[i][ACTIVE]); |
freePixmap (dpy, &sides[i][ACTIVE]); |
443 |
freePixmap (dpy, &sides[i][INACTIVE]); |
freePixmap (dpy, &sides[i][INACTIVE]); |
444 |
} |
} |
445 |
for (i = 0; i < 4; i++) |
for (i = 0; i < 4; i++) |
446 |
{ |
{ |
447 |
freePixmap (dpy, &corners[i][ACTIVE]); |
freePixmap (dpy, &corners[i][ACTIVE]); |
448 |
freePixmap (dpy, &corners[i][INACTIVE]); |
freePixmap (dpy, &corners[i][INACTIVE]); |
449 |
freePixmap (dpy, &buttons[i][ACTIVE]); |
freePixmap (dpy, &buttons[i][ACTIVE]); |
450 |
freePixmap (dpy, &buttons[i][INACTIVE]); |
freePixmap (dpy, &buttons[i][INACTIVE]); |
451 |
freePixmap (dpy, &buttons[i][PRESSED]); |
freePixmap (dpy, &buttons[i][PRESSED]); |
452 |
} |
} |
453 |
for (i = 0; i < 5; i++) |
for (i = 0; i < 5; i++) |
454 |
{ |
{ |
455 |
freePixmap (dpy, &title[i][ACTIVE]); |
freePixmap (dpy, &title[i][ACTIVE]); |
456 |
freePixmap (dpy, &title[i][INACTIVE]); |
freePixmap (dpy, &title[i][INACTIVE]); |
457 |
} |
} |
458 |
XFreeGC (dpy, title_gc[ACTIVE]); |
XFreeGC (dpy, title_gc[ACTIVE]); |
459 |
XFreeGC (dpy, title_gc[INACTIVE]); |
XFreeGC (dpy, title_gc[INACTIVE]); |
460 |
XFreeGC (dpy, box_gc); |
XFreeGC (dpy, box_gc); |
461 |
} |
} |
462 |
|
|
463 |
void |
void |
464 |
reloadSettings () |
reloadSettings () |
465 |
{ |
{ |
466 |
Client *c; |
Client *c; |
467 |
int i; |
int i; |
468 |
XWindowChanges wc; |
XWindowChanges wc; |
469 |
#ifdef DEBUG |
#ifdef DEBUG |
470 |
printf ("entering reloadSettings\n"); |
printf ("entering reloadSettings\n"); |
471 |
#endif |
#endif |
472 |
for (c = clients, i = 0; i < client_count; c = c->next, i++) |
for (c = clients, i = 0; i < client_count; c = c->next, i++) |
473 |
{ |
{ |
474 |
clientGravitate (c, REMOVE); |
clientGravitate (c, REMOVE); |
475 |
clientUngrabKeys (c); |
clientUngrabKeys (c); |
476 |
} |
} |
477 |
unloadSettings (); |
unloadSettings (); |
478 |
loadSettings (); |
loadSettings (); |
479 |
for (c = clients, i = 0; i < client_count; c = c->next, i++) |
for (c = clients, i = 0; i < client_count; c = c->next, i++) |
480 |
{ |
{ |
481 |
clientGravitate (c, APPLY); |
clientGravitate (c, APPLY); |
482 |
wc.x = c->x; |
wc.x = c->x; |
483 |
wc.y = c->y; |
wc.y = c->y; |
484 |
wc.width = c->width; |
wc.width = c->width; |
485 |
wc.height = c->height; |
wc.height = c->height; |
486 |
clientConfigure (c, &wc, CWX | CWY | CWWidth | CWHeight); |
clientConfigure (c, &wc, CWX | CWY | CWWidth | CWHeight); |
487 |
clientGrabKeys (c); |
clientGrabKeys (c); |
488 |
} |
} |
489 |
} |
} |
490 |
|
|
491 |
/**This must remain at the end of the file.********** |
/**This must remain at the end of the file.********** |
492 |
* vim600:set sw=2 ts=8: * |
* vim600:set sw=2 ts=2: * |
493 |
* vim600:set cindent cinoptions={1s,>2s,^-1s,n-1s: * |
* vim600:set cindent cinoptions={1s,>2s,^-1s,n-1s: * |
494 |
* vim600:set foldmethod=marker: * |
* vim600:set foldmethod=marker: * |
495 |
****************************************************/ |
****************************************************/ |