56
57
while (filename != NULL)
58
59
if (g_str_has_prefix (filename, "lock-dialog-") == TRUE &&
59
g_str_has_suffix (filename, ".gtkrc") == FALSE)
60
g_str_has_suffix (filename, ".glade") == TRUE)
61
62
theme_name = g_strndup (filename + 12, g_utf8_strlen (filename + 12, -1) - 6);
62
63
run_on_each (theme_name, user_data);
73
74
MainData *main_data = user_data;
76
GValue theme_value = {0};
77
g_value_init (&theme_value, G_TYPE_STRING);
78
g_value_set_string (&theme_value, theme_name);
75
79
gtk_list_store_append (main_data->list_store, &iter);
76
gtk_list_store_set (main_data->list_store, &iter, 0, theme_name, -1);
80
gtk_list_store_set_value (main_data->list_store, &iter, 1, &theme_value);
77
81
if (!g_strcmp0 (theme_name, main_data->lock_dialog_theme))
79
83
gtk_tree_selection_select_iter (GTK_TREE_SELECTION
93
97
if (gtk_tree_selection_get_selected (selection, &model, &iter))
95
gtk_tree_model_get (model, &iter, 0, &new_theme, -1);
99
gtk_tree_model_get (model, &iter, 1, &new_theme, -1);
96
100
gconf_client_set_string (main_data->gconf_client,
97
101
"/apps/gnome-screensaver/lock_dialog_theme",
160
164
MainData *main_data = user_data;
161
165
GValue value = {0};
162
166
gchar *theme_name = NULL;
163
gtk_tree_model_get_value (model, iter, 0, &value);
167
gtk_tree_model_get_value (model, iter, 1, &value);
164
168
theme_name = (gchar *) g_value_get_string (&value);
165
169
if (!g_strcmp0(main_data->lock_dialog_theme, theme_name)) {
166
170
gtk_tree_selection_select_iter(GTK_TREE_SELECTION(main_data->theme_tree_selection), iter);
309
313
GladeXML *glade_xml;
310
314
GtkDialog *main_dialog;
311
315
GtkTreeView *theme_tree;
312
GtkTreeViewColumn *theme_tree_column;
313
GtkCellRenderer *theme_tree_cell;
316
GtkTreeViewColumn *theme_tree_column[3];
317
GtkCellRenderer *theme_tree_cell_text;
318
GtkCellRenderer *theme_tree_cell_pixbuf;
314
319
gboolean lock_enabled = FALSE;
315
320
gint lock_delay = 120;
316
321
gboolean user_switch_enabled = FALSE;
365
370
glade_xml_new (GLADE_DIR "/gnome-lock-dialog-preferences.glade",
368
main_data.list_store = gtk_list_store_new (1, G_TYPE_STRING);
373
main_data.list_store = gtk_list_store_new (3, g_type_from_name("GdkPixbuf"), G_TYPE_STRING, G_TYPE_STRING);
370
375
main_dialog = GTK_DIALOG (glade_xml_get_widget (glade_xml, "main_dialog"));
371
376
theme_tree = GTK_TREE_VIEW (glade_xml_get_widget (glade_xml, "theme_tree"));
380
385
GTK_CHECK_BUTTON (glade_xml_get_widget (glade_xml, "logout_enabled_check"));
381
386
main_data.logout_delay_scale =
382
387
GTK_HSCALE (glade_xml_get_widget (glade_xml, "logout_delay_scale"));
383
theme_tree_cell = gtk_cell_renderer_text_new ();
388
theme_tree_cell_text = gtk_cell_renderer_text_new ();
389
theme_tree_cell_pixbuf = gtk_cell_renderer_pixbuf_new ();
390
theme_tree_column[0] =
391
gtk_tree_view_column_new_with_attributes ("Preview",
393
(theme_tree_cell_pixbuf),
395
theme_tree_column[1] =
385
396
gtk_tree_view_column_new_with_attributes ("Name",
386
397
GTK_CELL_RENDERER
387
(theme_tree_cell), "text", 0,
398
(theme_tree_cell_text),
400
theme_tree_column[2] =
401
gtk_tree_view_column_new_with_attributes ("Tooltip",
403
(theme_tree_cell_text),
389
405
main_data.theme_tree_selection =
390
406
gtk_tree_view_get_selection (GTK_TREE_VIEW (theme_tree));
392
408
gtk_tree_selection_set_mode (main_data.theme_tree_selection,
393
409
GTK_SELECTION_SINGLE);
394
gtk_tree_view_append_column (GTK_TREE_VIEW (theme_tree), theme_tree_column);
410
gtk_tree_view_append_column (GTK_TREE_VIEW (theme_tree), theme_tree_column[0]);
411
gtk_tree_view_append_column (GTK_TREE_VIEW (theme_tree), theme_tree_column[1]);
412
gtk_tree_view_append_column (GTK_TREE_VIEW (theme_tree), theme_tree_column[2]);
413
gtk_tree_view_column_set_visible(theme_tree_column[0], FALSE);
414
gtk_tree_view_column_set_visible(theme_tree_column[2], FALSE);
415
gtk_tree_view_set_tooltip_column(GTK_TREE_VIEW (theme_tree), 2);
396
417
gtk_tree_view_set_model (GTK_TREE_VIEW (theme_tree),
397
418
GTK_TREE_MODEL (main_data.list_store));