GtkBitmask * _gtk_css_computed_values_compute_dependencies (GtkCssComputedValues *values, const GtkBitmask *parent_changes) { GtkBitmask *changes; gtk_internal_return_val_if_fail (GTK_IS_CSS_COMPUTED_VALUES (values), _gtk_bitmask_new ()); changes = _gtk_bitmask_copy (parent_changes); changes = _gtk_bitmask_intersect (changes, values->depends_on_parent); if (_gtk_bitmask_get (changes, GTK_CSS_PROPERTY_COLOR)) changes = _gtk_bitmask_union (changes, values->depends_on_color); if (_gtk_bitmask_get (changes, GTK_CSS_PROPERTY_FONT_SIZE)) changes = _gtk_bitmask_union (changes, values->depends_on_font_size); return changes; }
GtkCssLookup * _gtk_css_lookup_new (const GtkBitmask *relevant) { GtkCssLookup *lookup; lookup = g_malloc0 (sizeof (GtkCssLookup)); if (relevant) { lookup->missing = _gtk_bitmask_copy (relevant); } else { lookup->missing = _gtk_bitmask_new (); lookup->missing = _gtk_bitmask_invert_range (lookup->missing, 0, GTK_CSS_PROPERTY_N_PROPERTIES); } return lookup; }
GtkCssLookup * _gtk_css_lookup_new (const GtkBitmask *relevant) { GtkCssLookup *lookup; guint n = _gtk_css_style_property_get_n_properties (); lookup = g_malloc0 (sizeof (GtkCssLookup) + sizeof (GtkCssLookupValue) * n); if (relevant) { lookup->missing = _gtk_bitmask_copy (relevant); } else { lookup->missing = _gtk_bitmask_new (); lookup->missing = _gtk_bitmask_invert_range (lookup->missing, 0, n); } return lookup; }