mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-17 23:10:22 +00:00
css: Add _gtk_css_style_property_get_mask_affecting()
Computes a bitmask for all properties that affect the given flags.
This commit is contained in:
parent
ffff7b055b
commit
c42e54e949
@ -406,6 +406,35 @@ _gtk_css_style_property_get_initial_value (GtkCssStyleProperty *property)
|
||||
return property->initial_value;
|
||||
}
|
||||
|
||||
/**
|
||||
* _gtk_css_style_property_get_mask_affecting:
|
||||
* @flags: the flags that are affected
|
||||
*
|
||||
* Computes a bitmask for all properties that have at least one of @flags
|
||||
* set.
|
||||
*
|
||||
* Returns: (transfer: full): A #GtkBitmask with the bit set for every
|
||||
* property that has at least one of @flags set.
|
||||
*/
|
||||
GtkBitmask *
|
||||
_gtk_css_style_property_get_mask_affecting (GtkCssAffects affects)
|
||||
{
|
||||
GtkBitmask *result;
|
||||
guint i;
|
||||
|
||||
result = _gtk_bitmask_new ();
|
||||
|
||||
for (i = 0; i < _gtk_css_style_property_get_n_properties (); i++)
|
||||
{
|
||||
GtkCssStyleProperty *prop = _gtk_css_style_property_lookup_by_id (i);
|
||||
|
||||
if (_gtk_css_style_property_get_affects (prop) & affects)
|
||||
result = _gtk_bitmask_set (result, i, TRUE);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
gboolean
|
||||
_gtk_css_style_property_changes_affect_size (const GtkBitmask *changes)
|
||||
{
|
||||
|
@ -83,6 +83,8 @@ void _gtk_css_style_property_print_value (GtkCssStyleProp
|
||||
GtkCssValue *value,
|
||||
GString *string);
|
||||
|
||||
GtkBitmask * _gtk_css_style_property_get_mask_affecting
|
||||
(GtkCssAffects affects);
|
||||
gboolean _gtk_css_style_property_changes_affect_size
|
||||
(const GtkBitmask *changes);
|
||||
gboolean _gtk_css_style_property_changes_affect_font
|
||||
|
Loading…
Reference in New Issue
Block a user