summaryrefslogtreecommitdiff
path: root/gtk/gtkcssnodeprivate.h
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2015-01-26 02:18:06 +0100
committerBenjamin Otte <otte@redhat.com>2015-03-18 15:23:29 +0100
commit721dce73e088ed92e74a5b6593f58e91621cc6ea (patch)
treea25ef2f7aa7a1d6333d2a875be6526086755b3c8 /gtk/gtkcssnodeprivate.h
parent8c73799ca8e170f38eb6afe8604ac5973f6bf141 (diff)
downloadgtk+-721dce73e088ed92e74a5b6593f58e91621cc6ea.tar.gz
stylecontext: Handle parent in CssNode code
Make CssNode a real tree with a DOM-like API.
Diffstat (limited to 'gtk/gtkcssnodeprivate.h')
-rw-r--r--gtk/gtkcssnodeprivate.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/gtk/gtkcssnodeprivate.h b/gtk/gtkcssnodeprivate.h
index 46aafb01a7..c00c8754da 100644
--- a/gtk/gtkcssnodeprivate.h
+++ b/gtk/gtkcssnodeprivate.h
@@ -37,8 +37,14 @@ struct _GtkCssNode
{
GObject object;
+ GtkCssNode *parent;
+ GtkCssNode *previous_sibling;
+ GtkCssNode *next_sibling;
+ GtkCssNode *first_child;
+ GtkCssNode *last_child;
+ guint n_children;
+
GtkCssNodeDeclaration *decl;
- GtkCssNode *parent;
GtkCssStyle *style;
};
@@ -57,6 +63,10 @@ GType gtk_css_node_get_type (void) G_GNUC_CONST;
void gtk_css_node_set_parent (GtkCssNode *cssnode,
GtkCssNode *parent);
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);
+GtkCssNode * gtk_css_node_get_previous_sibling(GtkCssNode *cssnode);
+GtkCssNode * gtk_css_node_get_next_sibling (GtkCssNode *cssnode);
void gtk_css_node_set_widget_type (GtkCssNode *cssnode,
GType widget_type);