diff --git a/ChangeLog b/ChangeLog index 932f78b60e..9c8e1e87fd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sat Mar 21 10:39:02 CET 1998 Paolo Molaro + + * gtk/gtkcombo.[ch] "activate" signal can be disabled now + Fri Mar 20 20:49:33 1998 Radek Doulik * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 932f78b60e..9c8e1e87fd 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,7 @@ +Sat Mar 21 10:39:02 CET 1998 Paolo Molaro + + * gtk/gtkcombo.[ch] "activate" signal can be disabled now + Fri Mar 20 20:49:33 1998 Radek Doulik * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 932f78b60e..9c8e1e87fd 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,7 @@ +Sat Mar 21 10:39:02 CET 1998 Paolo Molaro + + * gtk/gtkcombo.[ch] "activate" signal can be disabled now + Fri Mar 20 20:49:33 1998 Radek Doulik * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 932f78b60e..9c8e1e87fd 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,7 @@ +Sat Mar 21 10:39:02 CET 1998 Paolo Molaro + + * gtk/gtkcombo.[ch] "activate" signal can be disabled now + Fri Mar 20 20:49:33 1998 Radek Doulik * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 932f78b60e..9c8e1e87fd 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,7 @@ +Sat Mar 21 10:39:02 CET 1998 Paolo Molaro + + * gtk/gtkcombo.[ch] "activate" signal can be disabled now + Fri Mar 20 20:49:33 1998 Radek Doulik * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 932f78b60e..9c8e1e87fd 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,7 @@ +Sat Mar 21 10:39:02 CET 1998 Paolo Molaro + + * gtk/gtkcombo.[ch] "activate" signal can be disabled now + Fri Mar 20 20:49:33 1998 Radek Doulik * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 932f78b60e..9c8e1e87fd 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,7 @@ +Sat Mar 21 10:39:02 CET 1998 Paolo Molaro + + * gtk/gtkcombo.[ch] "activate" signal can be disabled now + Fri Mar 20 20:49:33 1998 Radek Doulik * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing diff --git a/gtk/gtkcombo.c b/gtk/gtkcombo.c index d48684a66a..ebfd93e5c6 100644 --- a/gtk/gtkcombo.c +++ b/gtk/gtkcombo.c @@ -463,7 +463,7 @@ gtk_combo_init (GtkCombo * combo) (GtkSignalFunc) gtk_combo_entry_key_press, combo); gtk_signal_connect_after (GTK_OBJECT (combo->entry), "focus_out_event", (GtkSignalFunc) gtk_combo_entry_focus_out, combo); - gtk_signal_connect (GTK_OBJECT (combo->entry), "activate", + combo->activate_id = gtk_signal_connect (GTK_OBJECT (combo->entry), "activate", (GtkSignalFunc) gtk_combo_popup_list, combo); gtk_signal_connect (GTK_OBJECT (combo->button), "clicked", (GtkSignalFunc) gtk_combo_popup_list, combo); @@ -653,3 +653,15 @@ gtk_combo_size_allocate (GtkWidget *widget, gtk_widget_size_allocate (combo->button, &button_allocation); } } + +void +gtk_combo_disable_activate (GtkCombo* combo) +{ + g_return_if_fail (combo != NULL); + g_return_if_fail (GTK_IS_COMBO (combo)); + + if ( combo->activate_id ) { + gtk_signal_disconnect(GTK_OBJECT(combo), combo->activate_id); + combo->activate_id = 0; + } +} diff --git a/gtk/gtkcombo.h b/gtk/gtkcombo.h index 81522f46ae..5460515a8c 100644 --- a/gtk/gtkcombo.h +++ b/gtk/gtkcombo.h @@ -51,6 +51,8 @@ struct _GtkCombo { guint case_sensitive:1; guint use_arrows:1; guint use_arrows_always:1; + + guint activate_id; }; struct _GtkComboClass { @@ -82,6 +84,8 @@ void gtk_combo_set_item_string (GtkCombo* combo, void gtk_combo_set_popdown_strings (GtkCombo* combo, GList *strings); +void gtk_combo_disable_activate (GtkCombo* combo); + #ifdef __cplusplus } #endif /* __cplusplus */