diff options
author | Matthias Clasen <mclasen@redhat.com> | 2019-07-07 11:25:42 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2019-07-07 11:25:42 -0400 |
commit | 78eb39adf81e2c0de43ae7e3e33ca13cea46330a (patch) | |
tree | f54d297bf78bc447fcf2e9ac04a3cdf9c72e1088 /pango | |
parent | d80d151473abe5425f347b89085496c4ee26aecf (diff) | |
download | pango-78eb39adf81e2c0de43ae7e3e33ca13cea46330a.tar.gz |
Keep PangoFontmap derivable
This functionality is used in PackageKit.
Diffstat (limited to 'pango')
-rw-r--r-- | pango/pango-fontmap-private.h | 91 | ||||
-rw-r--r-- | pango/pango-fontmap.h | 71 |
2 files changed, 71 insertions, 91 deletions
diff --git a/pango/pango-fontmap-private.h b/pango/pango-fontmap-private.h index 1bece87d..be06bd8f 100644 --- a/pango/pango-fontmap-private.h +++ b/pango/pango-fontmap-private.h @@ -29,97 +29,6 @@ G_BEGIN_DECLS -/** - * PANGO_FONT_MAP_CLASS: - * @klass: a #GObject. - * - * Casts a #GObject to a #PangoFontMapClass. - */ -/** - * PANGO_IS_FONT_MAP_CLASS: - * @klass: a #GObject. - * - * Returns: %TRUE if @klass is a subtype of #PangoFontMapClass. - */ -/** - * PANGO_FONT_MAP_GET_CLASS: - * @obj: a #PangoFontMap. - * - * Returns: class of @obj - */ -#define PANGO_FONT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FONT_MAP, PangoFontMapClass)) -#define PANGO_IS_FONT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONT_MAP)) -#define PANGO_FONT_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONT_MAP, PangoFontMapClass)) - -typedef struct _PangoFontMapClass PangoFontMapClass; - -/** - * PangoFontMap: - * - * The #PangoFontMap represents the set of fonts available for a - * particular rendering system. This is a virtual object with - * implementations being specific to particular rendering systems. To - * create an implementation of a #PangoFontMap, the rendering-system - * specific code should allocate a larger structure that contains a nested - * #PangoFontMap, fill in the <structfield>klass</structfield> member of the nested #PangoFontMap with a - * pointer to a appropriate #PangoFontMapClass, then call - * pango_font_map_init() on the structure. - * - * The #PangoFontMap structure contains one member which the implementation - * fills in. - */ -struct _PangoFontMap -{ - GObject parent_instance; -}; - -/** - * PangoFontMapClass: - * @parent_class: parent #GObjectClass. - * @load_font: a function to load a font with a given description. See - * pango_font_map_load_font(). - * @list_families: A function to list available font families. See - * pango_font_map_list_families(). - * @load_fontset: a function to load a fontset with a given given description - * suitable for a particular language. See pango_font_map_load_fontset(). - * @shape_engine_type: the type of rendering-system-dependent engines that - * can handle fonts of this fonts loaded with this fontmap. - * @get_serial: a function to get the serial number of the fontmap. - * See pango_font_map_get_serial(). - * @changed: See pango_font_map_changed() - * - * The #PangoFontMapClass structure holds the virtual functions for - * a particular #PangoFontMap implementation. - */ -struct _PangoFontMapClass -{ - GObjectClass parent_class; - - /*< public >*/ - - PangoFont * (*load_font) (PangoFontMap *fontmap, - PangoContext *context, - const PangoFontDescription *desc); - void (*list_families) (PangoFontMap *fontmap, - PangoFontFamily ***families, - int *n_families); - PangoFontset *(*load_fontset) (PangoFontMap *fontmap, - PangoContext *context, - const PangoFontDescription *desc, - PangoLanguage *language); - - const char *shape_engine_type; - - guint (*get_serial) (PangoFontMap *fontmap); - void (*changed) (PangoFontMap *fontmap); - - /*< private >*/ - - /* Padding for future expansion */ - void (*_pango_reserved1) (void); - void (*_pango_reserved2) (void); -}; - PANGO_DEPRECATED_IN_1_38 const char *pango_font_map_get_shape_engine_type (PangoFontMap *fontmap); diff --git a/pango/pango-fontmap.h b/pango/pango-fontmap.h index 036de2df..b6206f1d 100644 --- a/pango/pango-fontmap.h +++ b/pango/pango-fontmap.h @@ -47,9 +47,80 @@ G_BEGIN_DECLS #define PANGO_TYPE_FONT_MAP (pango_font_map_get_type ()) #define PANGO_FONT_MAP(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONT_MAP, PangoFontMap)) #define PANGO_IS_FONT_MAP(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONT_MAP)) +#define PANGO_FONT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FONT_MAP, PangoFontMapClass)) +#define PANGO_IS_FONT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONT_MAP)) +#define PANGO_FONT_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONT_MAP, PangoFontMapClass)) +typedef struct _PangoFontMapClass PangoFontMapClass; typedef struct _PangoContext PangoContext; +/** + * PangoFontMap: + * + * The #PangoFontMap represents the set of fonts available for a + * particular rendering system. This is a virtual object with + * implementations being specific to particular rendering systems. To + * create an implementation of a #PangoFontMap, the rendering-system + * specific code should allocate a larger structure that contains a nested + * #PangoFontMap, fill in the <structfield>klass</structfield> member of the nested #PangoFontMap with a + * pointer to a appropriate #PangoFontMapClass, then call + * pango_font_map_init() on the structure. + * + * The #PangoFontMap structure contains one member which the implementation + * fills in. + */ +struct _PangoFontMap +{ + GObject parent_instance; +}; + +/** + * PangoFontMapClass: + * @parent_class: parent #GObjectClass. + * @load_font: a function to load a font with a given description. See + * pango_font_map_load_font(). + * @list_families: A function to list available font families. See + * pango_font_map_list_families(). + * @load_fontset: a function to load a fontset with a given given description + * suitable for a particular language. See pango_font_map_load_fontset(). + * @shape_engine_type: the type of rendering-system-dependent engines that + * can handle fonts of this fonts loaded with this fontmap. + * @get_serial: a function to get the serial number of the fontmap. + * See pango_font_map_get_serial(). + * @changed: See pango_font_map_changed() + * + * The #PangoFontMapClass structure holds the virtual functions for + * a particular #PangoFontMap implementation. + */ +struct _PangoFontMapClass +{ + GObjectClass parent_class; + + /*< public >*/ + + PangoFont * (*load_font) (PangoFontMap *fontmap, + PangoContext *context, + const PangoFontDescription *desc); + void (*list_families) (PangoFontMap *fontmap, + PangoFontFamily ***families, + int *n_families); + PangoFontset *(*load_fontset) (PangoFontMap *fontmap, + PangoContext *context, + const PangoFontDescription *desc, + PangoLanguage *language); + + const char *shape_engine_type; + + guint (*get_serial) (PangoFontMap *fontmap); + void (*changed) (PangoFontMap *fontmap); + + /*< private >*/ + + /* Padding for future expansion */ + void (*_pango_reserved1) (void); + void (*_pango_reserved2) (void); +}; + PANGO_AVAILABLE_IN_ALL GType pango_font_map_get_type (void) G_GNUC_CONST; PANGO_AVAILABLE_IN_1_22 |