diff options
author | Christian Dywan <christian@twotoasts.de> | 2010-10-15 15:26:00 +0200 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2010-10-15 16:58:26 -0400 |
commit | a16722fc3a68bdc44d5aeab1297b533a10001e46 (patch) | |
tree | 3af217df335a936688bb7da0d2ef17fd716be891 /gtk/gtkcomboboxtext.c | |
parent | 7a5a5e9c5dee16601c8bf1df67ce12c81000bfb9 (diff) | |
download | gtk+-a16722fc3a68bdc44d5aeab1297b533a10001e46.tar.gz |
Use text column value in GtkComboBoxText
Diffstat (limited to 'gtk/gtkcomboboxtext.c')
-rw-r--r-- | gtk/gtkcomboboxtext.c | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/gtk/gtkcomboboxtext.c b/gtk/gtkcomboboxtext.c index ed352a3876..f1ecb8adb7 100644 --- a/gtk/gtkcomboboxtext.c +++ b/gtk/gtkcomboboxtext.c @@ -78,6 +78,7 @@ gtk_combo_box_text_append_text (GtkComboBoxText *combo_box, { GtkListStore *store; GtkTreeIter iter; + gint text_column; gint column_type; g_return_if_fail (GTK_IS_COMBO_BOX_TEXT (combo_box)); @@ -85,11 +86,12 @@ gtk_combo_box_text_append_text (GtkComboBoxText *combo_box, store = GTK_LIST_STORE (gtk_combo_box_get_model (GTK_COMBO_BOX (combo_box))); g_return_if_fail (GTK_IS_LIST_STORE (store)); - column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), 0); + text_column = gtk_combo_box_get_entry_text_column (GTK_COMBO_BOX (combo_box)); + column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), text_column); g_return_if_fail (column_type == G_TYPE_STRING); gtk_list_store_append (store, &iter); - gtk_list_store_set (store, &iter, 0, text, -1); + gtk_list_store_set (store, &iter, text_column, text, -1); } /** @@ -109,6 +111,7 @@ gtk_combo_box_text_insert_text (GtkComboBoxText *combo_box, { GtkListStore *store; GtkTreeIter iter; + gint text_column; gint column_type; g_return_if_fail (GTK_IS_COMBO_BOX_TEXT (combo_box)); @@ -117,11 +120,12 @@ gtk_combo_box_text_insert_text (GtkComboBoxText *combo_box, store = GTK_LIST_STORE (gtk_combo_box_get_model (GTK_COMBO_BOX (combo_box))); g_return_if_fail (GTK_IS_LIST_STORE (store)); - column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), 0); + text_column = gtk_combo_box_get_entry_text_column (GTK_COMBO_BOX (combo_box)); + column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), text_column); g_return_if_fail (column_type == G_TYPE_STRING); gtk_list_store_insert (store, &iter, position); - gtk_list_store_set (store, &iter, 0, text, -1); + gtk_list_store_set (store, &iter, text_column, text, -1); } /** @@ -139,6 +143,7 @@ gtk_combo_box_text_prepend_text (GtkComboBoxText *combo_box, { GtkListStore *store; GtkTreeIter iter; + gint text_column; gint column_type; g_return_if_fail (GTK_IS_COMBO_BOX_TEXT (combo_box)); @@ -146,11 +151,12 @@ gtk_combo_box_text_prepend_text (GtkComboBoxText *combo_box, store = GTK_LIST_STORE (gtk_combo_box_get_model (GTK_COMBO_BOX (combo_box))); g_return_if_fail (GTK_IS_LIST_STORE (store)); - column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), 0); + text_column = gtk_combo_box_get_entry_text_column (GTK_COMBO_BOX (combo_box)); + column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), text_column); g_return_if_fail (column_type == G_TYPE_STRING); gtk_list_store_prepend (store, &iter); - gtk_list_store_set (store, &iter, 0, text, -1); + gtk_list_store_set (store, &iter, text_column, text, -1); } /** @@ -169,6 +175,7 @@ gtk_combo_box_text_remove (GtkComboBoxText *combo_box, GtkTreeModel *model; GtkListStore *store; GtkTreeIter iter; + gint text_column; gint column_type; g_return_if_fail (GTK_IS_COMBO_BOX_TEXT (combo_box)); @@ -177,7 +184,8 @@ gtk_combo_box_text_remove (GtkComboBoxText *combo_box, model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo_box)); store = GTK_LIST_STORE (model); g_return_if_fail (GTK_IS_LIST_STORE (store)); - column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), 0); + text_column = gtk_combo_box_get_entry_text_column (GTK_COMBO_BOX (combo_box)); + column_type = gtk_tree_model_get_column_type (GTK_TREE_MODEL (store), text_column); g_return_if_fail (column_type == G_TYPE_STRING); if (gtk_tree_model_iter_nth_child (model, &iter, NULL, position)) @@ -207,13 +215,15 @@ gtk_combo_box_text_get_active_text (GtkComboBoxText *combo_box) if (gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo_box), &iter)) { GtkTreeModel *model; + gint text_column; gint column_type; model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo_box)); g_return_val_if_fail (GTK_IS_LIST_STORE (model), NULL); - column_type = gtk_tree_model_get_column_type (model, 0); + text_column = gtk_combo_box_get_entry_text_column (GTK_COMBO_BOX (combo_box)); + column_type = gtk_tree_model_get_column_type (model, text_column); g_return_val_if_fail (column_type == G_TYPE_STRING, NULL); - gtk_tree_model_get (model, &iter, 0, &text, -1); + gtk_tree_model_get (model, &iter, text_column, &text, -1); } return text; |