diff options
author | Matthias Clasen <mclasen@redhat.com> | 2019-08-21 23:12:14 +0200 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2019-08-21 23:12:14 +0200 |
commit | db1e5dae6e355db792e75cdcca0b7845c89ac4a4 (patch) | |
tree | 0d831499390bc60c15643556397aed4e4d5f974e /pango/pango-fontset.h | |
parent | 71e865208d059a73aba09ec6a9d0650b40f87d3f (diff) | |
download | pango-db1e5dae6e355db792e75cdcca0b7845c89ac4a4.tar.gz |
Make some class structs public again
It turns out that the R GTK2 binding poke directly
at many class structs. Bring the class structs back
for now (deprecated), to avoid breaking their build.
Closes: https://gitlab.gnome.org/GNOME/pango/issues/412
Diffstat (limited to 'pango/pango-fontset.h')
-rw-r--r-- | pango/pango-fontset.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/pango/pango-fontset.h b/pango/pango-fontset.h index da3cef46..fed3e744 100644 --- a/pango/pango-fontset.h +++ b/pango/pango-fontset.h @@ -41,11 +41,16 @@ G_BEGIN_DECLS #define PANGO_TYPE_FONTSET (pango_fontset_get_type ()) #define PANGO_FONTSET(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONTSET, PangoFontset)) #define PANGO_IS_FONTSET(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONTSET)) +#define PANGO_FONTSET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FONTSET, PangoFontsetClass)) +#define PANGO_IS_FONTSET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONTSET)) +#define PANGO_FONTSET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONTSET, PangoFontsetClass)) + PANGO_AVAILABLE_IN_ALL GType pango_fontset_get_type (void) G_GNUC_CONST; typedef struct _PangoFontset PangoFontset; +typedef struct _PangoFontsetClass PangoFontsetClass; /** * PangoFontsetForeachFunc: @@ -64,6 +69,64 @@ typedef gboolean (*PangoFontsetForeachFunc) (PangoFontset *fontset, PangoFont *font, gpointer user_data); +#ifndef PANGO_DISABLE_DEPRECATED + +/** + * PangoFontset: + * + * A #PangoFontset represents a set of #PangoFont to use + * when rendering text. It is the result of resolving a + * #PangoFontDescription against a particular #PangoContext. + * It has operations for finding the component font for + * a particular Unicode character, and for finding a composite + * set of metrics for the entire fontset. + */ +struct _PangoFontset +{ + GObject parent_instance; +}; + +/** + * PangoFontsetClass: + * @parent_class: parent #GObjectClass. + * @get_font: a function to get the font in the fontset that contains the + * best glyph for the given Unicode character; see pango_fontset_get_font(). + * @get_metrics: a function to get overall metric information for the fonts + * in the fontset; see pango_fontset_get_metrics(). + * @get_language: a function to get the language of the fontset. + * @foreach: a function to loop over the fonts in the fontset. See + * pango_fontset_foreach(). + * + * The #PangoFontsetClass structure holds the virtual functions for + * a particular #PangoFontset implementation. + */ +struct _PangoFontsetClass +{ + GObjectClass parent_class; + + /*< public >*/ + + PangoFont * (*get_font) (PangoFontset *fontset, + guint wc); + + PangoFontMetrics *(*get_metrics) (PangoFontset *fontset); + PangoLanguage * (*get_language) (PangoFontset *fontset); + void (*foreach) (PangoFontset *fontset, + PangoFontsetForeachFunc func, + gpointer data); + + /*< private >*/ + + /* Padding for future expansion */ + void (*_pango_reserved1) (void); + void (*_pango_reserved2) (void); + void (*_pango_reserved3) (void); + void (*_pango_reserved4) (void); +}; + +#endif /* PANGO_DISABLE_DEPRECATED */ + + PANGO_AVAILABLE_IN_ALL PangoFont * pango_fontset_get_font (PangoFontset *fontset, guint wc); |