aboutsummaryrefslogtreecommitdiffstats
path: root/filter/filter-option.c
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2009-04-24 17:45:21 +0800
committerMilan Crha <mcrha@redhat.com>2009-04-24 17:45:21 +0800
commit8a072ffc7c0ddcde472877a51ace0bb14f86fb0a (patch)
tree5c49c7807f24cd118e32e11ad52482b0ce65d0e6 /filter/filter-option.c
parentf6792a6f1e60b04ee1c137c9232802df437580f6 (diff)
downloadgsoc2013-evolution-8a072ffc7c0ddcde472877a51ace0bb14f86fb0a.tar
gsoc2013-evolution-8a072ffc7c0ddcde472877a51ace0bb14f86fb0a.tar.gz
gsoc2013-evolution-8a072ffc7c0ddcde472877a51ace0bb14f86fb0a.tar.bz2
gsoc2013-evolution-8a072ffc7c0ddcde472877a51ace0bb14f86fb0a.tar.lz
gsoc2013-evolution-8a072ffc7c0ddcde472877a51ace0bb14f86fb0a.tar.xz
gsoc2013-evolution-8a072ffc7c0ddcde472877a51ace0bb14f86fb0a.tar.zst
gsoc2013-evolution-8a072ffc7c0ddcde472877a51ace0bb14f86fb0a.zip
GN-bug #572348 - Removed deprecated Gtk+ symbols
Some still left, because those gone in kill-bonobo branch.
Diffstat (limited to 'filter/filter-option.c')
-rw-r--r--filter/filter-option.c34
1 files changed, 8 insertions, 26 deletions
diff --git a/filter/filter-option.c b/filter/filter-option.c
index 7af511b543..3b93084d67 100644
--- a/filter/filter-option.c
+++ b/filter/filter-option.c
@@ -342,11 +342,11 @@ xml_decode (FilterElement *fe, xmlNodePtr node)
}
static void
-option_changed (GtkWidget *widget, FilterElement *fe)
+combobox_changed (GtkWidget *widget, FilterElement *fe)
{
FilterOption *fo = (FilterOption *)fe;
- fo->current = g_object_get_data ((GObject *) widget, "option");
+ fo->current = (struct _filter_option *) g_list_nth (fo->options, gtk_combo_box_get_active (GTK_COMBO_BOX (widget)));
}
static GSList *
@@ -376,10 +376,7 @@ static GtkWidget *
get_widget (FilterElement *fe)
{
FilterOption *fo = (FilterOption *)fe;
- GtkWidget *menu;
- GtkWidget *omenu;
- GtkWidget *item;
- GtkWidget *first = NULL;
+ GtkWidget *combobox;
GList *l;
struct _filter_option *op;
int index = 0, current = 0;
@@ -436,35 +433,20 @@ get_widget (FilterElement *fe)
g_list_free (old_ops);
}
- menu = gtk_menu_new ();
+ combobox = gtk_combo_box_new_text ();
l = fo->options;
while (l) {
op = l->data;
- item = gtk_menu_item_new_with_label (_(op->title));
- g_object_set_data ((GObject *) item, "option", op);
- g_signal_connect (item, "activate", G_CALLBACK (option_changed), fe);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
- gtk_widget_show (item);
- if (op == fo->current) {
- current = index;
- first = item;
- } else if (!first) {
- first = item;
- }
+ gtk_combo_box_append_text (GTK_COMBO_BOX (combobox), _(op->title));
l = g_list_next (l);
index++;
}
- omenu = gtk_option_menu_new ();
- gtk_option_menu_set_menu (GTK_OPTION_MENU (omenu), menu);
-
- if (first)
- g_signal_emit_by_name (first, "activate", fe);
-
- gtk_option_menu_set_history (GTK_OPTION_MENU (omenu), current);
+ g_signal_connect (combobox, "changed", G_CALLBACK (combobox_changed), fe);
+ gtk_combo_box_set_active (GTK_COMBO_BOX (combobox), current);
- return omenu;
+ return combobox;
}
static void