diff options
author | Tim Janik <timj@gtk.org> | 1998-03-23 03:31:11 +0000 |
---|---|---|
committer | Tim Janik <timj@src.gnome.org> | 1998-03-23 03:31:11 +0000 |
commit | 6b411f4b47b59e809488351edca82ed42bc9529e (patch) | |
tree | 913dd5b912aaec7ec6cc1e230509b87d1c07f0b1 /tests | |
parent | b78286eab5d9872527c956d328abc38e8b5a94b9 (diff) | |
download | gtk+-6b411f4b47b59e809488351edca82ed42bc9529e.tar.gz |
leave container_class->add and container_class->remove untouched if we
Mon Mar 23 01:08:30 1998 Tim Janik <timj@gtk.org>
* gtk/gtkclist.c (gtk_clist_class_init): leave container_class->add and
container_class->remove untouched if we don't implement them.
* gtk/gtkcontainer.c (gtk_container_class_init): add missing NULL
initialization for the class method (*foreach). implement a default
handler to output a warning for (*add) and (*remove).
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testgtk.c | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/tests/testgtk.c b/tests/testgtk.c index 3d6bd8f14d..c18bf26e6a 100644 --- a/tests/testgtk.c +++ b/tests/testgtk.c @@ -3019,7 +3019,7 @@ unselect_clist (GtkWidget *widget, clist_selected_row = row; } -void +static void insert_row_clist (GtkWidget *widget, gpointer data) { static char *text[] = @@ -3037,7 +3037,27 @@ insert_row_clist (GtkWidget *widget, gpointer data) clist_rows++; } -void +static void +clist_warning_test (GtkWidget *button, + GtkWidget *clist) +{ + GtkWidget *child; + static gboolean add_remove = FALSE; + + add_remove = !add_remove; + child = gtk_label_new ("Test"); + if (add_remove) + gtk_container_add (GTK_CONTAINER (clist), child); + else + { + child->parent = clist; + gtk_container_remove (GTK_CONTAINER (clist), child); + child->parent = NULL; + } + gtk_widget_destroy (child); +} + +static void create_clist () { gint i; @@ -3169,6 +3189,16 @@ create_clist () gtk_widget_show (button); + button = gtk_button_new_with_label ("Warning Test"); + gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0); + + gtk_signal_connect (GTK_OBJECT (button), + "clicked", + (GtkSignalFunc) clist_warning_test, + (gpointer) clist); + + gtk_widget_show (button); + /* vbox for the list itself */ box2 = gtk_vbox_new (FALSE, 10); gtk_container_border_width (GTK_CONTAINER (box2), 10); |