[gtk/deprecate-render: 41/43] cssnode: Avoid style context api




commit f42fe500c90187afc75cbcdb52eee2f5c720cd1f
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Oct 12 09:47:33 2022 -0400

    cssnode: Avoid style context api
    
    Duplicate the print flags in gtkcssnodeprivate.h,
    so we don't rely on gtkstylecontext.h here.

 gtk/deprecated/gtkstylecontext.c |  2 +-
 gtk/gtkcssnode.c                 | 14 +++++++-------
 gtk/gtkcssnodeprivate.h          | 16 +++++++++++-----
 3 files changed, 19 insertions(+), 13 deletions(-)
---
diff --git a/gtk/deprecated/gtkstylecontext.c b/gtk/deprecated/gtkstylecontext.c
index 72e30e2822..0f399a5a95 100644
--- a/gtk/deprecated/gtkstylecontext.c
+++ b/gtk/deprecated/gtkstylecontext.c
@@ -976,7 +976,7 @@ gtk_style_context_to_string (GtkStyleContext           *context,
 
   string = g_string_new ("");
 
-  gtk_css_node_print (priv->cssnode, flags, string, 0);
+  gtk_css_node_print (priv->cssnode, (GtkCssNodePrintFlags)flags, string, 0);
 
   return g_string_free (string, FALSE);
 }
diff --git a/gtk/gtkcssnode.c b/gtk/gtkcssnode.c
index 90828866c9..2431f1cc2c 100644
--- a/gtk/gtkcssnode.c
+++ b/gtk/gtkcssnode.c
@@ -1388,10 +1388,10 @@ gtk_css_node_get_style_provider (GtkCssNode *cssnode)
 }
 
 void
-gtk_css_node_print (GtkCssNode                *cssnode,
-                    GtkStyleContextPrintFlags  flags,
-                    GString                   *string,
-                    guint                      indent)
+gtk_css_node_print (GtkCssNode           *cssnode,
+                    GtkCssNodePrintFlags  flags,
+                    GString              *string,
+                    guint                 indent)
 {
   gboolean need_newline = FALSE;
 
@@ -1405,7 +1405,7 @@ gtk_css_node_print (GtkCssNode                *cssnode,
   if (!cssnode->visible)
     g_string_append_c (string, ']');
 
-  if (flags & GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE)
+  if (flags & GTK_CSS_NODE_PRINT_SHOW_CHANGE)
     {
       GtkCssStyle *style = gtk_css_node_get_style (cssnode);
       GtkCssChange change;
@@ -1417,10 +1417,10 @@ gtk_css_node_print (GtkCssNode                *cssnode,
 
   g_string_append_c (string, '\n');
 
-  if (flags & GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE)
+  if (flags & GTK_CSS_NODE_PRINT_SHOW_STYLE)
     need_newline = gtk_css_style_print (gtk_css_node_get_style (cssnode), string, indent + 2, TRUE);
 
-  if (flags & GTK_STYLE_CONTEXT_PRINT_RECURSE)
+  if (flags & GTK_CSS_NODE_PRINT_RECURSE)
     {
       GtkCssNode *node;
 
diff --git a/gtk/gtkcssnodeprivate.h b/gtk/gtkcssnodeprivate.h
index c713a87df6..963f7ecbc3 100644
--- a/gtk/gtkcssnodeprivate.h
+++ b/gtk/gtkcssnodeprivate.h
@@ -24,7 +24,6 @@
 #include "gtkcssstylechangeprivate.h"
 #include "gtkbitmaskprivate.h"
 #include "gtkcsstypesprivate.h"
-#include "deprecated/gtkstylecontext.h"
 #include "gtklistlistmodelprivate.h"
 
 G_BEGIN_DECLS
@@ -155,10 +154,17 @@ void                    gtk_css_node_validate           (GtkCssNode            *
 
 GtkStyleProvider *      gtk_css_node_get_style_provider (GtkCssNode            *cssnode) G_GNUC_PURE;
 
-void                    gtk_css_node_print              (GtkCssNode                *cssnode,
-                                                         GtkStyleContextPrintFlags  flags,
-                                                         GString                   *string,
-                                                         guint                      indent);
+typedef enum {
+  GTK_CSS_NODE_PRINT_NONE         = 0,
+  GTK_CSS_NODE_PRINT_RECURSE      = 1 << 0,
+  GTK_CSS_NODE_PRINT_SHOW_STYLE   = 1 << 1,
+  GTK_CSS_NODE_PRINT_SHOW_CHANGE  = 1 << 2
+} GtkCssNodePrintFlags;
+
+void                    gtk_css_node_print              (GtkCssNode           *cssnode,
+                                                         GtkCssNodePrintFlags  flags,
+                                                         GString              *string,
+                                                         guint                 indent);
 
 GListModel *            gtk_css_node_observe_children   (GtkCssNode                *cssnode);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]