cssnode: Add gtk_css_node_reverse_children()
authorBenjamin Otte <otte@redhat.com>
Sun, 12 Jul 2015 21:11:11 +0000 (23:11 +0200)
committerBenjamin Otte <otte@redhat.com>
Thu, 16 Jul 2015 04:15:13 +0000 (06:15 +0200)
gtk/gtkcssnode.c
gtk/gtkcssnodeprivate.h

index 8f1e4d9df50317679fdbadff45d1f198a76bf456..9d76f2ae31adb5765dc5e1ccd4c21624bbfc1004 100644 (file)
@@ -772,6 +772,21 @@ gtk_css_node_insert_before (GtkCssNode *parent,
                            next_sibling ? next_sibling->previous_sibling : parent->last_child);
 }
 
+void
+gtk_css_node_reverse_children (GtkCssNode *cssnode)
+{
+  GtkCssNode *end;
+
+  end = cssnode->last_child;
+  while (cssnode->first_child != end)
+    {
+      gtk_css_node_reposition (cssnode->first_child,
+                               cssnode,
+                               end);
+    }
+
+}
+
 GtkCssNode *
 gtk_css_node_get_parent (GtkCssNode *cssnode)
 {
index ad606aa93d7bd7355c2ce7e2790f2ee30bbb22d4..cbed7e8585c4b90f35b5255b9de7a2d7c2a03c6c 100644 (file)
@@ -101,6 +101,8 @@ void                    gtk_css_node_insert_after       (GtkCssNode            *
 void                    gtk_css_node_insert_before      (GtkCssNode            *parent,
                                                          GtkCssNode            *cssnode,
                                                          GtkCssNode            *next_sibling);
+void                    gtk_css_node_reverse_children   (GtkCssNode            *cssnode);
+
 GtkCssNode *            gtk_css_node_get_parent         (GtkCssNode            *cssnode);
 GtkCssNode *            gtk_css_node_get_first_child    (GtkCssNode            *cssnode);
 GtkCssNode *            gtk_css_node_get_last_child     (GtkCssNode            *cssnode);