Add a function to get a font from a css style

Similar in spirit to
gtk_style_context_get (ctx, state, "font", ...)
but avoids the need for a style context.
This will be used to for css-styled text rendering
from css subnodes.
This commit is contained in:
Matthias Clasen 2016-06-03 00:29:05 -04:00
parent 7b0929ad38
commit db50849d79
2 changed files with 20 additions and 0 deletions

View File

@ -264,3 +264,22 @@ gtk_css_style_get_pango_attributes (GtkCssStyle *style)
return attrs; return attrs;
} }
static GtkCssValue *
query_func (guint id,
gpointer values)
{
return gtk_css_style_get_value (values, id);
}
PangoFontDescription *
gtk_css_style_get_pango_font (GtkCssStyle *style)
{
GtkStyleProperty *prop;
GValue value = { 0, };
prop = _gtk_style_property_lookup ("font");
_gtk_style_property_query (prop, &value, query_func, style);
return (PangoFontDescription *)g_value_get_boxed (&value);
}

View File

@ -76,6 +76,7 @@ gboolean gtk_css_style_print (GtkCssStyle
gboolean skip_initial); gboolean skip_initial);
PangoAttrList * gtk_css_style_get_pango_attributes (GtkCssStyle *style); PangoAttrList * gtk_css_style_get_pango_attributes (GtkCssStyle *style);
PangoFontDescription * gtk_css_style_get_pango_font (GtkCssStyle *style);
G_END_DECLS G_END_DECLS