diff options
author | Jonathan Blandford <jrb@redhat.com> | 2003-10-14 20:09:39 +0000 |
---|---|---|
committer | Jonathan Blandford <jrb@src.gnome.org> | 2003-10-14 20:09:39 +0000 |
commit | 87a1e40eb8f386246d1cbe4a546f95e08b8f4463 (patch) | |
tree | 696fdb440b4399aa3dacc6886dfa8caa2eb7452b | |
parent | e246918d1b011bd669da160a66fe577b36e443d3 (diff) | |
download | gdk-pixbuf-87a1e40eb8f386246d1cbe4a546f95e08b8f4463.tar.gz |
New function to set the active row by iter.
Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
to set the active row by iter.
* gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
to get the active row by iter.
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 8 | ||||
-rw-r--r-- | gtk/gtkcombobox.c | 59 | ||||
-rw-r--r-- | gtk/gtkcombobox.h | 4 |
7 files changed, 103 insertions, 0 deletions
@@ -1,3 +1,11 @@ +Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com> + + * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function + to set the active row by iter. + + * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function + to get the active row by iter. + 2003-10-13 Federico Mena Quintero <federico@ximian.com> * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 97925d397..45e3897b4 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,11 @@ +Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com> + + * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function + to set the active row by iter. + + * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function + to get the active row by iter. + 2003-10-13 Federico Mena Quintero <federico@ximian.com> * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 97925d397..45e3897b4 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,11 @@ +Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com> + + * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function + to set the active row by iter. + + * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function + to get the active row by iter. + 2003-10-13 Federico Mena Quintero <federico@ximian.com> * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 97925d397..45e3897b4 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,11 @@ +Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com> + + * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function + to set the active row by iter. + + * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function + to get the active row by iter. + 2003-10-13 Federico Mena Quintero <federico@ximian.com> * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 97925d397..45e3897b4 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,11 @@ +Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com> + + * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function + to set the active row by iter. + + * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function + to get the active row by iter. + 2003-10-13 Federico Mena Quintero <federico@ximian.com> * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do diff --git a/gtk/gtkcombobox.c b/gtk/gtkcombobox.c index e685751e8..3632786ae 100644 --- a/gtk/gtkcombobox.c +++ b/gtk/gtkcombobox.c @@ -2392,6 +2392,65 @@ gtk_combo_box_set_active (GtkComboBox *combo_box, g_signal_emit_by_name (combo_box, "changed", NULL, NULL); } + +/** + * gtk_combo_box_get_active_iter: + * @combo_box: A #GtkComboBox + * @iter: The uninitialized #GtkTreeIter. + * + * Set @iter to point to the current active item, if it exists. + * + * Return value: %TRUE, if @iter was set + * + * Since: 2.4 + **/ +gboolean +gtk_combo_box_get_active_iter (GtkComboBox *combo_box, + GtkTreeIter *iter) +{ + GtkTreePath *path; + gint active; + gboolean retval; + + g_return_val_if_fail (GTK_IS_COMBO_BOX (combo_box), FALSE); + + active = gtk_combo_box_get_active (combo_box); + if (active < 0) + return FALSE; + + path = gtk_tree_path_new_from_indices (active, -1); + retval = gtk_tree_model_get_iter (gtk_combo_box_get_model (combo_box), + iter, path); + gtk_tree_path_free (path); + + return retval; +} + +/** + * gtk_combo_box_set_active_iter: + * @combo_box: A #GtkComboBox + * @iter: The #GtkTreeIter. + * + * Sets the current active item to be the one referenced by @iter. + * + * Since: 2.4 + **/ +void +gtk_combo_box_set_active_iter (GtkComboBox *combo_box, + GtkTreeIter *iter) +{ + GtkTreePath *path; + + g_return_if_fail (GTK_IS_COMBO_BOX (combo_box)); + + path = gtk_tree_model_get_path (gtk_combo_box_get_model (combo_box), iter); + g_return_if_fail (path != NULL); + g_return_if_fail (gtk_tree_path_get_depth (path) != 1); + + gtk_combo_box_set_active (combo_box, gtk_tree_path_get_indices (path)[0]); + gtk_tree_path_free (path); +} + /** * gtk_combo_box_get_model * @combo_box: A #GtkComboBox. diff --git a/gtk/gtkcombobox.h b/gtk/gtkcombobox.h index bb9e0aa7c..4a188a64a 100644 --- a/gtk/gtkcombobox.h +++ b/gtk/gtkcombobox.h @@ -70,6 +70,10 @@ void gtk_combo_box_set_column_span_column (GtkComboBox *combo_box, gint gtk_combo_box_get_active (GtkComboBox *combo_box); void gtk_combo_box_set_active (GtkComboBox *combo_box, gint index); +gboolean gtk_combo_box_get_active_iter (GtkComboBox *combo_box, + GtkTreeIter *iter); +void gtk_combo_box_set_active_iter (GtkComboBox *combo_box, + GtkTreeIter *iter); /* getters and setters */ GtkTreeModel *gtk_combo_box_get_model (GtkComboBox *combo_box); |