diff options
Diffstat (limited to 'pango')
43 files changed, 601 insertions, 75 deletions
diff --git a/pango/pango-attributes.h b/pango/pango-attributes.h index 1844fcde..e9b19571 100644 --- a/pango/pango-attributes.h +++ b/pango/pango-attributes.h @@ -53,12 +53,17 @@ struct _PangoColor * The #GObject type for #PangoColor. */ #define PANGO_TYPE_COLOR pango_color_get_type () +PANGO_AVAILABLE_IN_ALL GType pango_color_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoColor *pango_color_copy (const PangoColor *src); +PANGO_AVAILABLE_IN_ALL void pango_color_free (PangoColor *color); +PANGO_AVAILABLE_IN_ALL gboolean pango_color_parse (PangoColor *color, const char *spec); +PANGO_AVAILABLE_IN_1_16 gchar *pango_color_to_string(const PangoColor *color); @@ -429,97 +434,148 @@ struct _PangoAttrFontFeatures gchar *features; }; +PANGO_AVAILABLE_IN_ALL PangoAttrType pango_attr_type_register (const gchar *name); +PANGO_AVAILABLE_IN_1_22 const char * pango_attr_type_get_name (PangoAttrType type) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_20 void pango_attribute_init (PangoAttribute *attr, const PangoAttrClass *klass); +PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attribute_copy (const PangoAttribute *attr); +PANGO_AVAILABLE_IN_ALL void pango_attribute_destroy (PangoAttribute *attr); +PANGO_AVAILABLE_IN_ALL gboolean pango_attribute_equal (const PangoAttribute *attr1, const PangoAttribute *attr2) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_language_new (PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_family_new (const char *family); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_foreground_new (guint16 red, guint16 green, guint16 blue); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_background_new (guint16 red, guint16 green, guint16 blue); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_size_new (int size); +PANGO_AVAILABLE_IN_1_8 PangoAttribute *pango_attr_size_new_absolute (int size); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_style_new (PangoStyle style); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_weight_new (PangoWeight weight); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_variant_new (PangoVariant variant); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_stretch_new (PangoStretch stretch); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_font_desc_new (const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_underline_new (PangoUnderline underline); +PANGO_AVAILABLE_IN_1_8 PangoAttribute *pango_attr_underline_color_new (guint16 red, guint16 green, guint16 blue); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_strikethrough_new (gboolean strikethrough); +PANGO_AVAILABLE_IN_1_8 PangoAttribute *pango_attr_strikethrough_color_new (guint16 red, guint16 green, guint16 blue); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_rise_new (int rise); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_scale_new (double scale_factor); +PANGO_AVAILABLE_IN_1_4 PangoAttribute *pango_attr_fallback_new (gboolean enable_fallback); +PANGO_AVAILABLE_IN_1_6 PangoAttribute *pango_attr_letter_spacing_new (int letter_spacing); +PANGO_AVAILABLE_IN_ALL PangoAttribute *pango_attr_shape_new (const PangoRectangle *ink_rect, const PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_1_8 PangoAttribute *pango_attr_shape_new_with_data (const PangoRectangle *ink_rect, const PangoRectangle *logical_rect, gpointer data, PangoAttrDataCopyFunc copy_func, GDestroyNotify destroy_func); +PANGO_AVAILABLE_IN_1_16 PangoAttribute *pango_attr_gravity_new (PangoGravity gravity); +PANGO_AVAILABLE_IN_1_16 PangoAttribute *pango_attr_gravity_hint_new (PangoGravityHint hint); +PANGO_AVAILABLE_IN_1_38 PangoAttribute *pango_attr_font_features_new (const gchar *features); +PANGO_AVAILABLE_IN_1_38 PangoAttribute *pango_attr_foreground_alpha_new (guint16 alpha); +PANGO_AVAILABLE_IN_1_38 PangoAttribute *pango_attr_background_alpha_new (guint16 alpha); +PANGO_AVAILABLE_IN_ALL GType pango_attr_list_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoAttrList * pango_attr_list_new (void); +PANGO_AVAILABLE_IN_1_10 PangoAttrList * pango_attr_list_ref (PangoAttrList *list); +PANGO_AVAILABLE_IN_ALL void pango_attr_list_unref (PangoAttrList *list); +PANGO_AVAILABLE_IN_ALL PangoAttrList * pango_attr_list_copy (PangoAttrList *list); +PANGO_AVAILABLE_IN_ALL void pango_attr_list_insert (PangoAttrList *list, PangoAttribute *attr); +PANGO_AVAILABLE_IN_ALL void pango_attr_list_insert_before (PangoAttrList *list, PangoAttribute *attr); +PANGO_AVAILABLE_IN_ALL void pango_attr_list_change (PangoAttrList *list, PangoAttribute *attr); +PANGO_AVAILABLE_IN_ALL void pango_attr_list_splice (PangoAttrList *list, PangoAttrList *other, gint pos, gint len); +PANGO_AVAILABLE_IN_1_2 PangoAttrList *pango_attr_list_filter (PangoAttrList *list, PangoAttrFilterFunc func, gpointer data); +PANGO_AVAILABLE_IN_ALL PangoAttrIterator *pango_attr_list_get_iterator (PangoAttrList *list); +PANGO_AVAILABLE_IN_ALL void pango_attr_iterator_range (PangoAttrIterator *iterator, gint *start, gint *end); +PANGO_AVAILABLE_IN_ALL gboolean pango_attr_iterator_next (PangoAttrIterator *iterator); +PANGO_AVAILABLE_IN_ALL PangoAttrIterator *pango_attr_iterator_copy (PangoAttrIterator *iterator); +PANGO_AVAILABLE_IN_ALL void pango_attr_iterator_destroy (PangoAttrIterator *iterator); +PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_iterator_get (PangoAttrIterator *iterator, PangoAttrType type); +PANGO_AVAILABLE_IN_ALL void pango_attr_iterator_get_font (PangoAttrIterator *iterator, PangoFontDescription *desc, PangoLanguage **language, GSList **extra_attrs); +PANGO_AVAILABLE_IN_1_2 GSList * pango_attr_iterator_get_attrs (PangoAttrIterator *iterator); +PANGO_AVAILABLE_IN_ALL gboolean pango_parse_markup (const char *markup_text, int length, gunichar accel_marker, @@ -528,7 +584,9 @@ gboolean pango_parse_markup (const char *markup_text, gunichar *accel_char, GError **error); +PANGO_AVAILABLE_IN_1_32 GMarkupParseContext * pango_markup_parser_new (gunichar accel_marker); +PANGO_AVAILABLE_IN_1_32 gboolean pango_markup_parser_finish (GMarkupParseContext *context, PangoAttrList **attr_list, char **text, diff --git a/pango/pango-bidi-type.h b/pango/pango-bidi-type.h index 21bb7e7b..db0c1e0a 100644 --- a/pango/pango-bidi-type.h +++ b/pango/pango-bidi-type.h @@ -24,6 +24,7 @@ #include <glib.h> +#include <pango/pango-version-macros.h> G_BEGIN_DECLS /** @@ -81,6 +82,7 @@ typedef enum { PANGO_BIDI_TYPE_ON } PangoBidiType; +PANGO_AVAILABLE_IN_1_22 PangoBidiType pango_bidi_type_for_unichar (gunichar ch) G_GNUC_CONST; /** @@ -121,12 +123,14 @@ typedef enum { PANGO_DIRECTION_NEUTRAL } PangoDirection; +PANGO_AVAILABLE_IN_ALL PangoDirection pango_unichar_direction (gunichar ch) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_4 PangoDirection pango_find_base_dir (const gchar *text, gint length); #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(g_unichar_get_mirror_char) +PANGO_DEPRECATED_FOR(g_unichar_get_mirror_char) gboolean pango_get_mirror_char (gunichar ch, gunichar *mirrored_ch); #endif diff --git a/pango/pango-break.h b/pango/pango-break.h index 70f8aedf..4c2cec8e 100644 --- a/pango/pango-break.h +++ b/pango/pango-break.h @@ -135,17 +135,20 @@ struct _PangoLogAttr /* Determine information about cluster/word/line breaks in a string * of Unicode text. */ +PANGO_AVAILABLE_IN_ALL void pango_break (const gchar *text, int length, PangoAnalysis *analysis, PangoLogAttr *attrs, int attrs_len); +PANGO_AVAILABLE_IN_ALL void pango_find_paragraph_boundary (const gchar *text, gint length, gint *paragraph_delimiter_index, gint *next_paragraph_start); +PANGO_AVAILABLE_IN_ALL void pango_get_log_attrs (const char *text, int length, int level, @@ -160,6 +163,7 @@ void pango_get_log_attrs (const char *text, * instead; this function is mostly useful for chaining up * from a language engine override. */ +PANGO_AVAILABLE_IN_ALL void pango_default_break (const gchar *text, int length, PangoAnalysis *analysis, diff --git a/pango/pango-context.h b/pango/pango-context.h index 65b1d245..439d0995 100644 --- a/pango/pango-context.h +++ b/pango/pango-context.h @@ -47,58 +47,83 @@ typedef struct _PangoContextClass PangoContextClass; * need to create a subclass of these, file a bug. */ +PANGO_AVAILABLE_IN_ALL GType pango_context_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoContext *pango_context_new (void); +PANGO_AVAILABLE_IN_1_32 void pango_context_changed (PangoContext *context); +PANGO_AVAILABLE_IN_ALL void pango_context_set_font_map (PangoContext *context, PangoFontMap *font_map); +PANGO_AVAILABLE_IN_1_6 PangoFontMap *pango_context_get_font_map (PangoContext *context); +PANGO_AVAILABLE_IN_1_32 guint pango_context_get_serial (PangoContext *context); +PANGO_AVAILABLE_IN_ALL void pango_context_list_families (PangoContext *context, PangoFontFamily ***families, int *n_families); +PANGO_AVAILABLE_IN_ALL PangoFont * pango_context_load_font (PangoContext *context, const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL PangoFontset *pango_context_load_fontset (PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL PangoFontMetrics *pango_context_get_metrics (PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL void pango_context_set_font_description (PangoContext *context, const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL PangoFontDescription * pango_context_get_font_description (PangoContext *context); +PANGO_AVAILABLE_IN_ALL PangoLanguage *pango_context_get_language (PangoContext *context); +PANGO_AVAILABLE_IN_ALL void pango_context_set_language (PangoContext *context, PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL void pango_context_set_base_dir (PangoContext *context, PangoDirection direction); +PANGO_AVAILABLE_IN_ALL PangoDirection pango_context_get_base_dir (PangoContext *context); +PANGO_AVAILABLE_IN_1_16 void pango_context_set_base_gravity (PangoContext *context, PangoGravity gravity); +PANGO_AVAILABLE_IN_1_16 PangoGravity pango_context_get_base_gravity (PangoContext *context); +PANGO_AVAILABLE_IN_1_16 PangoGravity pango_context_get_gravity (PangoContext *context); +PANGO_AVAILABLE_IN_1_16 void pango_context_set_gravity_hint (PangoContext *context, PangoGravityHint hint); +PANGO_AVAILABLE_IN_1_16 PangoGravityHint pango_context_get_gravity_hint (PangoContext *context); +PANGO_AVAILABLE_IN_1_6 void pango_context_set_matrix (PangoContext *context, const PangoMatrix *matrix); +PANGO_AVAILABLE_IN_1_6 const PangoMatrix * pango_context_get_matrix (PangoContext *context); /* Break a string of Unicode characters into segments with * consistent shaping/language engine and bidrectional level. * Returns a #GList of #PangoItem's */ +PANGO_AVAILABLE_IN_ALL GList *pango_itemize (PangoContext *context, const char *text, int start_index, int length, PangoAttrList *attrs, PangoAttrIterator *cached_iter); +PANGO_AVAILABLE_IN_1_4 GList *pango_itemize_with_base_dir (PangoContext *context, PangoDirection base_dir, const char *text, diff --git a/pango/pango-coverage.h b/pango/pango-coverage.h index 592d2b1c..b83d5108 100644 --- a/pango/pango-coverage.h +++ b/pango/pango-coverage.h @@ -24,6 +24,8 @@ #include <glib.h> +#include <pango/pango-version-macros.h> + G_BEGIN_DECLS /** @@ -56,21 +58,30 @@ typedef enum { PANGO_COVERAGE_EXACT } PangoCoverageLevel; +PANGO_AVAILABLE_IN_ALL PangoCoverage * pango_coverage_new (void); +PANGO_AVAILABLE_IN_ALL PangoCoverage * pango_coverage_ref (PangoCoverage *coverage); +PANGO_AVAILABLE_IN_ALL void pango_coverage_unref (PangoCoverage *coverage); +PANGO_AVAILABLE_IN_ALL PangoCoverage * pango_coverage_copy (PangoCoverage *coverage); +PANGO_AVAILABLE_IN_ALL PangoCoverageLevel pango_coverage_get (PangoCoverage *coverage, int index_); +PANGO_AVAILABLE_IN_ALL void pango_coverage_set (PangoCoverage *coverage, int index_, PangoCoverageLevel level); +PANGO_AVAILABLE_IN_ALL void pango_coverage_max (PangoCoverage *coverage, PangoCoverage *other); +PANGO_AVAILABLE_IN_ALL void pango_coverage_to_bytes (PangoCoverage *coverage, guchar **bytes, int *n_bytes); +PANGO_AVAILABLE_IN_ALL PangoCoverage *pango_coverage_from_bytes (guchar *bytes, int n_bytes); diff --git a/pango/pango-engine.h b/pango/pango-engine.h index 9645c2c5..ce5c8880 100644 --- a/pango/pango-engine.h +++ b/pango/pango-engine.h @@ -79,6 +79,7 @@ struct _PangoEngineClass GObjectClass parent_class; }; +PANGO_DEPRECATED_IN_1_38 GType pango_engine_get_type (void) G_GNUC_CONST; /** @@ -145,6 +146,7 @@ struct _PangoEngineLangClass int attrs_len); }; +PANGO_DEPRECATED_IN_1_38 GType pango_engine_lang_get_type (void) G_GNUC_CONST; /** @@ -232,6 +234,7 @@ struct _PangoEngineShapeClass gunichar wc); }; +PANGO_DEPRECATED_IN_1_38 GType pango_engine_shape_get_type (void) G_GNUC_CONST; typedef struct _PangoEngineInfo PangoEngineInfo; @@ -293,7 +296,7 @@ struct _PangoEngineInfo * * Deprecated: 1.38 **/ -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 void script_engine_list (PangoEngineInfo **engines, int *n_engines); @@ -306,7 +309,7 @@ void script_engine_list (PangoEngineInfo **engines, * * Deprecated: 1.38 **/ -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 void script_engine_init (GTypeModule *module); @@ -317,7 +320,7 @@ void script_engine_init (GTypeModule *module); * * Deprecated: 1.38 **/ -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 void script_engine_exit (void); /** @@ -328,7 +331,7 @@ void script_engine_exit (void); * * Deprecated: 1.38 **/ -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 PangoEngine *script_engine_create (const char *id); /* Utility macro used by PANGO_ENGINE_LANG_DEFINE_TYPE and diff --git a/pango/pango-enum-types.h.template b/pango/pango-enum-types.h.template index e5ffbe81..5fb54ced 100644 --- a/pango/pango-enum-types.h.template +++ b/pango/pango-enum-types.h.template @@ -4,6 +4,8 @@ #include <glib-object.h> +#include <pango/pango-version-macros.h> + G_BEGIN_DECLS /*** END file-header ***/ @@ -13,6 +15,7 @@ G_BEGIN_DECLS /*** END file-production ***/ /*** BEGIN value-header ***/ +PANGO_AVAILABLE_IN_ALL GType @enum_name@_get_type (void) G_GNUC_CONST; #define @ENUMPREFIX@_TYPE_@ENUMSHORT@ (@enum_name@_get_type ()) /*** END value-header ***/ diff --git a/pango/pango-font.h b/pango/pango-font.h index 6d64d8db..cdc07cd0 100644 --- a/pango/pango-font.h +++ b/pango/pango-font.h @@ -214,61 +214,94 @@ typedef enum { */ #define PANGO_TYPE_FONT_DESCRIPTION (pango_font_description_get_type ()) +PANGO_AVAILABLE_IN_ALL GType pango_font_description_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoFontDescription *pango_font_description_new (void); +PANGO_AVAILABLE_IN_ALL PangoFontDescription *pango_font_description_copy (const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL PangoFontDescription *pango_font_description_copy_static (const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL guint pango_font_description_hash (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL gboolean pango_font_description_equal (const PangoFontDescription *desc1, const PangoFontDescription *desc2) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL void pango_font_description_free (PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL void pango_font_descriptions_free (PangoFontDescription **descs, int n_descs); +PANGO_AVAILABLE_IN_ALL void pango_font_description_set_family (PangoFontDescription *desc, const char *family); +PANGO_AVAILABLE_IN_ALL void pango_font_description_set_family_static (PangoFontDescription *desc, const char *family); +PANGO_AVAILABLE_IN_ALL const char *pango_font_description_get_family (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL void pango_font_description_set_style (PangoFontDescription *desc, PangoStyle style); +PANGO_AVAILABLE_IN_ALL PangoStyle pango_font_description_get_style (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL void pango_font_description_set_variant (PangoFontDescription *desc, PangoVariant variant); +PANGO_AVAILABLE_IN_ALL PangoVariant pango_font_description_get_variant (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL void pango_font_description_set_weight (PangoFontDescription *desc, PangoWeight weight); +PANGO_AVAILABLE_IN_ALL PangoWeight pango_font_description_get_weight (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL void pango_font_description_set_stretch (PangoFontDescription *desc, PangoStretch stretch); +PANGO_AVAILABLE_IN_ALL PangoStretch pango_font_description_get_stretch (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL void pango_font_description_set_size (PangoFontDescription *desc, gint size); +PANGO_AVAILABLE_IN_ALL gint pango_font_description_get_size (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_8 void pango_font_description_set_absolute_size (PangoFontDescription *desc, double size); +PANGO_AVAILABLE_IN_1_8 gboolean pango_font_description_get_size_is_absolute (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_16 void pango_font_description_set_gravity (PangoFontDescription *desc, PangoGravity gravity); +PANGO_AVAILABLE_IN_1_16 PangoGravity pango_font_description_get_gravity (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL PangoFontMask pango_font_description_get_set_fields (const PangoFontDescription *desc) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL void pango_font_description_unset_fields (PangoFontDescription *desc, PangoFontMask to_unset); +PANGO_AVAILABLE_IN_ALL void pango_font_description_merge (PangoFontDescription *desc, const PangoFontDescription *desc_to_merge, gboolean replace_existing); +PANGO_AVAILABLE_IN_ALL void pango_font_description_merge_static (PangoFontDescription *desc, const PangoFontDescription *desc_to_merge, gboolean replace_existing); +PANGO_AVAILABLE_IN_ALL gboolean pango_font_description_better_match (const PangoFontDescription *desc, const PangoFontDescription *old_match, const PangoFontDescription *new_match) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL PangoFontDescription *pango_font_description_from_string (const char *str); +PANGO_AVAILABLE_IN_ALL char * pango_font_description_to_string (const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL char * pango_font_description_to_filename (const PangoFontDescription *desc); /* @@ -281,20 +314,32 @@ char * pango_font_description_to_filename (const PangoFontDescrip * The #GObject type for #PangoFontMetrics. */ #define PANGO_TYPE_FONT_METRICS (pango_font_metrics_get_type ()) +PANGO_AVAILABLE_IN_ALL GType pango_font_metrics_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoFontMetrics *pango_font_metrics_ref (PangoFontMetrics *metrics); +PANGO_AVAILABLE_IN_ALL void pango_font_metrics_unref (PangoFontMetrics *metrics); +PANGO_AVAILABLE_IN_ALL int pango_font_metrics_get_ascent (PangoFontMetrics *metrics) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL int pango_font_metrics_get_descent (PangoFontMetrics *metrics) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL int pango_font_metrics_get_approximate_char_width (PangoFontMetrics *metrics) G_GNUC_PURE; +PANGO_AVAILABLE_IN_ALL int pango_font_metrics_get_approximate_digit_width (PangoFontMetrics *metrics) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_6 int pango_font_metrics_get_underline_position (PangoFontMetrics *metrics) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_6 int pango_font_metrics_get_underline_thickness (PangoFontMetrics *metrics) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_6 int pango_font_metrics_get_strikethrough_position (PangoFontMetrics *metrics) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_6 int pango_font_metrics_get_strikethrough_thickness (PangoFontMetrics *metrics) G_GNUC_PURE; #ifdef PANGO_ENABLE_BACKEND +PANGO_AVAILABLE_IN_ALL PangoFontMetrics *pango_font_metrics_new (void); struct _PangoFontMetrics @@ -342,12 +387,16 @@ struct _PangoFontMetrics typedef struct _PangoFontFamily PangoFontFamily; typedef struct _PangoFontFace PangoFontFace; +PANGO_AVAILABLE_IN_ALL GType pango_font_family_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL void pango_font_family_list_faces (PangoFontFamily *family, PangoFontFace ***faces, int *n_faces); +PANGO_AVAILABLE_IN_ALL const char *pango_font_family_get_name (PangoFontFamily *family) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_4 gboolean pango_font_family_is_monospace (PangoFontFamily *family) G_GNUC_PURE; #ifdef PANGO_ENABLE_BACKEND @@ -418,13 +467,18 @@ struct _PangoFontFamilyClass #define PANGO_FONT_FACE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONT_FACE, PangoFontFace)) #define PANGO_IS_FONT_FACE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONT_FACE)) +PANGO_AVAILABLE_IN_ALL GType pango_font_face_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoFontDescription *pango_font_face_describe (PangoFontFace *face); +PANGO_AVAILABLE_IN_ALL const char *pango_font_face_get_face_name (PangoFontFace *face) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_4 void pango_font_face_list_sizes (PangoFontFace *face, int **sizes, int *n_sizes); +PANGO_AVAILABLE_IN_1_18 gboolean pango_font_face_is_synthesized (PangoFontFace *face) G_GNUC_PURE; #ifdef PANGO_ENABLE_BACKEND @@ -493,21 +547,29 @@ struct _PangoFontFaceClass #define PANGO_FONT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONT, PangoFont)) #define PANGO_IS_FONT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONT)) +PANGO_AVAILABLE_IN_ALL GType pango_font_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoFontDescription *pango_font_describe (PangoFont *font); +PANGO_AVAILABLE_IN_1_14 PangoFontDescription *pango_font_describe_with_absolute_size (PangoFont *font); +PANGO_AVAILABLE_IN_ALL PangoCoverage * pango_font_get_coverage (PangoFont *font, PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL PangoEngineShape * pango_font_find_shaper (PangoFont *font, PangoLanguage *language, guint32 ch); +PANGO_AVAILABLE_IN_ALL PangoFontMetrics * pango_font_get_metrics (PangoFont *font, PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL void pango_font_get_glyph_extents (PangoFont *font, PangoGlyph glyph, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_1_10 PangoFontMap *pango_font_get_font_map (PangoFont *font); #ifdef PANGO_ENABLE_BACKEND diff --git a/pango/pango-fontmap.h b/pango/pango-fontmap.h index 207bac77..56128e9b 100644 --- a/pango/pango-fontmap.h +++ b/pango/pango-fontmap.h @@ -50,19 +50,26 @@ G_BEGIN_DECLS typedef struct _PangoContext PangoContext; +PANGO_AVAILABLE_IN_ALL GType pango_font_map_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_22 PangoContext * pango_font_map_create_context (PangoFontMap *fontmap); +PANGO_AVAILABLE_IN_ALL PangoFont * pango_font_map_load_font (PangoFontMap *fontmap, PangoContext *context, const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_ALL PangoFontset *pango_font_map_load_fontset (PangoFontMap *fontmap, PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL void pango_font_map_list_families (PangoFontMap *fontmap, PangoFontFamily ***families, int *n_families); +PANGO_AVAILABLE_IN_1_32 guint pango_font_map_get_serial (PangoFontMap *fontmap); +PANGO_AVAILABLE_IN_1_34 void pango_font_map_changed (PangoFontMap *fontmap); #ifdef PANGO_ENABLE_BACKEND @@ -158,6 +165,7 @@ struct _PangoFontMapClass void (*_pango_reserved2) (void); }; +PANGO_DEPRECATED_IN_1_38 const char *pango_font_map_get_shape_engine_type (PangoFontMap *fontmap); #endif /* PANGO_ENABLE_BACKEND */ diff --git a/pango/pango-fontset.h b/pango/pango-fontset.h index 7aa7d30e..6ea16d8e 100644 --- a/pango/pango-fontset.h +++ b/pango/pango-fontset.h @@ -42,6 +42,7 @@ G_BEGIN_DECLS #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)) +PANGO_AVAILABLE_IN_ALL GType pango_fontset_get_type (void) G_GNUC_CONST; typedef struct _PangoFontset PangoFontset; @@ -63,9 +64,12 @@ typedef gboolean (*PangoFontsetForeachFunc) (PangoFontset *fontset, PangoFont *font, gpointer user_data); +PANGO_AVAILABLE_IN_ALL PangoFont * pango_fontset_get_font (PangoFontset *fontset, guint wc); +PANGO_AVAILABLE_IN_ALL PangoFontMetrics *pango_fontset_get_metrics (PangoFontset *fontset); +PANGO_AVAILABLE_IN_1_4 void pango_fontset_foreach (PangoFontset *fontset, PangoFontsetForeachFunc func, gpointer data); @@ -155,11 +159,15 @@ struct _PangoFontsetClass typedef struct _PangoFontsetSimple PangoFontsetSimple; typedef struct _PangoFontsetSimpleClass PangoFontsetSimpleClass; +PANGO_AVAILABLE_IN_ALL GType pango_fontset_simple_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoFontsetSimple * pango_fontset_simple_new (PangoLanguage *language); +PANGO_AVAILABLE_IN_ALL void pango_fontset_simple_append (PangoFontsetSimple *fontset, PangoFont *font); +PANGO_AVAILABLE_IN_ALL int pango_fontset_simple_size (PangoFontsetSimple *fontset); #endif /* PANGO_ENABLE_BACKEND */ diff --git a/pango/pango-glyph-item.h b/pango/pango-glyph-item.h index cc87ae1b..daf2b15f 100644 --- a/pango/pango-glyph-item.h +++ b/pango/pango-glyph-item.h @@ -55,20 +55,27 @@ struct _PangoGlyphItem */ #define PANGO_TYPE_GLYPH_ITEM (pango_glyph_item_get_type ()) +PANGO_AVAILABLE_IN_ALL GType pango_glyph_item_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_2 PangoGlyphItem *pango_glyph_item_split (PangoGlyphItem *orig, const char *text, int split_index); +PANGO_AVAILABLE_IN_1_20 PangoGlyphItem *pango_glyph_item_copy (PangoGlyphItem *orig); +PANGO_AVAILABLE_IN_1_6 void pango_glyph_item_free (PangoGlyphItem *glyph_item); +PANGO_AVAILABLE_IN_1_2 GSList * pango_glyph_item_apply_attrs (PangoGlyphItem *glyph_item, const char *text, PangoAttrList *list); +PANGO_AVAILABLE_IN_1_6 void pango_glyph_item_letter_space (PangoGlyphItem *glyph_item, const char *text, PangoLogAttr *log_attrs, int letter_spacing); +PANGO_AVAILABLE_IN_1_26 void pango_glyph_item_get_logical_widths (PangoGlyphItem *glyph_item, const char *text, int *logical_widths); @@ -142,17 +149,24 @@ struct _PangoGlyphItemIter */ #define PANGO_TYPE_GLYPH_ITEM_ITER (pango_glyph_item_iter_get_type ()) +PANGO_AVAILABLE_IN_1_22 GType pango_glyph_item_iter_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_22 PangoGlyphItemIter *pango_glyph_item_iter_copy (PangoGlyphItemIter *orig); +PANGO_AVAILABLE_IN_1_22 void pango_glyph_item_iter_free (PangoGlyphItemIter *iter); +PANGO_AVAILABLE_IN_1_22 gboolean pango_glyph_item_iter_init_start (PangoGlyphItemIter *iter, PangoGlyphItem *glyph_item, const char *text); +PANGO_AVAILABLE_IN_1_22 gboolean pango_glyph_item_iter_init_end (PangoGlyphItemIter *iter, PangoGlyphItem *glyph_item, const char *text); +PANGO_AVAILABLE_IN_1_22 gboolean pango_glyph_item_iter_next_cluster (PangoGlyphItemIter *iter); +PANGO_AVAILABLE_IN_1_22 gboolean pango_glyph_item_iter_prev_cluster (PangoGlyphItemIter *iter); G_END_DECLS diff --git a/pango/pango-glyph.h b/pango/pango-glyph.h index be0f02dc..f24812cf 100644 --- a/pango/pango-glyph.h +++ b/pango/pango-glyph.h @@ -141,18 +141,26 @@ struct _PangoGlyphString { */ #define PANGO_TYPE_GLYPH_STRING (pango_glyph_string_get_type ()) +PANGO_AVAILABLE_IN_ALL PangoGlyphString *pango_glyph_string_new (void); +PANGO_AVAILABLE_IN_ALL void pango_glyph_string_set_size (PangoGlyphString *string, gint new_len); +PANGO_AVAILABLE_IN_ALL GType pango_glyph_string_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoGlyphString *pango_glyph_string_copy (PangoGlyphString *string); +PANGO_AVAILABLE_IN_ALL void pango_glyph_string_free (PangoGlyphString *string); +PANGO_AVAILABLE_IN_ALL void pango_glyph_string_extents (PangoGlyphString *glyphs, PangoFont *font, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_1_14 int pango_glyph_string_get_width(PangoGlyphString *glyphs); +PANGO_AVAILABLE_IN_ALL void pango_glyph_string_extents_range (PangoGlyphString *glyphs, int start, int end, @@ -160,12 +168,14 @@ void pango_glyph_string_extents_range (PangoGlyphString *glyphs, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL void pango_glyph_string_get_logical_widths (PangoGlyphString *glyphs, const char *text, int length, int embedding_level, int *logical_widths); +PANGO_AVAILABLE_IN_ALL void pango_glyph_string_index_to_x (PangoGlyphString *glyphs, char *text, int length, @@ -173,6 +183,7 @@ void pango_glyph_string_index_to_x (PangoGlyphString *glyphs, int index_, gboolean trailing, int *x_pos); +PANGO_AVAILABLE_IN_ALL void pango_glyph_string_x_to_index (PangoGlyphString *glyphs, char *text, int length, @@ -183,11 +194,13 @@ void pango_glyph_string_x_to_index (PangoGlyphString *glyphs, /* Turn a string of characters into a string of glyphs */ +PANGO_AVAILABLE_IN_ALL void pango_shape (const gchar *text, gint length, const PangoAnalysis *analysis, PangoGlyphString *glyphs); +PANGO_AVAILABLE_IN_1_32 void pango_shape_full (const gchar *item_text, gint item_length, const gchar *paragraph_text, @@ -195,6 +208,7 @@ void pango_shape_full (const gchar *item_text, const PangoAnalysis *analysis, PangoGlyphString *glyphs); +PANGO_AVAILABLE_IN_ALL GList *pango_reorder_items (GList *logical_items); G_END_DECLS diff --git a/pango/pango-gravity.h b/pango/pango-gravity.h index eb2c4d3d..63c29e5e 100644 --- a/pango/pango-gravity.h +++ b/pango/pango-gravity.h @@ -111,11 +111,15 @@ typedef enum { #include <pango/pango-matrix.h> #include <pango/pango-script.h> +PANGO_AVAILABLE_IN_1_16 double pango_gravity_to_rotation (PangoGravity gravity) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_16 PangoGravity pango_gravity_get_for_matrix (const PangoMatrix *matrix) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_16 PangoGravity pango_gravity_get_for_script (PangoScript script, PangoGravity base_gravity, PangoGravityHint hint) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_26 PangoGravity pango_gravity_get_for_script_and_width (PangoScript script, gboolean wide, diff --git a/pango/pango-item.h b/pango/pango-item.h index c48f9d66..cb6a7ed3 100644 --- a/pango/pango-item.h +++ b/pango/pango-item.h @@ -99,11 +99,16 @@ struct _PangoItem #define PANGO_TYPE_ITEM (pango_item_get_type ()) +PANGO_AVAILABLE_IN_ALL GType pango_item_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoItem *pango_item_new (void); +PANGO_AVAILABLE_IN_ALL PangoItem *pango_item_copy (PangoItem *item); +PANGO_AVAILABLE_IN_ALL void pango_item_free (PangoItem *item); +PANGO_AVAILABLE_IN_ALL PangoItem *pango_item_split (PangoItem *orig, int split_index, int split_offset); diff --git a/pango/pango-language.h b/pango/pango-language.h index 8648a3a6..2ab07bc0 100644 --- a/pango/pango-language.h +++ b/pango/pango-language.h @@ -25,6 +25,8 @@ #include <glib.h> #include <glib-object.h> +#include <pango/pango-version-macros.h> + G_BEGIN_DECLS typedef struct _PangoLanguage PangoLanguage; @@ -36,23 +38,31 @@ typedef struct _PangoLanguage PangoLanguage; */ #define PANGO_TYPE_LANGUAGE (pango_language_get_type ()) +PANGO_AVAILABLE_IN_ALL GType pango_language_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoLanguage *pango_language_from_string (const char *language); +PANGO_AVAILABLE_IN_ALL const char *pango_language_to_string (PangoLanguage *language) G_GNUC_CONST; /* For back compat. Will have to keep indefinitely. */ #define pango_language_to_string(language) ((const char *)language) +PANGO_AVAILABLE_IN_ALL const char *pango_language_get_sample_string (PangoLanguage *language) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_16 PangoLanguage *pango_language_get_default (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL gboolean pango_language_matches (PangoLanguage *language, const char *range_list) G_GNUC_PURE; #include <pango/pango-script.h> +PANGO_AVAILABLE_IN_1_4 gboolean pango_language_includes_script (PangoLanguage *language, PangoScript script) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_22 const PangoScript *pango_language_get_scripts (PangoLanguage *language, int *num_scripts); diff --git a/pango/pango-layout.h b/pango/pango-layout.h index d0c64afa..208e6352 100644 --- a/pango/pango-layout.h +++ b/pango/pango-layout.h @@ -134,102 +134,148 @@ struct _PangoLayoutLine * need to create a subclass of these, file a bug. */ +PANGO_AVAILABLE_IN_ALL GType pango_layout_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoLayout *pango_layout_new (PangoContext *context); +PANGO_AVAILABLE_IN_ALL PangoLayout *pango_layout_copy (PangoLayout *src); +PANGO_AVAILABLE_IN_ALL PangoContext *pango_layout_get_context (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_attributes (PangoLayout *layout, PangoAttrList *attrs); +PANGO_AVAILABLE_IN_ALL PangoAttrList *pango_layout_get_attributes (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_text (PangoLayout *layout, const char *text, int length); +PANGO_AVAILABLE_IN_ALL const char *pango_layout_get_text (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_30 gint pango_layout_get_character_count (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_markup (PangoLayout *layout, const char *markup, int length); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_markup_with_accel (PangoLayout *layout, const char *markup, int length, gunichar accel_marker, gunichar *accel_char); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_font_description (PangoLayout *layout, const PangoFontDescription *desc); +PANGO_AVAILABLE_IN_1_8 const PangoFontDescription *pango_layout_get_font_description (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_width (PangoLayout *layout, int width); +PANGO_AVAILABLE_IN_ALL int pango_layout_get_width (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_20 void pango_layout_set_height (PangoLayout *layout, int height); +PANGO_AVAILABLE_IN_1_20 int pango_layout_get_height (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_wrap (PangoLayout *layout, PangoWrapMode wrap); +PANGO_AVAILABLE_IN_ALL PangoWrapMode pango_layout_get_wrap (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_16 gboolean pango_layout_is_wrapped (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_indent (PangoLayout *layout, int indent); +PANGO_AVAILABLE_IN_ALL int pango_layout_get_indent (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_spacing (PangoLayout *layout, int spacing); +PANGO_AVAILABLE_IN_ALL int pango_layout_get_spacing (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_justify (PangoLayout *layout, gboolean justify); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_get_justify (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_4 void pango_layout_set_auto_dir (PangoLayout *layout, gboolean auto_dir); +PANGO_AVAILABLE_IN_1_4 gboolean pango_layout_get_auto_dir (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_alignment (PangoLayout *layout, PangoAlignment alignment); +PANGO_AVAILABLE_IN_ALL PangoAlignment pango_layout_get_alignment (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_tabs (PangoLayout *layout, PangoTabArray *tabs); +PANGO_AVAILABLE_IN_ALL PangoTabArray* pango_layout_get_tabs (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_set_single_paragraph_mode (PangoLayout *layout, gboolean setting); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_get_single_paragraph_mode (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_6 void pango_layout_set_ellipsize (PangoLayout *layout, PangoEllipsizeMode ellipsize); +PANGO_AVAILABLE_IN_1_6 PangoEllipsizeMode pango_layout_get_ellipsize (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_16 gboolean pango_layout_is_ellipsized (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_16 int pango_layout_get_unknown_glyphs_count (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_context_changed (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_32 guint pango_layout_get_serial (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL void pango_layout_get_log_attrs (PangoLayout *layout, PangoLogAttr **attrs, gint *n_attrs); +PANGO_AVAILABLE_IN_1_30 const PangoLogAttr *pango_layout_get_log_attrs_readonly (PangoLayout *layout, gint *n_attrs); +PANGO_AVAILABLE_IN_ALL void pango_layout_index_to_pos (PangoLayout *layout, int index_, PangoRectangle *pos); +PANGO_AVAILABLE_IN_ALL void pango_layout_index_to_line_x (PangoLayout *layout, int index_, gboolean trailing, int *line, int *x_pos); +PANGO_AVAILABLE_IN_ALL void pango_layout_get_cursor_pos (PangoLayout *layout, int index_, PangoRectangle *strong_pos, PangoRectangle *weak_pos); +PANGO_AVAILABLE_IN_ALL void pango_layout_move_cursor_visually (PangoLayout *layout, gboolean strong, int old_index, @@ -237,57 +283,76 @@ void pango_layout_move_cursor_visually (PangoLayout *layout, int direction, int *new_index, int *new_trailing); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_xy_to_index (PangoLayout *layout, int x, int y, int *index_, int *trailing); +PANGO_AVAILABLE_IN_ALL void pango_layout_get_extents (PangoLayout *layout, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL void pango_layout_get_pixel_extents (PangoLayout *layout, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL void pango_layout_get_size (PangoLayout *layout, int *width, int *height); +PANGO_AVAILABLE_IN_ALL void pango_layout_get_pixel_size (PangoLayout *layout, int *width, int *height); +PANGO_AVAILABLE_IN_1_22 int pango_layout_get_baseline (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL int pango_layout_get_line_count (PangoLayout *layout); +PANGO_AVAILABLE_IN_ALL PangoLayoutLine *pango_layout_get_line (PangoLayout *layout, int line); +PANGO_AVAILABLE_IN_1_16 PangoLayoutLine *pango_layout_get_line_readonly (PangoLayout *layout, int line); +PANGO_AVAILABLE_IN_ALL GSList * pango_layout_get_lines (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_16 GSList * pango_layout_get_lines_readonly (PangoLayout *layout); #define PANGO_TYPE_LAYOUT_LINE (pango_layout_line_get_type ()) +PANGO_AVAILABLE_IN_ALL GType pango_layout_line_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_10 PangoLayoutLine *pango_layout_line_ref (PangoLayoutLine *line); +PANGO_AVAILABLE_IN_ALL void pango_layout_line_unref (PangoLayoutLine *line); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_line_x_to_index (PangoLayoutLine *line, int x_pos, int *index_, int *trailing); +PANGO_AVAILABLE_IN_ALL void pango_layout_line_index_to_x (PangoLayoutLine *line, int index_, gboolean trailing, int *x_pos); +PANGO_AVAILABLE_IN_ALL void pango_layout_line_get_x_ranges (PangoLayoutLine *line, int start_index, int end_index, int **ranges, int *n_ranges); +PANGO_AVAILABLE_IN_ALL void pango_layout_line_get_extents (PangoLayoutLine *line, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL void pango_layout_line_get_pixel_extents (PangoLayoutLine *layout_line, PangoRectangle *ink_rect, PangoRectangle *logical_rect); @@ -296,45 +361,67 @@ typedef struct _PangoLayoutIter PangoLayoutIter; #define PANGO_TYPE_LAYOUT_ITER (pango_layout_iter_get_type ()) +PANGO_AVAILABLE_IN_ALL GType pango_layout_iter_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoLayoutIter *pango_layout_get_iter (PangoLayout *layout); +PANGO_AVAILABLE_IN_1_20 PangoLayoutIter *pango_layout_iter_copy (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL void pango_layout_iter_free (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL int pango_layout_iter_get_index (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL PangoLayoutRun *pango_layout_iter_get_run (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_1_16 PangoLayoutRun *pango_layout_iter_get_run_readonly (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL PangoLayoutLine *pango_layout_iter_get_line (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_1_16 PangoLayoutLine *pango_layout_iter_get_line_readonly (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_iter_at_last_line (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_1_20 PangoLayout *pango_layout_iter_get_layout (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_iter_next_char (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_iter_next_cluster (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_iter_next_run (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL gboolean pango_layout_iter_next_line (PangoLayoutIter *iter); +PANGO_AVAILABLE_IN_ALL void pango_layout_iter_get_char_extents (PangoLayoutIter *iter, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL void pango_layout_iter_get_cluster_extents (PangoLayoutIter *iter, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL void pango_layout_iter_get_run_extents (PangoLayoutIter *iter, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL void pango_layout_iter_get_line_extents (PangoLayoutIter *iter, PangoRectangle *ink_rect, PangoRectangle *logical_rect); /* All the yranges meet, unlike the logical_rect's (i.e. the yranges * assign between-line spacing to the nearest line) */ +PANGO_AVAILABLE_IN_ALL void pango_layout_iter_get_line_yrange (PangoLayoutIter *iter, int *y0_, int *y1_); +PANGO_AVAILABLE_IN_ALL void pango_layout_iter_get_layout_extents (PangoLayoutIter *iter, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +PANGO_AVAILABLE_IN_ALL int pango_layout_iter_get_baseline (PangoLayoutIter *iter); G_END_DECLS diff --git a/pango/pango-matrix.h b/pango/pango-matrix.h index 85c4b1d6..9ec37042 100644 --- a/pango/pango-matrix.h +++ b/pango/pango-matrix.h @@ -84,32 +84,45 @@ struct _PangoMatrix /* for PangoRectangle */ #include <pango/pango-types.h> +PANGO_AVAILABLE_IN_1_6 GType pango_matrix_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_6 PangoMatrix *pango_matrix_copy (const PangoMatrix *matrix); +PANGO_AVAILABLE_IN_1_6 void pango_matrix_free (PangoMatrix *matrix); +PANGO_AVAILABLE_IN_1_6 void pango_matrix_translate (PangoMatrix *matrix, double tx, double ty); +PANGO_AVAILABLE_IN_1_6 void pango_matrix_scale (PangoMatrix *matrix, double scale_x, double scale_y); +PANGO_AVAILABLE_IN_1_6 void pango_matrix_rotate (PangoMatrix *matrix, double degrees); +PANGO_AVAILABLE_IN_1_6 void pango_matrix_concat (PangoMatrix *matrix, const PangoMatrix *new_matrix); +PANGO_AVAILABLE_IN_1_16 void pango_matrix_transform_point (const PangoMatrix *matrix, double *x, double *y); +PANGO_AVAILABLE_IN_1_16 void pango_matrix_transform_distance (const PangoMatrix *matrix, double *dx, double *dy); +PANGO_AVAILABLE_IN_1_16 void pango_matrix_transform_rectangle (const PangoMatrix *matrix, PangoRectangle *rect); +PANGO_AVAILABLE_IN_1_16 void pango_matrix_transform_pixel_rectangle (const PangoMatrix *matrix, PangoRectangle *rect); +PANGO_AVAILABLE_IN_1_12 double pango_matrix_get_font_scale_factor (const PangoMatrix *matrix) G_GNUC_PURE; +PANGO_AVAILABLE_IN_1_38 void pango_matrix_get_font_scale_factors (const PangoMatrix *matrix, double *xscale, double *yscale); diff --git a/pango/pango-modules.h b/pango/pango-modules.h index 97fb39e3..82230b6c 100644 --- a/pango/pango-modules.h +++ b/pango/pango-modules.h @@ -55,19 +55,19 @@ struct _PangoIncludedModule PangoEngine *(*create) (const char *id); }; -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 PangoMap * pango_find_map (PangoLanguage *language, guint engine_type_id, guint render_type_id); -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 PangoEngine * pango_map_get_engine (PangoMap *map, PangoScript script); -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 void pango_map_get_engines (PangoMap *map, PangoScript script, GSList **exact_engines, GSList **fallback_engines); -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 void pango_module_register (PangoIncludedModule *module); #endif /* PANGO_ENABLE_BACKEND */ diff --git a/pango/pango-ot.h b/pango/pango-ot.h index c60c3014..45b1a1a6 100644 --- a/pango/pango-ot.h +++ b/pango/pango-ot.h @@ -248,31 +248,33 @@ struct _PangoOTRulesetDescription { #define PANGO_TYPE_OT_INFO (pango_ot_info_get_type ()) #define PANGO_OT_INFO(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_OT_INFO, PangoOTInfo)) #define PANGO_IS_OT_INFO(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_OT_INFO)) +PANGO_DEPRECATED GType pango_ot_info_get_type (void) G_GNUC_CONST; #define PANGO_TYPE_OT_RULESET (pango_ot_ruleset_get_type ()) #define PANGO_OT_RULESET(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_OT_RULESET, PangoOTRuleset)) #define PANGO_IS_OT_RULESET(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_OT_RULESET)) +PANGO_DEPRECATED GType pango_ot_ruleset_get_type (void) G_GNUC_CONST; -G_DEPRECATED +PANGO_DEPRECATED PangoOTInfo *pango_ot_info_get (FT_Face face); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_ot_info_find_script (PangoOTInfo *info, PangoOTTableType table_type, PangoOTTag script_tag, guint *script_index); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_ot_info_find_language (PangoOTInfo *info, PangoOTTableType table_type, guint script_index, PangoOTTag language_tag, guint *language_index, guint *required_feature_index); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_ot_info_find_feature (PangoOTInfo *info, PangoOTTableType table_type, PangoOTTag feature_tag, @@ -280,110 +282,110 @@ gboolean pango_ot_info_find_feature (PangoOTInfo *info, guint language_index, guint *feature_index); -G_DEPRECATED +PANGO_DEPRECATED PangoOTTag *pango_ot_info_list_scripts (PangoOTInfo *info, PangoOTTableType table_type); -G_DEPRECATED +PANGO_DEPRECATED PangoOTTag *pango_ot_info_list_languages (PangoOTInfo *info, PangoOTTableType table_type, guint script_index, PangoOTTag language_tag); -G_DEPRECATED +PANGO_DEPRECATED PangoOTTag *pango_ot_info_list_features (PangoOTInfo *info, PangoOTTableType table_type, PangoOTTag tag, guint script_index, guint language_index); -G_DEPRECATED +PANGO_DEPRECATED PangoOTBuffer *pango_ot_buffer_new (PangoFcFont *font); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_buffer_destroy (PangoOTBuffer *buffer); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_buffer_clear (PangoOTBuffer *buffer); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_buffer_set_rtl (PangoOTBuffer *buffer, gboolean rtl); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_buffer_add_glyph (PangoOTBuffer *buffer, guint glyph, guint properties, guint cluster); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_buffer_get_glyphs (const PangoOTBuffer *buffer, PangoOTGlyph **glyphs, int *n_glyphs); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_buffer_output (const PangoOTBuffer *buffer, PangoGlyphString *glyphs); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_buffer_set_zero_width_marks (PangoOTBuffer *buffer, gboolean zero_width_marks); -G_DEPRECATED +PANGO_DEPRECATED const PangoOTRuleset *pango_ot_ruleset_get_for_description (PangoOTInfo *info, const PangoOTRulesetDescription *desc); -G_DEPRECATED +PANGO_DEPRECATED PangoOTRuleset *pango_ot_ruleset_new (PangoOTInfo *info); -G_DEPRECATED +PANGO_DEPRECATED PangoOTRuleset *pango_ot_ruleset_new_for (PangoOTInfo *info, PangoScript script, PangoLanguage *language); -G_DEPRECATED +PANGO_DEPRECATED PangoOTRuleset *pango_ot_ruleset_new_from_description (PangoOTInfo *info, const PangoOTRulesetDescription *desc); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_ruleset_add_feature (PangoOTRuleset *ruleset, PangoOTTableType table_type, guint feature_index, gulong property_bit); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_ot_ruleset_maybe_add_feature (PangoOTRuleset *ruleset, PangoOTTableType table_type, PangoOTTag feature_tag, gulong property_bit); -G_DEPRECATED +PANGO_DEPRECATED guint pango_ot_ruleset_maybe_add_features (PangoOTRuleset *ruleset, PangoOTTableType table_type, const PangoOTFeatureMap *features, guint n_features); -G_DEPRECATED +PANGO_DEPRECATED guint pango_ot_ruleset_get_feature_count (const PangoOTRuleset *ruleset, guint *n_gsub_features, guint *n_gpos_features); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_ruleset_substitute (const PangoOTRuleset *ruleset, PangoOTBuffer *buffer); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_ruleset_position (const PangoOTRuleset *ruleset, PangoOTBuffer *buffer); -G_DEPRECATED +PANGO_DEPRECATED PangoScript pango_ot_tag_to_script (PangoOTTag script_tag) G_GNUC_CONST; -G_DEPRECATED +PANGO_DEPRECATED PangoOTTag pango_ot_tag_from_script (PangoScript script) G_GNUC_CONST; -G_DEPRECATED +PANGO_DEPRECATED PangoLanguage *pango_ot_tag_to_language (PangoOTTag language_tag) G_GNUC_CONST; -G_DEPRECATED +PANGO_DEPRECATED PangoOTTag pango_ot_tag_from_language (PangoLanguage *language) G_GNUC_CONST; -G_DEPRECATED +PANGO_DEPRECATED guint pango_ot_ruleset_description_hash (const PangoOTRulesetDescription *desc) G_GNUC_PURE; -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_ot_ruleset_description_equal (const PangoOTRulesetDescription *desc1, const PangoOTRulesetDescription *desc2) G_GNUC_PURE; -G_DEPRECATED +PANGO_DEPRECATED PangoOTRulesetDescription *pango_ot_ruleset_description_copy (const PangoOTRulesetDescription *desc); -G_DEPRECATED +PANGO_DEPRECATED void pango_ot_ruleset_description_free (PangoOTRulesetDescription *desc); diff --git a/pango/pango-renderer.h b/pango/pango-renderer.h index 2127a4cc..266cc3ed 100644 --- a/pango/pango-renderer.h +++ b/pango/pango-renderer.h @@ -191,37 +191,45 @@ struct _PangoRendererClass void (*_pango_reserved4) (void); }; +PANGO_AVAILABLE_IN_1_8 GType pango_renderer_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_8 void pango_renderer_draw_layout (PangoRenderer *renderer, PangoLayout *layout, int x, int y); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_draw_layout_line (PangoRenderer *renderer, PangoLayoutLine *line, int x, int y); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_draw_glyphs (PangoRenderer *renderer, PangoFont *font, PangoGlyphString *glyphs, int x, int y); +PANGO_AVAILABLE_IN_1_22 void pango_renderer_draw_glyph_item (PangoRenderer *renderer, const char *text, PangoGlyphItem *glyph_item, int x, int y); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_draw_rectangle (PangoRenderer *renderer, PangoRenderPart part, int x, int y, int width, int height); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_draw_error_underline (PangoRenderer *renderer, int x, int y, int width, int height); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_draw_trapezoid (PangoRenderer *renderer, PangoRenderPart part, double y1_, @@ -230,35 +238,47 @@ void pango_renderer_draw_trapezoid (PangoRenderer *renderer, double y2, double x12, double x22); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_draw_glyph (PangoRenderer *renderer, PangoFont *font, PangoGlyph glyph, double x, double y); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_activate (PangoRenderer *renderer); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_deactivate (PangoRenderer *renderer); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_part_changed (PangoRenderer *renderer, PangoRenderPart part); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_set_color (PangoRenderer *renderer, PangoRenderPart part, const PangoColor *color); +PANGO_AVAILABLE_IN_1_8 PangoColor *pango_renderer_get_color (PangoRenderer *renderer, PangoRenderPart part); +PANGO_AVAILABLE_IN_1_38 void pango_renderer_set_alpha (PangoRenderer *renderer, PangoRenderPart part, guint16 alpha); +PANGO_AVAILABLE_IN_1_38 guint16 pango_renderer_get_alpha (PangoRenderer *renderer, PangoRenderPart part); +PANGO_AVAILABLE_IN_1_8 void pango_renderer_set_matrix (PangoRenderer *renderer, const PangoMatrix *matrix); +PANGO_AVAILABLE_IN_1_8 const PangoMatrix *pango_renderer_get_matrix (PangoRenderer *renderer); +PANGO_AVAILABLE_IN_1_20 PangoLayout *pango_renderer_get_layout (PangoRenderer *renderer); +PANGO_AVAILABLE_IN_1_20 PangoLayoutLine *pango_renderer_get_layout_line (PangoRenderer *renderer); G_END_DECLS diff --git a/pango/pango-script.h b/pango/pango-script.h index df14a9cf..62876025 100644 --- a/pango/pango-script.h +++ b/pango/pango-script.h @@ -302,19 +302,27 @@ typedef enum { /* ISO 15924 code */ PANGO_SCRIPT_SIGNWRITING /* Sgnw */ } PangoScript; +#include <pango/pango-version-macros.h> + +PANGO_AVAILABLE_IN_1_4 PangoScript pango_script_for_unichar (gunichar ch) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_4 PangoScriptIter *pango_script_iter_new (const char *text, int length); +PANGO_AVAILABLE_IN_1_4 void pango_script_iter_get_range (PangoScriptIter *iter, const char **start, const char **end, PangoScript *script); +PANGO_AVAILABLE_IN_1_4 gboolean pango_script_iter_next (PangoScriptIter *iter); +PANGO_AVAILABLE_IN_1_4 void pango_script_iter_free (PangoScriptIter *iter); #include <pango/pango-language.h> +PANGO_AVAILABLE_IN_1_4 PangoLanguage *pango_script_get_sample_language (PangoScript script) G_GNUC_PURE; G_END_DECLS diff --git a/pango/pango-tabs.h b/pango/pango-tabs.h index 8a33bcbb..664cedbb 100644 --- a/pango/pango-tabs.h +++ b/pango/pango-tabs.h @@ -54,31 +54,42 @@ typedef enum */ #define PANGO_TYPE_TAB_ARRAY (pango_tab_array_get_type ()) +PANGO_AVAILABLE_IN_ALL PangoTabArray *pango_tab_array_new (gint initial_size, gboolean positions_in_pixels); +PANGO_AVAILABLE_IN_ALL PangoTabArray *pango_tab_array_new_with_positions (gint size, gboolean positions_in_pixels, PangoTabAlign first_alignment, gint first_position, ...); +PANGO_AVAILABLE_IN_ALL GType pango_tab_array_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoTabArray *pango_tab_array_copy (PangoTabArray *src); +PANGO_AVAILABLE_IN_ALL void pango_tab_array_free (PangoTabArray *tab_array); +PANGO_AVAILABLE_IN_ALL gint pango_tab_array_get_size (PangoTabArray *tab_array); +PANGO_AVAILABLE_IN_ALL void pango_tab_array_resize (PangoTabArray *tab_array, gint new_size); +PANGO_AVAILABLE_IN_ALL void pango_tab_array_set_tab (PangoTabArray *tab_array, gint tab_index, PangoTabAlign alignment, gint location); +PANGO_AVAILABLE_IN_ALL void pango_tab_array_get_tab (PangoTabArray *tab_array, gint tab_index, PangoTabAlign *alignment, gint *location); +PANGO_AVAILABLE_IN_ALL void pango_tab_array_get_tabs (PangoTabArray *tab_array, PangoTabAlign **alignments, gint **locations); +PANGO_AVAILABLE_IN_ALL gboolean pango_tab_array_get_positions_in_pixels (PangoTabArray *tab_array); diff --git a/pango/pango-types.h b/pango/pango-types.h index 0bf4bd7d..4662c71e 100644 --- a/pango/pango-types.h +++ b/pango/pango-types.h @@ -25,6 +25,8 @@ #include <glib.h> #include <glib-object.h> +#include <pango/pango-version-macros.h> + G_BEGIN_DECLS typedef struct _PangoLogAttr PangoLogAttr; @@ -114,7 +116,9 @@ typedef guint32 PangoGlyph; (((d) + (PANGO_SCALE >> 1)) & ~(PANGO_SCALE - 1)) +PANGO_AVAILABLE_IN_1_16 int pango_units_from_double (double d) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_16 double pango_units_to_double (int i) G_GNUC_CONST; @@ -184,6 +188,7 @@ struct _PangoRectangle #define PANGO_LBEARING(rect) ((rect).x) #define PANGO_RBEARING(rect) ((rect).x + (rect).width) +PANGO_AVAILABLE_IN_1_16 void pango_extents_to_pixels (PangoRectangle *inclusive, PangoRectangle *nearest); diff --git a/pango/pango-utils.h b/pango/pango-utils.h index 40100f6a..bb9a4621 100644 --- a/pango/pango-utils.h +++ b/pango/pango-utils.h @@ -28,38 +28,38 @@ G_BEGIN_DECLS -G_DEPRECATED +PANGO_DEPRECATED char ** pango_split_file_list (const char *str); -G_DEPRECATED +PANGO_DEPRECATED char *pango_trim_string (const char *str); -G_DEPRECATED +PANGO_DEPRECATED gint pango_read_line (FILE *stream, GString *str); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_skip_space (const char **pos); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_scan_word (const char **pos, GString *out); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_scan_string (const char **pos, GString *out); -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_scan_int (const char **pos, int *out); #ifdef PANGO_ENABLE_BACKEND -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 char * pango_config_key_get_system (const char *key); -G_DEPRECATED +PANGO_DEPRECATED_IN_1_38 char * pango_config_key_get (const char *key); -G_DEPRECATED +PANGO_DEPRECATED_IN_1_32 void pango_lookup_aliases (const char *fontname, char ***families, int *n_families); #endif /* PANGO_ENABLE_BACKEND */ -G_DEPRECATED +PANGO_DEPRECATED gboolean pango_parse_enum (GType type, const char *str, int *value, @@ -73,15 +73,19 @@ gboolean pango_parse_enum (GType type, * a warning is printed (with g_warning) if the string does not * contain a valid value. */ +PANGO_AVAILABLE_IN_ALL gboolean pango_parse_style (const char *str, PangoStyle *style, gboolean warn); +PANGO_AVAILABLE_IN_ALL gboolean pango_parse_variant (const char *str, PangoVariant *variant, gboolean warn); +PANGO_AVAILABLE_IN_ALL gboolean pango_parse_weight (const char *str, PangoWeight *weight, gboolean warn); +PANGO_AVAILABLE_IN_ALL gboolean pango_parse_stretch (const char *str, PangoStretch *stretch, gboolean warn); @@ -94,25 +98,27 @@ gboolean pango_parse_stretch (const char *str, * stored in the registry). The returned string should not be * g_free'd. */ -G_DEPRECATED +PANGO_DEPRECATED const char * pango_get_sysconf_subdirectory (void) G_GNUC_PURE; /* Ditto for LIBDIR/pango. On Win32, use the same Pango * installation directory. This returned string should not be * g_free'd either. */ -G_DEPRECATED +PANGO_DEPRECATED const char * pango_get_lib_subdirectory (void) G_GNUC_PURE; #endif /* PANGO_ENABLE_BACKEND */ /* Hint line position and thickness. */ +PANGO_AVAILABLE_IN_1_12 void pango_quantize_line_geometry (int *thickness, int *position); /* A routine from fribidi that we either wrap or provide ourselves. */ +PANGO_AVAILABLE_IN_1_4 guint8 * pango_log2vis_get_embedding_levels (const gchar *text, int length, PangoDirection *pbase_dir); @@ -120,6 +126,7 @@ guint8 * pango_log2vis_get_embedding_levels (const gchar *text, /* Unicode characters that are zero-width and should not be rendered * normally. */ +PANGO_AVAILABLE_IN_1_10 gboolean pango_is_zero_width (gunichar ch) G_GNUC_CONST; /* Pango version checking */ @@ -186,12 +193,15 @@ gboolean pango_is_zero_width (gunichar ch) G_GNUC_CONST; /* Return encoded version of Pango at run-time */ +PANGO_AVAILABLE_IN_1_16 int pango_version (void) G_GNUC_CONST; /* Return run-time Pango version as an string */ +PANGO_AVAILABLE_IN_1_16 const char * pango_version_string (void) G_GNUC_CONST; /* Check that run-time Pango is as new as required */ +PANGO_AVAILABLE_IN_1_16 const char * pango_version_check (int required_major, int required_minor, int required_micro) G_GNUC_CONST; diff --git a/pango/pango.h b/pango/pango.h index 5cc69573..bf688323 100644 --- a/pango/pango.h +++ b/pango/pango.h @@ -44,5 +44,6 @@ #include <pango/pango-tabs.h> #include <pango/pango-types.h> #include <pango/pango-utils.h> +#include <pango/pango-version-macros.h> #endif /* __PANGO_H__ */ diff --git a/pango/pangocairo-coretext.h b/pango/pangocairo-coretext.h index 31faf9be..ffc086ce 100644 --- a/pango/pangocairo-coretext.h +++ b/pango/pangocairo-coretext.h @@ -43,6 +43,7 @@ struct _PangoCairoCoreTextFontMap gdouble dpi; }; +_PANGO_EXTERN GType pango_cairo_core_text_font_map_get_type (void) G_GNUC_CONST; PangoCoreTextFont * diff --git a/pango/pangocairo-coretextfont.h b/pango/pangocairo-coretextfont.h index 752dfdd7..91bdc71e 100644 --- a/pango/pangocairo-coretextfont.h +++ b/pango/pangocairo-coretextfont.h @@ -32,6 +32,7 @@ typedef struct _PangoCairoCoreTextFont PangoCairoCoreTextFont; typedef struct _PangoCairoCoreTextFontClass PangoCairoCoreTextFontClass; +_PANGO_EXTERN GType pango_cairo_core_text_font_get_type (void) G_GNUC_CONST; #endif /* __PANGOCAIRO_CORETEXTFONT_H__ */ diff --git a/pango/pangocairo-fc.h b/pango/pangocairo-fc.h index 8873d5b3..c5c03f53 100644 --- a/pango/pangocairo-fc.h +++ b/pango/pangocairo-fc.h @@ -43,10 +43,13 @@ struct _PangoCairoFcFontMap FT_Library library; }; +PANGO_AVAILABLE_IN_ALL GType pango_cairo_fc_font_map_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_ALL PangoFcFont *_pango_cairo_fc_font_new (PangoCairoFcFontMap *cffontmap, PangoFcFontKey *key); +PANGO_AVAILABLE_IN_ALL FT_Library _pango_cairo_fc_font_map_get_library (PangoCairoFcFontMap *fontmap); G_END_DECLS diff --git a/pango/pangocairo-fcfont.c b/pango/pangocairo-fcfont.c index 7dde713d..95f82e15 100644 --- a/pango/pangocairo-fcfont.c +++ b/pango/pangocairo-fcfont.c @@ -49,6 +49,7 @@ struct _PangoCairoFcFontClass PangoFcFontClass parent_class; }; +_PANGO_EXTERN GType pango_cairo_fc_font_get_type (void); /******************************** diff --git a/pango/pangocairo-private.h b/pango/pangocairo-private.h index 52a8b2f4..704ae497 100644 --- a/pango/pangocairo-private.h +++ b/pango/pangocairo-private.h @@ -127,6 +127,7 @@ void _pango_cairo_font_private_get_glyph_extents (PangoCairoFontPrivate *cf_priv typedef struct _PangoCairoRenderer PangoCairoRenderer; +_PANGO_EXTERN GType pango_cairo_renderer_get_type (void) G_GNUC_CONST; diff --git a/pango/pangocairo.h b/pango/pangocairo.h index 73ad7aca..d15d879b 100644 --- a/pango/pangocairo.h +++ b/pango/pangocairo.h @@ -77,70 +77,95 @@ typedef void (* PangoCairoShapeRendererFunc) (cairo_t *cr, /* * PangoCairoFontMap */ +PANGO_AVAILABLE_IN_1_10 GType pango_cairo_font_map_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_10 PangoFontMap *pango_cairo_font_map_new (void); +PANGO_AVAILABLE_IN_1_18 PangoFontMap *pango_cairo_font_map_new_for_font_type (cairo_font_type_t fonttype); +PANGO_AVAILABLE_IN_1_10 PangoFontMap *pango_cairo_font_map_get_default (void); +PANGO_AVAILABLE_IN_1_22 void pango_cairo_font_map_set_default (PangoCairoFontMap *fontmap); +PANGO_AVAILABLE_IN_1_18 cairo_font_type_t pango_cairo_font_map_get_font_type (PangoCairoFontMap *fontmap); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_font_map_set_resolution (PangoCairoFontMap *fontmap, double dpi); +PANGO_AVAILABLE_IN_1_10 double pango_cairo_font_map_get_resolution (PangoCairoFontMap *fontmap); #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(pango_font_map_create_context) +PANGO_DEPRECATED_IN_1_22_FOR(pango_font_map_create_context) PangoContext *pango_cairo_font_map_create_context (PangoCairoFontMap *fontmap); #endif /* * PangoCairoFont */ +PANGO_AVAILABLE_IN_1_18 GType pango_cairo_font_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_18 cairo_scaled_font_t *pango_cairo_font_get_scaled_font (PangoCairoFont *font); /* Update a Pango context for the current state of a cairo context */ +PANGO_AVAILABLE_IN_1_10 void pango_cairo_update_context (cairo_t *cr, PangoContext *context); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_context_set_font_options (PangoContext *context, const cairo_font_options_t *options); +PANGO_AVAILABLE_IN_1_10 const cairo_font_options_t *pango_cairo_context_get_font_options (PangoContext *context); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_context_set_resolution (PangoContext *context, double dpi); +PANGO_AVAILABLE_IN_1_10 double pango_cairo_context_get_resolution (PangoContext *context); +PANGO_AVAILABLE_IN_1_18 void pango_cairo_context_set_shape_renderer (PangoContext *context, PangoCairoShapeRendererFunc func, gpointer data, GDestroyNotify dnotify); +PANGO_AVAILABLE_IN_1_18 PangoCairoShapeRendererFunc pango_cairo_context_get_shape_renderer (PangoContext *context, gpointer *data); /* Convenience */ +PANGO_AVAILABLE_IN_1_22 PangoContext *pango_cairo_create_context (cairo_t *cr); +PANGO_AVAILABLE_IN_ALL PangoLayout *pango_cairo_create_layout (cairo_t *cr); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_update_layout (cairo_t *cr, PangoLayout *layout); /* * Rendering */ +PANGO_AVAILABLE_IN_1_10 void pango_cairo_show_glyph_string (cairo_t *cr, PangoFont *font, PangoGlyphString *glyphs); +PANGO_AVAILABLE_IN_1_22 void pango_cairo_show_glyph_item (cairo_t *cr, const char *text, PangoGlyphItem *glyph_item); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_show_layout_line (cairo_t *cr, PangoLayoutLine *line); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_show_layout (cairo_t *cr, PangoLayout *layout); +PANGO_AVAILABLE_IN_1_14 void pango_cairo_show_error_underline (cairo_t *cr, double x, double y, @@ -150,14 +175,18 @@ void pango_cairo_show_error_underline (cairo_t *cr, /* * Rendering to a path */ +PANGO_AVAILABLE_IN_1_10 void pango_cairo_glyph_string_path (cairo_t *cr, PangoFont *font, PangoGlyphString *glyphs); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_layout_line_path (cairo_t *cr, PangoLayoutLine *line); +PANGO_AVAILABLE_IN_1_10 void pango_cairo_layout_path (cairo_t *cr, PangoLayout *layout); +PANGO_AVAILABLE_IN_1_14 void pango_cairo_error_underline_path (cairo_t *cr, double x, double y, diff --git a/pango/pangocoretext-private.h b/pango/pangocoretext-private.h index 899cd09b..d7775871 100644 --- a/pango/pangocoretext-private.h +++ b/pango/pangocoretext-private.h @@ -80,6 +80,7 @@ struct _PangoCoreTextFontMapClass }; +_PANGO_EXTERN GType pango_core_text_font_map_get_type (void) G_GNUC_CONST; void _pango_core_text_font_set_font_map (PangoCoreTextFont *afont, @@ -92,17 +93,25 @@ void _pango_core_text_font_set_context_key (PangoCoreTextF gpointer context_key); void _pango_core_text_font_set_font_key (PangoCoreTextFont *font, PangoCoreTextFontKey *key); +_PANGO_EXTERN void _pango_core_text_font_set_ctfont (PangoCoreTextFont *font, CTFontRef font_ref); PangoFontDescription *_pango_core_text_font_description_from_ct_font_descriptor (CTFontDescriptorRef desc); +_PANGO_EXTERN int pango_core_text_font_key_get_absolute_size (const PangoCoreTextFontKey *key); +_PANGO_EXTERN double pango_core_text_font_key_get_resolution (const PangoCoreTextFontKey *key); +_PANGO_EXTERN gboolean pango_core_text_font_key_get_synthetic_italic (const PangoCoreTextFontKey *key); +_PANGO_EXTERN gpointer pango_core_text_font_key_get_context_key (const PangoCoreTextFontKey *key); +_PANGO_EXTERN const PangoMatrix *pango_core_text_font_key_get_matrix (const PangoCoreTextFontKey *key); +_PANGO_EXTERN PangoGravity pango_core_text_font_key_get_gravity (const PangoCoreTextFontKey *key); +_PANGO_EXTERN CTFontDescriptorRef pango_core_text_font_key_get_ctfontdescriptor (const PangoCoreTextFontKey *key); void diff --git a/pango/pangocoretext.h b/pango/pangocoretext.h index a7444436..3bb9fcd6 100644 --- a/pango/pangocoretext.h +++ b/pango/pangocoretext.h @@ -74,10 +74,12 @@ struct _PangoCoreTextFontClass #endif /* PANGO_ENABLE_BACKEND */ +PANGO_AVAILABLE_IN_1_24 CTFontRef pango_core_text_font_get_ctfont (PangoCoreTextFont *font); #endif /* PANGO_ENABLE_ENGINE || PANGO_ENABLE_BACKEND */ +PANGO_AVAILABLE_IN_ALL GType pango_core_text_font_get_type (void) G_GNUC_CONST; G_END_DECLS diff --git a/pango/pangofc-decoder.h b/pango/pangofc-decoder.h index 8e341469..f4b8cc86 100644 --- a/pango/pangofc-decoder.h +++ b/pango/pangofc-decoder.h @@ -95,11 +95,14 @@ struct _PangoFcDecoderClass void (*_pango_reserved4) (void); }; +PANGO_AVAILABLE_IN_1_6 GType pango_fc_decoder_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_6 FcCharSet *pango_fc_decoder_get_charset (PangoFcDecoder *decoder, PangoFcFont *fcfont); +PANGO_AVAILABLE_IN_1_6 PangoGlyph pango_fc_decoder_get_glyph (PangoFcDecoder *decoder, PangoFcFont *fcfont, guint32 wc); diff --git a/pango/pangofc-font.h b/pango/pangofc-font.h index 1189cfe3..ab5a12ac 100644 --- a/pango/pangofc-font.h +++ b/pango/pangofc-font.h @@ -126,24 +126,29 @@ struct _PangoFcFontClass #endif /* PANGO_ENABLE_BACKEND */ +PANGO_AVAILABLE_IN_1_4 gboolean pango_fc_font_has_char (PangoFcFont *font, gunichar wc); +PANGO_AVAILABLE_IN_1_4 guint pango_fc_font_get_glyph (PangoFcFont *font, gunichar wc); #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) +PANGO_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) PangoGlyph pango_fc_font_get_unknown_glyph (PangoFcFont *font, gunichar wc); -G_DEPRECATED +PANGO_DEPRECATED_IN_1_32 void pango_fc_font_kern_glyphs (PangoFcFont *font, PangoGlyphString *glyphs); #endif /* PANGO_DISABLE_DEPRECATED */ #endif /* PANGO_ENABLE_ENGINE || PANGO_ENABLE_BACKEND */ +PANGO_AVAILABLE_IN_ALL GType pango_fc_font_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_4 FT_Face pango_fc_font_lock_face (PangoFcFont *font); +PANGO_AVAILABLE_IN_1_4 void pango_fc_font_unlock_face (PangoFcFont *font); G_END_DECLS diff --git a/pango/pangofc-fontmap.h b/pango/pangofc-fontmap.h index ac3bbf78..4dab0839 100644 --- a/pango/pangofc-fontmap.h +++ b/pango/pangofc-fontmap.h @@ -42,11 +42,17 @@ G_BEGIN_DECLS **/ typedef struct _PangoFcFontsetKey PangoFcFontsetKey; +PANGO_AVAILABLE_IN_1_24 PangoLanguage *pango_fc_fontset_key_get_language (const PangoFcFontsetKey *key); +PANGO_AVAILABLE_IN_1_24 const PangoFontDescription *pango_fc_fontset_key_get_description (const PangoFcFontsetKey *key); +PANGO_AVAILABLE_IN_1_24 const PangoMatrix *pango_fc_fontset_key_get_matrix (const PangoFcFontsetKey *key); +PANGO_AVAILABLE_IN_1_24 double pango_fc_fontset_key_get_absolute_size (const PangoFcFontsetKey *key); +PANGO_AVAILABLE_IN_1_24 double pango_fc_fontset_key_get_resolution (const PangoFcFontsetKey *key); +PANGO_AVAILABLE_IN_1_24 gpointer pango_fc_fontset_key_get_context_key (const PangoFcFontsetKey *key); /** @@ -59,8 +65,11 @@ gpointer pango_fc_fontset_key_get_context_key (const PangoF **/ typedef struct _PangoFcFontKey PangoFcFontKey; +PANGO_AVAILABLE_IN_1_24 const FcPattern *pango_fc_font_key_get_pattern (const PangoFcFontKey *key); +PANGO_AVAILABLE_IN_1_24 const PangoMatrix *pango_fc_font_key_get_matrix (const PangoFcFontKey *key); +PANGO_AVAILABLE_IN_1_24 gpointer pango_fc_font_key_get_context_key (const PangoFcFontKey *key); #endif @@ -170,8 +179,8 @@ struct _PangoFcFontMapClass gboolean (*context_key_equal) (PangoFcFontMap *fcfontmap, gconstpointer key_a, gconstpointer key_b); - void (*fontset_key_substitute)(PangoFcFontMap *fontmap, + PangoFcFontsetKey *fontsetkey, FcPattern *pattern); PangoFcFont *(*create_font) (PangoFcFontMap *fontmap, @@ -186,23 +195,29 @@ struct _PangoFcFontMapClass }; #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(pango_font_map_create_context) +PANGO_DEPRECATED_IN_1_22_FOR(pango_font_map_create_context) PangoContext * pango_fc_font_map_create_context (PangoFcFontMap *fcfontmap); #endif +PANGO_AVAILABLE_IN_1_4 void pango_fc_font_map_shutdown (PangoFcFontMap *fcfontmap); #endif +PANGO_AVAILABLE_IN_ALL GType pango_fc_font_map_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_4 void pango_fc_font_map_cache_clear (PangoFcFontMap *fcfontmap); +PANGO_AVAILABLE_IN_1_38 void pango_fc_font_map_config_changed (PangoFcFontMap *fcfontmap); +PANGO_AVAILABLE_IN_1_38 void pango_fc_font_map_set_config (PangoFcFontMap *fcfontmap, FcConfig *fcconfig); +PANGO_AVAILABLE_IN_1_38 FcConfig * pango_fc_font_map_get_config (PangoFcFontMap *fcfontmap); @@ -219,13 +234,16 @@ pango_fc_font_map_get_config (PangoFcFontMap *fcfontmap); typedef PangoFcDecoder * (*PangoFcDecoderFindFunc) (FcPattern *pattern, gpointer user_data); +PANGO_AVAILABLE_IN_1_6 void pango_fc_font_map_add_decoder_find_func (PangoFcFontMap *fcfontmap, PangoFcDecoderFindFunc findfunc, gpointer user_data, GDestroyNotify dnotify); +PANGO_AVAILABLE_IN_1_26 PangoFcDecoder *pango_fc_font_map_find_decoder (PangoFcFontMap *fcfontmap, FcPattern *pattern); +PANGO_AVAILABLE_IN_1_4 PangoFontDescription *pango_fc_font_description_from_pattern (FcPattern *pattern, gboolean include_size); diff --git a/pango/pangofc-private.h b/pango/pangofc-private.h index e0ffdc41..ee048719 100644 --- a/pango/pangofc-private.h +++ b/pango/pangofc-private.h @@ -91,12 +91,14 @@ PangoFcFontKey *_pango_fc_font_get_font_key (PangoFcFont *fcfont); void _pango_fc_font_set_font_key (PangoFcFont *fcfont, PangoFcFontKey *key); +_PANGO_EXTERN void pango_fc_font_get_raw_extents (PangoFcFont *font, FT_Int32 load_flags, PangoGlyph glyph, PangoRectangle *ink_rect, PangoRectangle *logical_rect); +_PANGO_EXTERN PangoFontMetrics *pango_fc_font_create_base_metrics_for_context (PangoFcFont *font, PangoContext *context); diff --git a/pango/pangoft2-private.h b/pango/pangoft2-private.h index cf00d38e..02d0a34b 100644 --- a/pango/pangoft2-private.h +++ b/pango/pangoft2-private.h @@ -77,6 +77,7 @@ struct _PangoFT2GlyphInfo #define PANGO_FT2_FONT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FT2_FONT, PangoFT2Font)) #define PANGO_FT2_IS_FONT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FT2_FONT)) +_PANGO_EXTERN GType pango_ft2_font_get_type (void) G_GNUC_CONST; PangoFT2Font * _pango_ft2_font_new (PangoFT2FontMap *ft2fontmap, @@ -111,6 +112,7 @@ void _pango_ft2_draw_error_underline (FT_Bitmap *bitmap, #define PANGO_FT2_RENDERER(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FT2_RENDERER, PangoFT2Renderer)) #define PANGO_IS_FT2_RENDERER(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FT2_RENDERER)) +_PANGO_EXTERN GType pango_ft2_renderer_get_type (void) G_GNUC_CONST; PangoRenderer *_pango_ft2_font_map_get_renderer (PangoFT2FontMap *ft2fontmap); diff --git a/pango/pangoft2.h b/pango/pangoft2.h index 2b9083c7..c0830327 100644 --- a/pango/pangoft2.h +++ b/pango/pangoft2.h @@ -58,11 +58,13 @@ typedef void (*PangoFT2SubstituteFunc) (FcPattern *pattern, /* Calls for applications */ +PANGO_AVAILABLE_IN_ALL void pango_ft2_render (FT_Bitmap *bitmap, PangoFont *font, PangoGlyphString *glyphs, gint x, gint y); +PANGO_AVAILABLE_IN_1_6 void pango_ft2_render_transformed (FT_Bitmap *bitmap, const PangoMatrix *matrix, PangoFont *font, @@ -70,36 +72,45 @@ void pango_ft2_render_transformed (FT_Bitmap *bitmap, int x, int y); +PANGO_AVAILABLE_IN_ALL void pango_ft2_render_layout_line (FT_Bitmap *bitmap, PangoLayoutLine *line, int x, int y); +PANGO_AVAILABLE_IN_1_6 void pango_ft2_render_layout_line_subpixel (FT_Bitmap *bitmap, PangoLayoutLine *line, int x, int y); +PANGO_AVAILABLE_IN_ALL void pango_ft2_render_layout (FT_Bitmap *bitmap, PangoLayout *layout, int x, int y); +PANGO_AVAILABLE_IN_1_6 void pango_ft2_render_layout_subpixel (FT_Bitmap *bitmap, PangoLayout *layout, int x, int y); +PANGO_AVAILABLE_IN_ALL GType pango_ft2_font_map_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_2 PangoFontMap *pango_ft2_font_map_new (void); +PANGO_AVAILABLE_IN_1_2 void pango_ft2_font_map_set_resolution (PangoFT2FontMap *fontmap, double dpi_x, double dpi_y); +PANGO_AVAILABLE_IN_1_2 void pango_ft2_font_map_set_default_substitute (PangoFT2FontMap *fontmap, PangoFT2SubstituteFunc func, gpointer data, GDestroyNotify notify); +PANGO_AVAILABLE_IN_1_2 void pango_ft2_font_map_substitute_changed (PangoFT2FontMap *fontmap); #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(pango_font_map_create_context) +PANGO_DEPRECATED_IN_1_22_FOR(pango_font_map_create_context) PangoContext *pango_ft2_font_map_create_context (PangoFT2FontMap *fontmap); #endif @@ -107,23 +118,23 @@ PangoContext *pango_ft2_font_map_create_context (PangoFT2FontMap /* API for rendering modules */ #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(pango_font_map_create_context) +PANGO_DEPRECATED_FOR(pango_font_map_create_context) PangoContext *pango_ft2_get_context (double dpi_x, double dpi_y); -G_DEPRECATED_FOR(pango_ft2_font_map_new) +PANGO_DEPRECATED_FOR(pango_ft2_font_map_new) PangoFontMap *pango_ft2_font_map_for_display (void); -G_DEPRECATED +PANGO_DEPRECATED void pango_ft2_shutdown_display (void); -G_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) +PANGO_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) PangoGlyph pango_ft2_get_unknown_glyph (PangoFont *font); -G_DEPRECATED_FOR(pango_fc_font_kern_glyphs) +PANGO_DEPRECATED_FOR(pango_fc_font_kern_glyphs) int pango_ft2_font_get_kerning (PangoFont *font, PangoGlyph left, PangoGlyph right); -G_DEPRECATED_FOR(pango_fc_font_lock_face) +PANGO_DEPRECATED_FOR(pango_fc_font_lock_face) FT_Face pango_ft2_font_get_face (PangoFont *font); -G_DEPRECATED_FOR(pango_font_get_coverage) +PANGO_DEPRECATED_FOR(pango_font_get_coverage) PangoCoverage *pango_ft2_font_get_coverage (PangoFont *font, PangoLanguage *language); #endif /* PANGO_DISABLE_DEPRECATED */ diff --git a/pango/pangowin32-private.h b/pango/pangowin32-private.h index ad6ce2a3..88e5655d 100644 --- a/pango/pangowin32-private.h +++ b/pango/pangowin32-private.h @@ -254,26 +254,34 @@ struct name_record guint16 string_offset; }; +_PANGO_EXTERN GType _pango_win32_font_get_type (void) G_GNUC_CONST; +_PANGO_EXTERN void _pango_win32_make_matching_logfontw (PangoFontMap *fontmap, const LOGFONTW *lfp, int size, LOGFONTW *out); +_PANGO_EXTERN GType _pango_win32_font_map_get_type (void) G_GNUC_CONST; +_PANGO_EXTERN void _pango_win32_fontmap_cache_remove (PangoFontMap *fontmap, PangoWin32Font *xfont); +_PANGO_EXTERN gboolean _pango_win32_get_name_header (HDC hdc, struct name_header *header); +_PANGO_EXTERN gboolean _pango_win32_get_name_record (HDC hdc, gint i, struct name_record *record); +_PANGO_EXTERN HFONT _pango_win32_font_get_hfont (PangoFont *font); +_PANGO_EXTERN void _pango_win32_shape (PangoFont *font, const char *text, diff --git a/pango/pangowin32.h b/pango/pangowin32.h index ecfe5f8e..c9b440cb 100644 --- a/pango/pangowin32.h +++ b/pango/pangowin32.h @@ -48,24 +48,28 @@ G_BEGIN_DECLS /* Calls for applications */ #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(pango_font_map_create_context) +PANGO_DEPRECATED_FOR(pango_font_map_create_context) PangoContext * pango_win32_get_context (void); #endif +PANGO_AVAILABLE_IN_ALL void pango_win32_render (HDC hdc, PangoFont *font, PangoGlyphString *glyphs, gint x, gint y); +PANGO_AVAILABLE_IN_ALL void pango_win32_render_layout_line (HDC hdc, PangoLayoutLine *line, int x, int y); +PANGO_AVAILABLE_IN_ALL void pango_win32_render_layout (HDC hdc, PangoLayout *layout, int x, int y); +PANGO_AVAILABLE_IN_ALL void pango_win32_render_transformed (HDC hdc, const PangoMatrix *matrix, PangoFont *font, @@ -79,20 +83,26 @@ void pango_win32_render_transformed (HDC hdc, */ #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) +PANGO_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) PangoGlyph pango_win32_get_unknown_glyph (PangoFont *font, gunichar wc); #endif /* PANGO_DISABLE_DEPRECATED */ +PANGO_AVAILABLE_IN_ALL gint pango_win32_font_get_glyph_index(PangoFont *font, gunichar wc); +PANGO_AVAILABLE_IN_ALL HDC pango_win32_get_dc (void); +PANGO_AVAILABLE_IN_1_2 gboolean pango_win32_get_debug_flag (void); +PANGO_AVAILABLE_IN_ALL gboolean pango_win32_font_select_font (PangoFont *font, HDC hdc); +PANGO_AVAILABLE_IN_ALL void pango_win32_font_done_font (PangoFont *font); +PANGO_AVAILABLE_IN_ALL double pango_win32_font_get_metrics_factor (PangoFont *font); #endif @@ -102,25 +112,37 @@ double pango_win32_font_get_metrics_factor (PangoFont *font); */ typedef struct _PangoWin32FontCache PangoWin32FontCache; +PANGO_AVAILABLE_IN_ALL PangoWin32FontCache *pango_win32_font_cache_new (void); +PANGO_AVAILABLE_IN_ALL void pango_win32_font_cache_free (PangoWin32FontCache *cache); +PANGO_AVAILABLE_IN_ALL HFONT pango_win32_font_cache_load (PangoWin32FontCache *cache, const LOGFONTA *logfont); +PANGO_AVAILABLE_IN_1_16 HFONT pango_win32_font_cache_loadw (PangoWin32FontCache *cache, const LOGFONTW *logfont); +PANGO_AVAILABLE_IN_ALL void pango_win32_font_cache_unload (PangoWin32FontCache *cache, HFONT hfont); +PANGO_AVAILABLE_IN_ALL PangoFontMap *pango_win32_font_map_for_display (void); +PANGO_AVAILABLE_IN_ALL void pango_win32_shutdown_display (void); +PANGO_AVAILABLE_IN_ALL PangoWin32FontCache *pango_win32_font_map_get_font_cache (PangoFontMap *font_map); +PANGO_AVAILABLE_IN_ALL LOGFONTA *pango_win32_font_logfont (PangoFont *font); +PANGO_AVAILABLE_IN_1_16 LOGFONTW *pango_win32_font_logfontw (PangoFont *font); +PANGO_AVAILABLE_IN_1_12 PangoFontDescription *pango_win32_font_description_from_logfont (const LOGFONTA *lfp); +PANGO_AVAILABLE_IN_1_16 PangoFontDescription *pango_win32_font_description_from_logfontw (const LOGFONTW *lfp); G_END_DECLS diff --git a/pango/pangoxft-render.h b/pango/pangoxft-render.h index ce19092a..5893574b 100644 --- a/pango/pangoxft-render.h +++ b/pango/pangoxft-render.h @@ -95,21 +95,27 @@ struct _PangoXftRendererClass int n_glyphs); }; +PANGO_AVAILABLE_IN_1_8 GType pango_xft_renderer_get_type (void) G_GNUC_CONST; +PANGO_AVAILABLE_IN_1_8 PangoRenderer *pango_xft_renderer_new (Display *display, int screen); +PANGO_AVAILABLE_IN_1_8 void pango_xft_renderer_set_draw (PangoXftRenderer *xftrenderer, XftDraw *draw); +PANGO_AVAILABLE_IN_1_8 void pango_xft_renderer_set_default_color (PangoXftRenderer *xftrenderer, PangoColor *default_color); +PANGO_AVAILABLE_IN_ALL void pango_xft_render (XftDraw *draw, XftColor *color, PangoFont *font, PangoGlyphString *glyphs, gint x, gint y); +PANGO_AVAILABLE_IN_ALL void pango_xft_picture_render (Display *display, Picture src_picture, Picture dest_picture, @@ -117,6 +123,7 @@ void pango_xft_picture_render (Display *display, PangoGlyphString *glyphs, gint x, gint y); +PANGO_AVAILABLE_IN_1_8 void pango_xft_render_transformed (XftDraw *draw, XftColor *color, PangoMatrix *matrix, @@ -124,11 +131,13 @@ void pango_xft_render_transformed (XftDraw *draw, PangoGlyphString *glyphs, int x, int y); +PANGO_AVAILABLE_IN_1_8 void pango_xft_render_layout_line (XftDraw *draw, XftColor *color, PangoLayoutLine *line, int x, int y); +PANGO_AVAILABLE_IN_1_8 void pango_xft_render_layout (XftDraw *draw, XftColor *color, PangoLayout *layout, diff --git a/pango/pangoxft.h b/pango/pangoxft.h index da0c3315..744fce0d 100644 --- a/pango/pangoxft.h +++ b/pango/pangoxft.h @@ -74,49 +74,58 @@ typedef void (*PangoXftSubstituteFunc) (FcPattern *pattern, /* Calls for applications */ +PANGO_AVAILABLE_IN_1_2 PangoFontMap *pango_xft_get_font_map (Display *display, int screen); #ifndef PANGO_DISABLE_DEPRECATED +PANGO_DEPRECATED PangoContext *pango_xft_get_context (Display *display, int screen); #endif +PANGO_AVAILABLE_IN_1_2 void pango_xft_shutdown_display (Display *display, int screen); +PANGO_AVAILABLE_IN_1_2 void pango_xft_set_default_substitute (Display *display, int screen, PangoXftSubstituteFunc func, gpointer data, GDestroyNotify notify); +PANGO_AVAILABLE_IN_1_2 void pango_xft_substitute_changed (Display *display, int screen); +PANGO_AVAILABLE_IN_ALL GType pango_xft_font_map_get_type (void) G_GNUC_CONST; #define PANGO_XFT_FONT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_XFT_FONT, PangoXftFont)) #define PANGO_TYPE_XFT_FONT (pango_xft_font_get_type ()) #define PANGO_XFT_IS_FONT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_XFT_FONT)) +PANGO_AVAILABLE_IN_ALL GType pango_xft_font_get_type (void) G_GNUC_CONST; /* For shape engines */ #ifdef PANGO_ENABLE_ENGINE +PANGO_AVAILABLE_IN_ALL XftFont * pango_xft_font_get_font (PangoFont *font); +PANGO_AVAILABLE_IN_ALL Display * pango_xft_font_get_display (PangoFont *font); #ifndef PANGO_DISABLE_DEPRECATED -G_DEPRECATED_FOR(pango_fc_font_lock_face) +PANGO_DEPRECATED_FOR(pango_fc_font_lock_face) FT_Face pango_xft_font_lock_face (PangoFont *font); -G_DEPRECATED_FOR(pango_fc_font_unlock_face) +PANGO_DEPRECATED_FOR(pango_fc_font_unlock_face) void pango_xft_font_unlock_face (PangoFont *font); -G_DEPRECATED_FOR(pango_fc_font_get_glyph) +PANGO_DEPRECATED_FOR(pango_fc_font_get_glyph) guint pango_xft_font_get_glyph (PangoFont *font, gunichar wc); -G_DEPRECATED_FOR(pango_fc_font_has_char) +PANGO_DEPRECATED_FOR(pango_fc_font_has_char) gboolean pango_xft_font_has_char (PangoFont *font, gunichar wc); -G_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) +PANGO_DEPRECATED_FOR(PANGO_GET_UNKNOWN_GLYPH) PangoGlyph pango_xft_font_get_unknown_glyph (PangoFont *font, gunichar wc); #endif /* PANGO_DISABLE_DEPRECATED */ |