summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2019-07-07 11:25:42 -0400
committerMatthias Clasen <mclasen@redhat.com>2019-07-07 11:25:42 -0400
commit78eb39adf81e2c0de43ae7e3e33ca13cea46330a (patch)
treef54d297bf78bc447fcf2e9ac04a3cdf9c72e1088
parentd80d151473abe5425f347b89085496c4ee26aecf (diff)
downloadpango-78eb39adf81e2c0de43ae7e3e33ca13cea46330a.tar.gz
Keep PangoFontmap derivable
This functionality is used in PackageKit.
-rw-r--r--pango/pango-fontmap-private.h91
-rw-r--r--pango/pango-fontmap.h71
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