mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-10 10:50:10 +00:00
Make gtk_combo_box_get_active_text do the right thing for GtkComboBoxEntry
2005-04-01 Matthias Clasen <mclasen@redhat.com> Make gtk_combo_box_get_active_text do the right thing for GtkComboBoxEntry (#171373, Robert Staudinger) * gtk/gtkcombobox.h: Add a get_active_text vfunc. * gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And implement it here. * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text): Implement get_active_text by always returning the content of the entry.
This commit is contained in:
parent
6160b3ba8f
commit
b82af5ce89
14
ChangeLog
14
ChangeLog
@ -1,3 +1,17 @@
|
||||
2005-04-01 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
Make gtk_combo_box_get_active_text do the right thing for
|
||||
GtkComboBoxEntry (#171373, Robert Staudinger)
|
||||
|
||||
* gtk/gtkcombobox.h: Add a get_active_text vfunc.
|
||||
|
||||
* gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And
|
||||
implement it here.
|
||||
|
||||
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text):
|
||||
Implement get_active_text by always returning the content of
|
||||
the entry.
|
||||
|
||||
2005-03-31 Sven Neumann <sven@gimp.org>
|
||||
|
||||
Merged from gtk-2-6:
|
||||
|
@ -1,3 +1,17 @@
|
||||
2005-04-01 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
Make gtk_combo_box_get_active_text do the right thing for
|
||||
GtkComboBoxEntry (#171373, Robert Staudinger)
|
||||
|
||||
* gtk/gtkcombobox.h: Add a get_active_text vfunc.
|
||||
|
||||
* gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And
|
||||
implement it here.
|
||||
|
||||
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text):
|
||||
Implement get_active_text by always returning the content of
|
||||
the entry.
|
||||
|
||||
2005-03-31 Sven Neumann <sven@gimp.org>
|
||||
|
||||
Merged from gtk-2-6:
|
||||
|
@ -1,3 +1,17 @@
|
||||
2005-04-01 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
Make gtk_combo_box_get_active_text do the right thing for
|
||||
GtkComboBoxEntry (#171373, Robert Staudinger)
|
||||
|
||||
* gtk/gtkcombobox.h: Add a get_active_text vfunc.
|
||||
|
||||
* gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And
|
||||
implement it here.
|
||||
|
||||
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text):
|
||||
Implement get_active_text by always returning the content of
|
||||
the entry.
|
||||
|
||||
2005-03-31 Sven Neumann <sven@gimp.org>
|
||||
|
||||
Merged from gtk-2-6:
|
||||
|
@ -285,6 +285,7 @@ static gboolean gtk_combo_box_key_press (GtkWidget *widget,
|
||||
gpointer data);
|
||||
|
||||
static void gtk_combo_box_check_appearance (GtkComboBox *combo_box);
|
||||
static gchar * gtk_combo_box_real_get_active_text (GtkComboBox *combo_box);
|
||||
|
||||
/* listening to the model */
|
||||
static void gtk_combo_box_model_row_inserted (GtkTreeModel *model,
|
||||
@ -492,6 +493,8 @@ gtk_combo_box_class_init (GtkComboBoxClass *klass)
|
||||
|
||||
binding_set = gtk_binding_set_by_class (klass);
|
||||
|
||||
klass->get_active_text = gtk_combo_box_real_get_active_text;
|
||||
|
||||
container_class = (GtkContainerClass *)klass;
|
||||
container_class->forall = gtk_combo_box_forall;
|
||||
container_class->add = gtk_combo_box_add;
|
||||
@ -4743,7 +4746,8 @@ gtk_combo_box_remove_text (GtkComboBox *combo_box,
|
||||
*
|
||||
* Returns the currently active string in @combo_box or %NULL if none
|
||||
* is selected. Note that you can only use this function with combo
|
||||
* boxes constructed with gtk_combo_box_new_text().
|
||||
* boxes constructed with gtk_combo_box_new_text() and with
|
||||
* #GtkComboBoxEntry<!-- -->s.
|
||||
*
|
||||
* Returns: a newly allocated string containing the currently active text.
|
||||
*
|
||||
@ -4751,11 +4755,25 @@ gtk_combo_box_remove_text (GtkComboBox *combo_box,
|
||||
*/
|
||||
gchar *
|
||||
gtk_combo_box_get_active_text (GtkComboBox *combo_box)
|
||||
{
|
||||
GtkComboBoxClass *class;
|
||||
|
||||
g_return_val_if_fail (GTK_IS_COMBO_BOX (combo_box), NULL);
|
||||
|
||||
class = GTK_COMBO_BOX_GET_CLASS (combo_box);
|
||||
|
||||
if (class->get_active_text)
|
||||
return (* class->get_active_text) (combo_box);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static gchar *
|
||||
gtk_combo_box_real_get_active_text (GtkComboBox *combo_box)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
gchar *text = NULL;
|
||||
|
||||
g_return_val_if_fail (GTK_IS_COMBO_BOX (combo_box), NULL);
|
||||
g_return_val_if_fail (GTK_IS_LIST_STORE (combo_box->priv->model), NULL);
|
||||
|
||||
if (gtk_combo_box_get_active_iter (combo_box, &iter))
|
||||
|
@ -52,11 +52,13 @@ struct _GtkComboBoxClass
|
||||
/* signals */
|
||||
void (* changed) (GtkComboBox *combo_box);
|
||||
|
||||
/* vfuncs */
|
||||
gchar * (* get_active_text) (GtkComboBox *combo_box);
|
||||
|
||||
/* Padding for future expansion */
|
||||
void (*_gtk_reserved0) (void);
|
||||
void (*_gtk_reserved1) (void);
|
||||
void (*_gtk_reserved2) (void);
|
||||
void (*_gtk_reserved3) (void);
|
||||
};
|
||||
|
||||
|
||||
|
@ -50,6 +50,7 @@ static void gtk_combo_box_entry_get_property (GObject *object,
|
||||
GValue *value,
|
||||
GParamSpec *pspec);
|
||||
|
||||
static gchar *gtk_combo_box_entry_get_active_text (GtkComboBox *combo_box);
|
||||
static void gtk_combo_box_entry_active_changed (GtkComboBox *combo_box,
|
||||
gpointer user_data);
|
||||
static void gtk_combo_box_entry_contents_changed (GtkEntry *entry,
|
||||
@ -101,7 +102,8 @@ gtk_combo_box_entry_class_init (GtkComboBoxEntryClass *klass)
|
||||
{
|
||||
GObjectClass *object_class;
|
||||
GtkWidgetClass *widget_class;
|
||||
|
||||
GtkComboBoxClass *combo_class;
|
||||
|
||||
object_class = (GObjectClass *)klass;
|
||||
object_class->set_property = gtk_combo_box_entry_set_property;
|
||||
object_class->get_property = gtk_combo_box_entry_get_property;
|
||||
@ -109,6 +111,9 @@ gtk_combo_box_entry_class_init (GtkComboBoxEntryClass *klass)
|
||||
widget_class = (GtkWidgetClass *)klass;
|
||||
widget_class->mnemonic_activate = gtk_combo_box_entry_mnemonic_activate;
|
||||
|
||||
combo_class = (GtkComboBoxClass *)klass;
|
||||
combo_class->get_active_text = gtk_combo_box_entry_get_active_text;
|
||||
|
||||
g_object_class_install_property (object_class,
|
||||
PROP_TEXT_COLUMN,
|
||||
g_param_spec_int ("text-column",
|
||||
@ -384,5 +389,16 @@ gtk_combo_box_entry_new_text (void)
|
||||
return entry_box;
|
||||
}
|
||||
|
||||
static gchar *
|
||||
gtk_combo_box_entry_get_active_text (GtkComboBox *combo_box)
|
||||
{
|
||||
GtkComboBoxEntry *combo = GTK_COMBO_BOX_ENTRY (combo_box);
|
||||
|
||||
if (combo->priv->entry)
|
||||
return g_strdup (gtk_entry_get_text (combo->priv->entry));
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#define __GTK_COMBO_BOX_ENTRY_C__
|
||||
#include "gtkaliasdef.c"
|
||||
|
Loading…
Reference in New Issue
Block a user