5
5
#include <gconf/gconf-client.h>
6
6
#include <glade/glade.h>
10
gchar *lock_dialog_theme;
11
11
GConfClient *gconf_client;
12
12
GtkListStore *list_store;
13
13
GtkTreeSelection *theme_tree_selection;
58
57
if (g_str_has_prefix (filename, "lock-dialog-") == TRUE &&
59
58
g_str_has_suffix (filename, ".gtkrc") == FALSE)
61
theme_name = g_strndup (filename + 12, strlen (filename + 12) - 6);
60
theme_name = g_strndup (filename + 12, g_utf8_strlen (filename + 12, -1) - 6);
62
61
run_on_each (theme_name, user_data);
63
62
g_free (theme_name);
75
74
gtk_list_store_append (main_data->list_store, &iter);
76
75
gtk_list_store_set (main_data->list_store, &iter, 0, theme_name, -1);
77
if (!strcmp (theme_name, main_data->lock_theme))
76
if (!g_strcmp0 (theme_name, main_data->lock_dialog_theme))
79
78
gtk_tree_selection_select_iter (GTK_TREE_SELECTION
80
79
(main_data->theme_tree_selection),
90
89
GtkTreeModel *model;
94
92
if (gtk_tree_selection_get_selected (selection, &model, &iter))
96
94
gtk_tree_model_get (model, &iter, 0, &new_theme, -1);
97
95
gconf_client_set_string (main_data->gconf_client,
98
96
"/apps/gnome-screensaver/lock_dialog_theme",
100
98
g_free (new_theme);
106
104
lock_enabled_check_toggled (GtkCheckButton * check, gpointer user_data)
106
MainData *main_data = user_data;
108
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
109
(main_data->lock_enabled_check));
110
gconf_client_set_bool (main_data->gconf_client,
111
"/apps/gnome-screensaver/lock_enabled", new_value, NULL);
111
115
lock_delay_scale_value_changed (GtkHScale * hscale, gpointer user_data)
117
MainData *main_data = user_data;
119
gtk_range_get_value (GTK_RANGE
121
gconf_client_set_int (main_data->gconf_client,
122
"/apps/gnome-screensaver/lock_delay", new_value, NULL);
116
126
user_switch_enabled_check_toggled (GtkCheckButton * check, gpointer user_data)
128
MainData *main_data = user_data;
130
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
132
gconf_client_set_bool (main_data->gconf_client,
133
"/apps/gnome-screensaver/user_switch_enabled", new_value, NULL);
121
137
logout_enabled_check_toggled (GtkCheckButton * check, gpointer user_data)
139
MainData *main_data = user_data;
141
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
143
gconf_client_set_bool (main_data->gconf_client,
144
"/apps/gnome-screensaver/logout_enabled", new_value, NULL);
126
logout_delay_scale_value_changed (GtkHScale * hscale, gpointer user_data)
148
logout_delay_scale_value_changed (GtkHScale * scale, gpointer user_data)
150
MainData *main_data = user_data;
152
gtk_range_get_value (GTK_RANGE
154
gconf_client_set_int (main_data->gconf_client,
155
"/apps/gnome-screensaver/logout_delay", new_value, NULL);
136
164
if (gconf_entry_get_value (entry) != NULL &&
137
165
gconf_entry_get_value (entry)->type == GCONF_VALUE_STRING)
139
gchar *lock_dialog_theme =
140
168
(gchar *) gconf_value_get_string (gconf_entry_get_value (entry));
169
if (g_strcmp0 (new_value, main_data->lock_dialog_theme))
151
182
if (gconf_entry_get_value (entry) != NULL &&
152
183
gconf_entry_get_value (entry)->type == GCONF_VALUE_BOOL)
154
gboolean lock_enabled =
155
186
gconf_value_get_bool (gconf_entry_get_value (entry));
156
gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON
187
gboolean check_state = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
188
(main_data->lock_enabled_check));
189
if (check_state != new_value)
191
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
157
192
(main_data->lock_enabled_check),
168
204
if (gconf_entry_get_value (entry) != NULL &&
169
205
gconf_entry_get_value (entry)->type == GCONF_VALUE_INT)
172
208
gconf_value_get_int (gconf_entry_get_value (entry));
209
gint check_state = gtk_range_get_value (GTK_RANGE
210
(main_data->lock_delay_scale));
211
if (check_state != new_value)
173
213
gtk_range_set_value (GTK_RANGE (main_data->lock_delay_scale),
184
225
if (gconf_entry_get_value (entry) != NULL &&
185
226
gconf_entry_get_value (entry)->type == GCONF_VALUE_BOOL)
187
gboolean user_switch_enabled =
188
229
gconf_value_get_bool (gconf_entry_get_value (entry));
189
gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON
230
gboolean check_state = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
231
(main_data->lock_enabled_check));
232
if (check_state != new_value)
234
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
190
235
(main_data->user_switch_enabled_check),
191
user_switch_enabled);
201
247
if (gconf_entry_get_value (entry) != NULL &&
202
248
gconf_entry_get_value (entry)->type == GCONF_VALUE_BOOL)
204
gboolean logout_enabled =
205
251
gconf_value_get_bool (gconf_entry_get_value (entry));
206
gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON
252
gboolean check_state = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
253
(main_data->lock_enabled_check));
254
if (check_state != new_value)
256
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
207
257
(main_data->logout_enabled_check),
218
269
if (gconf_entry_get_value (entry) != NULL &&
219
270
gconf_entry_get_value (entry)->type == GCONF_VALUE_INT)
222
273
gconf_value_get_int (gconf_entry_get_value (entry));
223
gtk_range_set_value (GTK_RANGE (main_data->logout_delay_scale),
274
gint check_state = gtk_range_get_value (GTK_RANGE
275
(main_data->logout_delay_scale));
276
if (check_state != new_value)
278
gtk_range_set_value (GTK_RANGE (main_data->logout_delay_scale),
253
309
gconf_client_add_dir (main_data.gconf_client, "/apps/gnome-screensaver",
254
310
GCONF_CLIENT_PRELOAD_NONE, NULL);
256
main_data.lock_theme =
312
main_data.lock_dialog_theme =
257
313
gconf_client_get_string (main_data.gconf_client,
258
314
"/apps/gnome-screensaver/lock_dialog_theme",
277
333
if (command_line_get == TRUE)
279
g_print ("%s\n", main_data.lock_theme);
335
g_print ("%s\n", main_data.lock_dialog_theme);
282
338
if (command_line_set != NULL)
323
379
check_lock_dialog_themes ((GFunc) * list_store_fill, &main_data);
325
gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON
381
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
326
382
(main_data.lock_enabled_check), lock_enabled);
327
383
gtk_range_set_value (GTK_RANGE (main_data.lock_delay_scale), lock_delay);
328
gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON
384
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
329
385
(main_data.user_switch_enabled_check),
330
386
user_switch_enabled);
331
gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON
387
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
332
388
(main_data.logout_enabled_check),
334
390
gtk_range_set_value (GTK_RANGE (main_data.logout_delay_scale),