]> Pileus Git - ~andy/gtk/blobdiff - tests/testwindows.c
Add test for gdk_window_restack
[~andy/gtk] / tests / testwindows.c
index 06a0ef45e8581fdb5ce33a0380192f62ed18caef..a6cd0a5bd0f798b6506328006e9848d159e25eac 100644 (file)
@@ -542,6 +542,28 @@ manual_clicked (GtkWidget *button,
   g_list_free (selected);
 }
 
+static void
+restack_clicked (GtkWidget *button,
+                gpointer data)
+{
+  GList *selected;
+
+  selected = get_selected_windows ();
+
+  if (g_list_length (selected) != 2)
+    {
+      g_warning ("select two windows");
+    }
+
+  gdk_window_restack (selected->data,
+                     selected->next->data,
+                     GPOINTER_TO_INT (data));
+
+  g_list_free (selected);
+
+  update_store ();
+}
+
 static void
 scroll_window_clicked (GtkWidget *button, 
                       gpointer data)
@@ -860,7 +882,7 @@ main (int argc, char **argv)
   gtk_widget_show (scrolled);
   gtk_widget_show (treeview);
   
-  table = gtk_table_new (4, 4, TRUE);
+  table = gtk_table_new (5, 4, TRUE);
   gtk_box_pack_start (GTK_BOX (vbox),
                      table,
                      FALSE, FALSE,
@@ -1008,6 +1030,26 @@ main (int argc, char **argv)
                             2, 3);
   gtk_widget_show (button);
 
+  button = gtk_button_new_with_label ("Restack above");
+  g_signal_connect (button, "clicked",
+                   G_CALLBACK (restack_clicked),
+                   1);
+  gtk_table_attach_defaults (GTK_TABLE (table),
+                            button,
+                            2, 3,
+                            3, 4);
+  gtk_widget_show (button);
+
+  button = gtk_button_new_with_label ("Restack below");
+  g_signal_connect (button, "clicked",
+                   G_CALLBACK (restack_clicked),
+                   0);
+  gtk_table_attach_defaults (GTK_TABLE (table),
+                            button,
+                            3, 4,
+                            3, 4);
+  gtk_widget_show (button);
+
   button = gtk_button_new_with_label ("draw drawable");
   gtk_box_pack_start (GTK_BOX (vbox),
                      button,