summaryrefslogtreecommitdiff
path: root/pango/pango-font-private.h
diff options
context:
space:
mode:
Diffstat (limited to 'pango/pango-font-private.h')
-rw-r--r--pango/pango-font-private.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/pango/pango-font-private.h b/pango/pango-font-private.h
index 885e38c1..e95abc7a 100644
--- a/pango/pango-font-private.h
+++ b/pango/pango-font-private.h
@@ -48,6 +48,7 @@ typedef struct {
void (* get_matrix) (PangoFont *font,
PangoMatrix *matrix);
int (* get_absolute_size) (PangoFont *font);
+ PangoVariant (* get_variant) (PangoFont *font);
} PangoFontClassPrivate;
gboolean pango_font_is_hinted (PangoFont *font);
@@ -56,6 +57,7 @@ void pango_font_get_scale_factors (PangoFont *font,
double *y_scale);
void pango_font_get_matrix (PangoFont *font,
PangoMatrix *matrix);
+
static inline int pango_font_get_absolute_size (PangoFont *font)
{
GTypeClass *klass = (GTypeClass *) PANGO_FONT_GET_CLASS (font);
@@ -63,6 +65,26 @@ static inline int pango_font_get_absolute_size (PangoFont *font)
return priv->get_absolute_size (font);
}
+static inline PangoVariant
+pango_font_get_variant (PangoFont *font)
+{
+ GTypeClass *klass = (GTypeClass *) PANGO_FONT_GET_CLASS (font);
+ PangoFontClassPrivate *priv = g_type_class_get_private (klass, PANGO_TYPE_FONT);
+ if (priv->get_variant)
+ return priv->get_variant (font);
+ else
+ {
+ PangoFontDescription *desc;
+ PangoVariant variant;
+
+ desc = pango_font_describe (font);
+ variant = pango_font_description_get_variant (desc);
+ pango_font_description_free (desc);
+
+ return variant;
+ }
+}
+
G_END_DECLS
#endif /* __PANGO_FONT_PRIVATE_H__ */