aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/e-timezone-dialog/e-timezone-dialog.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2012-12-01 08:18:48 +0800
committerMatthew Barnes <mbarnes@redhat.com>2012-12-01 08:18:48 +0800
commitead3e47b67b3fed4619c853021748748a4cf7306 (patch)
tree7193775a8aff8e89b18c4b8d41688ab362cca226 /widgets/e-timezone-dialog/e-timezone-dialog.c
parentbf1d0fb988392de9d355fa74cc9c471e8cf13a20 (diff)
downloadgsoc2013-evolution-ead3e47b67b3fed4619c853021748748a4cf7306.tar
gsoc2013-evolution-ead3e47b67b3fed4619c853021748748a4cf7306.tar.gz
gsoc2013-evolution-ead3e47b67b3fed4619c853021748748a4cf7306.tar.bz2
gsoc2013-evolution-ead3e47b67b3fed4619c853021748748a4cf7306.tar.lz
gsoc2013-evolution-ead3e47b67b3fed4619c853021748748a4cf7306.tar.xz
gsoc2013-evolution-ead3e47b67b3fed4619c853021748748a4cf7306.tar.zst
gsoc2013-evolution-ead3e47b67b3fed4619c853021748748a4cf7306.zip
Avoid gtk_rc_parse_string().
Use gtk_css_provider_load_from_data() instead.
Diffstat (limited to 'widgets/e-timezone-dialog/e-timezone-dialog.c')
-rw-r--r--widgets/e-timezone-dialog/e-timezone-dialog.c26
1 files changed, 18 insertions, 8 deletions
diff --git a/widgets/e-timezone-dialog/e-timezone-dialog.c b/widgets/e-timezone-dialog/e-timezone-dialog.c
index 9fd6b91446..32194b4871 100644
--- a/widgets/e-timezone-dialog/e-timezone-dialog.c
+++ b/widgets/e-timezone-dialog/e-timezone-dialog.c
@@ -172,8 +172,12 @@ e_timezone_dialog_add_timezones (ETimezoneDialog *etd)
GtkListStore *list_store;
GtkTreeIter iter;
GtkCellRenderer *cell;
+ GtkCssProvider *css_provider;
+ GtkStyleContext *style_context;
GHashTable *index;
+ const gchar *css;
gint i;
+ GError *error = NULL;
priv = etd->priv;
@@ -222,14 +226,20 @@ e_timezone_dialog_add_timezones (ETimezoneDialog *etd)
gtk_combo_box_set_model (combo, (GtkTreeModel *) list_store);
- gtk_rc_parse_string (
- "style \"e-timezone-combo-style\" {\n"
- " GtkComboBox::appears-as-list = 1\n"
- "}\n"
- "\n"
- "widget \"*.e-timezone-dialog-combo\" style \"e-timezone-combo-style\"");
-
- gtk_widget_set_name (priv->timezone_combo, "e-timezone-dialog-combo");
+ css_provider = gtk_css_provider_new ();
+ css = "GtkComboBox { -GtkComboBox-appears-as-list: 1; }";
+ gtk_css_provider_load_from_data (css_provider, css, -1, &error);
+ style_context = gtk_widget_get_style_context (priv->timezone_combo);
+ if (error == NULL) {
+ gtk_style_context_add_provider (
+ style_context,
+ GTK_STYLE_PROVIDER (css_provider),
+ GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
+ } else {
+ g_warning ("%s: %s", G_STRFUNC, error->message);
+ g_clear_error (&error);
+ }
+ g_object_unref (css_provider);
g_list_free (list_items);
}