]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkcssstylepropertyprivate.h
filechooserbutton: During unselect_all(), update the widgets in all situations
[~andy/gtk] / gtk / gtkcssstylepropertyprivate.h
index a51d455eaa51a31c5ca7800e9edca4e5da318162..fb851899ebe32c27c1011e2baf54a4802bdd8392 100644 (file)
@@ -34,28 +34,27 @@ G_BEGIN_DECLS
 typedef struct _GtkCssStyleProperty           GtkCssStyleProperty;
 typedef struct _GtkCssStylePropertyClass      GtkCssStylePropertyClass;
 
-typedef gboolean         (* GtkCssStylePropertyParseFunc)  (GtkCssStyleProperty    *property,
-                                                            GValue                 *value,
-                                                            GtkCssParser           *parser,
-                                                            GFile                  *base);
-typedef void             (* GtkCssStylePropertyPrintFunc)  (GtkCssStyleProperty    *property,
-                                                            const GValue           *value,
-                                                            GString                *string);
-typedef GtkCssValue  *   (* GtkCssStylePropertyComputeFunc)(GtkCssStyleProperty    *property,
-                                                            GtkStyleContext        *context,
-                                                            GtkCssValue            *specified);
+typedef GtkCssValue *    (* GtkCssStylePropertyParseFunc)  (GtkCssStyleProperty    *property,
+                                                            GtkCssParser           *parser);
+typedef void             (* GtkCssStylePropertyQueryFunc)  (GtkCssStyleProperty    *property,
+                                                            const GtkCssValue      *cssvalue,
+                                                            GValue                 *value);
+typedef GtkCssValue *    (* GtkCssStylePropertyAssignFunc) (GtkCssStyleProperty    *property,
+                                                            const GValue           *value);
 struct _GtkCssStyleProperty
 {
   GtkStyleProperty parent;
 
-  GType computed_type;
   GtkCssValue *initial_value;
   guint id;
   guint inherit :1;
+  guint animated :1;
+  guint affects_size :1;
+  guint affects_font :1;
 
   GtkCssStylePropertyParseFunc parse_value;
-  GtkCssStylePropertyPrintFunc print_value;
-  GtkCssStylePropertyComputeFunc compute_value;
+  GtkCssStylePropertyQueryFunc query_value;
+  GtkCssStylePropertyAssignFunc assign_value;
 };
 
 struct _GtkCssStylePropertyClass
@@ -73,22 +72,21 @@ guint                   _gtk_css_style_property_get_n_properties(void);
 GtkCssStyleProperty *   _gtk_css_style_property_lookup_by_id    (guint                   id);
 
 gboolean                _gtk_css_style_property_is_inherit      (GtkCssStyleProperty    *property);
+gboolean                _gtk_css_style_property_is_animated     (GtkCssStyleProperty    *property);
+gboolean                _gtk_css_style_property_affects_size    (GtkCssStyleProperty    *property);
+gboolean                _gtk_css_style_property_affects_font    (GtkCssStyleProperty    *property);
 guint                   _gtk_css_style_property_get_id          (GtkCssStyleProperty    *property);
 GtkCssValue  *          _gtk_css_style_property_get_initial_value
                                                                 (GtkCssStyleProperty    *property);
-GType                   _gtk_css_style_property_get_computed_type (GtkCssStyleProperty *property);
-GType                   _gtk_css_style_property_get_specified_type (GtkCssStyleProperty *property);
-gboolean                _gtk_css_style_property_is_specified_type (GtkCssStyleProperty  *property,
-                                                                 GType                   type);
-
-GtkCssValue *           _gtk_css_style_property_compute_value   (GtkCssStyleProperty    *property,
-                                                                 GtkStyleContext        *context,
-                                                                 GtkCssValue            *specified);
 
 void                    _gtk_css_style_property_print_value     (GtkCssStyleProperty    *property,
                                                                  GtkCssValue            *value,
                                                                  GString                *string);
-                                                                 
+
+gboolean                _gtk_css_style_property_changes_affect_size
+                                                                (const GtkBitmask       *changes);
+gboolean                _gtk_css_style_property_changes_affect_font
+                                                                (const GtkBitmask       *changes);
 
 G_END_DECLS