summaryrefslogtreecommitdiff
path: root/gtk/testgtk.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/testgtk.c')
-rw-r--r--gtk/testgtk.c34
1 files changed, 32 insertions, 2 deletions
diff --git a/gtk/testgtk.c b/gtk/testgtk.c
index 3d6bd8f14d..c18bf26e6a 100644
--- a/gtk/testgtk.c
+++ b/gtk/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);