Commit d3a0dfe8 authored by Timm Bäder's avatar Timm Bäder 👎

cssstylechange: Add helper function to print change

So I don't have to print both styles to the console, paste them both
into a file and then run diff on the 2 files anymore.
parent 2902063f
......@@ -110,3 +110,47 @@ gtk_css_style_change_changes_property (GtkCssStyleChange *change,
return _gtk_bitmask_get (change->changes, id);
}
void
gtk_css_style_change_print (GtkCssStyleChange *change,
GString *string)
{
int i;
GtkCssStyle *old = gtk_css_style_change_get_old_style (change);
GtkCssStyle *new = gtk_css_style_change_get_new_style (change);
for (i = 0; i < GTK_CSS_PROPERTY_N_PROPERTIES; i ++)
{
if (gtk_css_style_change_changes_property (change, i))
{
GtkCssStyleProperty *prop;
GtkCssValue *value;
const char *name;
prop = _gtk_css_style_property_lookup_by_id (i);
name = _gtk_style_property_get_name (GTK_STYLE_PROPERTY (prop));
value = gtk_css_style_get_value (old, i);
_gtk_css_value_print (value, string);
g_string_append_printf (string, "%s: ", name);
_gtk_css_value_print (value, string);
g_string_append (string, "\n");
g_string_append_printf (string, "%s: ", name);
value = gtk_css_style_get_value (new, i);
_gtk_css_value_print (value, string);
g_string_append (string, "\n");
}
}
}
char *
gtk_css_style_change_to_string (GtkCssStyleChange *change)
{
GString *string = g_string_new ("");
gtk_css_style_change_print (change, string);
return g_string_free (string, FALSE);
}
......@@ -47,7 +47,9 @@ gboolean gtk_css_style_change_affects (GtkCssStyleChange
GtkCssAffects affects);
gboolean gtk_css_style_change_changes_property (GtkCssStyleChange *change,
guint id);
void gtk_css_style_change_print (GtkCssStyleChange *change, GString *string);
char * gtk_css_style_change_to_string (GtkCssStyleChange *change);
G_END_DECLS
#endif /* __GTK_CSS_STYLE_CHANGE_PRIVATE_H__ */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment