diff options
author | Alex Larsson <alexl@redhat.com> | 2001-11-18 23:23:14 +0000 |
---|---|---|
committer | Alexander Larsson <alexl@src.gnome.org> | 2001-11-18 23:23:14 +0000 |
commit | a409a746f1fdec933cd1be897cc6078e6050690f (patch) | |
tree | efc5c88209034a84c3ce8900c7b26f089eb6840e | |
parent | ba6b12ca588709d4d408e691fbe9698a5a97339d (diff) | |
download | pango-a409a746f1fdec933cd1be897cc6078e6050690f.tar.gz |
Add new function pango_context_load_fontset() to wrap
2001-11-18 Alex Larsson <alexl@redhat.com>
* pango/pango-context.[ch]:
Add new function pango_context_load_fontset() to wrap
pango_font_map_load_fontset().
Add PangoContext arguments to load_font and load_fontset.
* pango/pango-fontmap.[ch]:
* pango/pangoft2-fontmap.c:
* pango/pangowin32-fontmap.c:
* pango/pangox-fontmap.c:
* pango/pangoxft-font.c:
* pango/pangoxft-fontmap.c
Add PangoContext arguments to load_font and load_fontset.
-rw-r--r-- | ChangeLog | 15 | ||||
-rw-r--r-- | ChangeLog.pre-1-0 | 15 | ||||
-rw-r--r-- | ChangeLog.pre-1-10 | 15 | ||||
-rw-r--r-- | ChangeLog.pre-1-2 | 15 | ||||
-rw-r--r-- | ChangeLog.pre-1-4 | 15 | ||||
-rw-r--r-- | ChangeLog.pre-1-6 | 15 | ||||
-rw-r--r-- | ChangeLog.pre-1-8 | 15 | ||||
-rw-r--r-- | pango/pango-context.c | 26 | ||||
-rw-r--r-- | pango/pango-context.h | 6 | ||||
-rw-r--r-- | pango/pango-fontmap.c | 18 | ||||
-rw-r--r-- | pango/pango-fontmap.h | 5 | ||||
-rw-r--r-- | pango/pangoft2-fontmap.c | 8 | ||||
-rw-r--r-- | pango/pangowin32-fontmap.c | 2 | ||||
-rw-r--r-- | pango/pangox-fontmap.c | 2 | ||||
-rw-r--r-- | pango/pangoxft-font.c | 2 | ||||
-rw-r--r-- | pango/pangoxft-fontmap.c | 4 |
16 files changed, 168 insertions, 10 deletions
@@ -1,3 +1,18 @@ +2001-11-18 Alex Larsson <alexl@redhat.com> + + * pango/pango-context.[ch]: + Add new function pango_context_load_fontset() to wrap + pango_font_map_load_fontset(). + Add PangoContext arguments to load_font and load_fontset. + + * pango/pango-fontmap.[ch]: + * pango/pangoft2-fontmap.c: + * pango/pangowin32-fontmap.c: + * pango/pangox-fontmap.c: + * pango/pangoxft-font.c: + * pango/pangoxft-fontmap.c + Add PangoContext arguments to load_font and load_fontset. + 2001-11-19 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Suffix package names with datestamp. Add diff --git a/ChangeLog.pre-1-0 b/ChangeLog.pre-1-0 index bf19f799..129abe40 100644 --- a/ChangeLog.pre-1-0 +++ b/ChangeLog.pre-1-0 @@ -1,3 +1,18 @@ +2001-11-18 Alex Larsson <alexl@redhat.com> + + * pango/pango-context.[ch]: + Add new function pango_context_load_fontset() to wrap + pango_font_map_load_fontset(). + Add PangoContext arguments to load_font and load_fontset. + + * pango/pango-fontmap.[ch]: + * pango/pangoft2-fontmap.c: + * pango/pangowin32-fontmap.c: + * pango/pangox-fontmap.c: + * pango/pangoxft-font.c: + * pango/pangoxft-fontmap.c + Add PangoContext arguments to load_font and load_fontset. + 2001-11-19 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Suffix package names with datestamp. Add diff --git a/ChangeLog.pre-1-10 b/ChangeLog.pre-1-10 index bf19f799..129abe40 100644 --- a/ChangeLog.pre-1-10 +++ b/ChangeLog.pre-1-10 @@ -1,3 +1,18 @@ +2001-11-18 Alex Larsson <alexl@redhat.com> + + * pango/pango-context.[ch]: + Add new function pango_context_load_fontset() to wrap + pango_font_map_load_fontset(). + Add PangoContext arguments to load_font and load_fontset. + + * pango/pango-fontmap.[ch]: + * pango/pangoft2-fontmap.c: + * pango/pangowin32-fontmap.c: + * pango/pangox-fontmap.c: + * pango/pangoxft-font.c: + * pango/pangoxft-fontmap.c + Add PangoContext arguments to load_font and load_fontset. + 2001-11-19 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Suffix package names with datestamp. Add diff --git a/ChangeLog.pre-1-2 b/ChangeLog.pre-1-2 index bf19f799..129abe40 100644 --- a/ChangeLog.pre-1-2 +++ b/ChangeLog.pre-1-2 @@ -1,3 +1,18 @@ +2001-11-18 Alex Larsson <alexl@redhat.com> + + * pango/pango-context.[ch]: + Add new function pango_context_load_fontset() to wrap + pango_font_map_load_fontset(). + Add PangoContext arguments to load_font and load_fontset. + + * pango/pango-fontmap.[ch]: + * pango/pangoft2-fontmap.c: + * pango/pangowin32-fontmap.c: + * pango/pangox-fontmap.c: + * pango/pangoxft-font.c: + * pango/pangoxft-fontmap.c + Add PangoContext arguments to load_font and load_fontset. + 2001-11-19 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Suffix package names with datestamp. Add diff --git a/ChangeLog.pre-1-4 b/ChangeLog.pre-1-4 index bf19f799..129abe40 100644 --- a/ChangeLog.pre-1-4 +++ b/ChangeLog.pre-1-4 @@ -1,3 +1,18 @@ +2001-11-18 Alex Larsson <alexl@redhat.com> + + * pango/pango-context.[ch]: + Add new function pango_context_load_fontset() to wrap + pango_font_map_load_fontset(). + Add PangoContext arguments to load_font and load_fontset. + + * pango/pango-fontmap.[ch]: + * pango/pangoft2-fontmap.c: + * pango/pangowin32-fontmap.c: + * pango/pangox-fontmap.c: + * pango/pangoxft-font.c: + * pango/pangoxft-fontmap.c + Add PangoContext arguments to load_font and load_fontset. + 2001-11-19 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Suffix package names with datestamp. Add diff --git a/ChangeLog.pre-1-6 b/ChangeLog.pre-1-6 index bf19f799..129abe40 100644 --- a/ChangeLog.pre-1-6 +++ b/ChangeLog.pre-1-6 @@ -1,3 +1,18 @@ +2001-11-18 Alex Larsson <alexl@redhat.com> + + * pango/pango-context.[ch]: + Add new function pango_context_load_fontset() to wrap + pango_font_map_load_fontset(). + Add PangoContext arguments to load_font and load_fontset. + + * pango/pango-fontmap.[ch]: + * pango/pangoft2-fontmap.c: + * pango/pangowin32-fontmap.c: + * pango/pangox-fontmap.c: + * pango/pangoxft-font.c: + * pango/pangoxft-fontmap.c + Add PangoContext arguments to load_font and load_fontset. + 2001-11-19 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Suffix package names with datestamp. Add diff --git a/ChangeLog.pre-1-8 b/ChangeLog.pre-1-8 index bf19f799..129abe40 100644 --- a/ChangeLog.pre-1-8 +++ b/ChangeLog.pre-1-8 @@ -1,3 +1,18 @@ +2001-11-18 Alex Larsson <alexl@redhat.com> + + * pango/pango-context.[ch]: + Add new function pango_context_load_fontset() to wrap + pango_font_map_load_fontset(). + Add PangoContext arguments to load_font and load_fontset. + + * pango/pango-fontmap.[ch]: + * pango/pangoft2-fontmap.c: + * pango/pangowin32-fontmap.c: + * pango/pangox-fontmap.c: + * pango/pangoxft-font.c: + * pango/pangoxft-fontmap.c + Add PangoContext arguments to load_font and load_fontset. + 2001-11-19 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Suffix package names with datestamp. Add diff --git a/pango/pango-context.c b/pango/pango-context.c index 19ca1af4..53099411 100644 --- a/pango/pango-context.c +++ b/pango/pango-context.c @@ -215,7 +215,28 @@ pango_context_load_font (PangoContext *context, { g_return_val_if_fail (context != NULL, NULL); - return pango_font_map_load_font (context->font_map, desc); + return pango_font_map_load_font (context->font_map, context, desc); +} + +/** + * pango_context_load_fontset: + * @context: a #PangoContext + * @desc: a #PangoFontDescription describing the fonts to load + * @language: a #PangoLanguage the fonts will be used for + * + * Load a set of fonts in the context that can be used to render + * a font matching @desc. + * + * Returns the fontset, or %NULL if no font matched. + **/ +PangoFontset * +pango_context_load_fontset (PangoContext *context, + const PangoFontDescription *desc, + PangoLanguage *language) +{ + g_return_val_if_fail (context != NULL, NULL); + + return pango_font_map_load_fontset (context->font_map, context, desc, language); } /** @@ -633,6 +654,7 @@ add_engines (PangoContext *context, g_object_unref (current_fonts); current_fonts = pango_font_map_load_fontset (context->font_map, + context, current_desc, language); } @@ -705,7 +727,7 @@ pango_context_get_metrics (PangoContext *context, g_return_val_if_fail (PANGO_IS_CONTEXT (context), NULL); g_return_val_if_fail (desc != NULL, NULL); - current_fonts = pango_font_map_load_fontset (context->font_map, desc, language); + current_fonts = pango_font_map_load_fontset (context->font_map, context, desc, language); metrics = pango_fontset_get_metrics (current_fonts); diff --git a/pango/pango-context.h b/pango/pango-context.h index c72cf992..078e841f 100644 --- a/pango/pango-context.h +++ b/pango/pango-context.h @@ -31,7 +31,8 @@ G_BEGIN_DECLS /* Sort of like a GC - application set information about how * to handle scripts */ -typedef struct _PangoContext PangoContext; + +/* PangoContext typedefed in pango-fontmap.h */ typedef struct _PangoContextClass PangoContextClass; #define PANGO_TYPE_CONTEXT (pango_context_get_type ()) @@ -59,6 +60,9 @@ void pango_context_list_families (PangoContext *context int *n_families); PangoFont * pango_context_load_font (PangoContext *context, const PangoFontDescription *desc); +PangoFontset *pango_context_load_fontset (PangoContext *context, + const PangoFontDescription *desc, + PangoLanguage *language); PangoFontMetrics *pango_context_get_metrics (PangoContext *context, const PangoFontDescription *desc, diff --git a/pango/pango-fontmap.c b/pango/pango-fontmap.c index 5f678979..fd193f5e 100644 --- a/pango/pango-fontmap.c +++ b/pango/pango-fontmap.c @@ -25,6 +25,7 @@ static void pango_font_map_class_init (PangoFontMapClass *class); static PangoFontset *pango_font_map_real_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language); @@ -67,6 +68,7 @@ pango_font_map_class_init (PangoFontMapClass *class) /** * pango_font_map_load_font: * @fontmap: a #PangoFontMap + * @context: the #PangoContext the font will be used with * @desc: a #PangoFontDescription describing the font to load * * Load the font in the fontmap that is the closest match for @desc. @@ -75,11 +77,12 @@ pango_font_map_class_init (PangoFontMapClass *class) **/ PangoFont * pango_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc) { g_return_val_if_fail (fontmap != NULL, NULL); - return PANGO_FONT_MAP_GET_CLASS (fontmap)->load_font (fontmap, desc); + return PANGO_FONT_MAP_GET_CLASS (fontmap)->load_font (fontmap, context, desc); } /** @@ -104,6 +107,7 @@ pango_font_map_list_families (PangoFontMap *fontmap, /** * pango_font_map_load_fontset: * @fontmap: a #PangoFontMap + * @context: the #PangoContext the font will be used with * @desc: a #PangoFontDescription describing the font to load * @language: a #PangoLanguage the fonts will be used for * @@ -114,16 +118,18 @@ pango_font_map_list_families (PangoFontMap *fontmap, **/ PangoFontset * pango_font_map_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language) { g_return_val_if_fail (fontmap != NULL, 0); - return PANGO_FONT_MAP_GET_CLASS (fontmap)->load_fontset (fontmap, desc, language); + return PANGO_FONT_MAP_GET_CLASS (fontmap)->load_fontset (fontmap, context, desc, language); } static void pango_font_map_fontset_add_fonts (PangoFontMap *fontmap, + PangoContext *context, PangoFontsetSimple *fonts, PangoFontDescription *desc, char *family) @@ -142,7 +148,7 @@ pango_font_map_fontset_add_fonts (PangoFontMap *fontmap, for (j = 0; j < n_aliases; j++) { pango_font_description_set_family_static (desc, aliases[j]); - font = pango_font_map_load_font (fontmap, desc); + font = pango_font_map_load_font (fontmap, context, desc); if (font) pango_fontset_simple_append (fonts, font); } @@ -150,7 +156,7 @@ pango_font_map_fontset_add_fonts (PangoFontMap *fontmap, else { pango_font_description_set_family_static (desc, family); - font = pango_font_map_load_font (fontmap, desc); + font = pango_font_map_load_font (fontmap, context, desc); if (font) pango_fontset_simple_append (fonts, font); } @@ -158,6 +164,7 @@ pango_font_map_fontset_add_fonts (PangoFontMap *fontmap, static PangoFontset * pango_font_map_real_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language) { @@ -172,6 +179,7 @@ pango_font_map_real_load_fontset (PangoFontMap *fontmap, for (i = 0; families[i]; i++) pango_font_map_fontset_add_fonts (fontmap, + context, fonts, tmp_desc, families[i]); @@ -197,6 +205,7 @@ pango_font_map_real_load_fontset (PangoFontMap *fontmap, g_free (ctmp2); pango_font_map_fontset_add_fonts (fontmap, + context, fonts, tmp_desc, "Sans"); @@ -221,6 +230,7 @@ pango_font_map_real_load_fontset (PangoFontMap *fontmap, g_free (ctmp2); pango_font_map_fontset_add_fonts (fontmap, + context, fonts, tmp_desc, "Sans"); diff --git a/pango/pango-fontmap.h b/pango/pango-fontmap.h index adc4920a..17f20a5d 100644 --- a/pango/pango-fontmap.h +++ b/pango/pango-fontmap.h @@ -31,12 +31,15 @@ G_BEGIN_DECLS #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)) +typedef struct _PangoContext PangoContext; typedef struct _PangoFontMap PangoFontMap; GType pango_font_map_get_type (void) G_GNUC_CONST; PangoFont * pango_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc); PangoFontset *pango_font_map_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language); void pango_font_map_list_families (PangoFontMap *fontmap, @@ -62,11 +65,13 @@ struct _PangoFontMapClass GObjectClass parent_class; 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); }; diff --git a/pango/pangoft2-fontmap.c b/pango/pangoft2-fontmap.c index 51039df5..bb4f076a 100644 --- a/pango/pangoft2-fontmap.c +++ b/pango/pangoft2-fontmap.c @@ -105,8 +105,10 @@ static void pango_ft2_font_map_init (PangoFT2FontMap static void pango_ft2_font_map_class_init (PangoFontMapClass *class); static void pango_ft2_font_map_finalize (GObject *object); static PangoFont * pango_ft2_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *description); static PangoFontset *pango_ft2_font_map_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language); static void pango_ft2_font_set_free (PangoFT2PatternSet *font_set); @@ -500,6 +502,7 @@ pango_ft2_font_map_new_font (PangoFontMap *fontmap, static PangoFont * pango_ft2_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *description) { MiniXftPattern *pattern, *match; @@ -519,6 +522,7 @@ pango_ft2_font_map_load_font (PangoFontMap *fontmap, static PangoFontset * pango_ft2_font_map_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language) { @@ -563,7 +567,7 @@ pango_ft2_font_map_load_fontset (PangoFontMap *fontmap, MiniXftPatternGetString (match, XFT_FAMILY, 0, &family_res) == MiniXftResultMatch && g_ascii_strcasecmp (family, family_res) == 0) { - patterns->patterns[patterns->n_patterns++] = match; + g_ptr_array_add (array, match); match = NULL; } if (match) @@ -573,7 +577,7 @@ pango_ft2_font_map_load_fontset (PangoFontMap *fontmap, if (array->len == 0) { match = MiniXftFontSetMatch (&_MiniXftFontSet, 1, pattern, &res); - patterns->patterns[patterns->n_patterns++] = match; + g_ptr_array_add (array, match); } MiniXftPatternDestroy (pattern); diff --git a/pango/pangowin32-fontmap.c b/pango/pangowin32-fontmap.c index a84160a8..d112b3b3 100644 --- a/pango/pangowin32-fontmap.c +++ b/pango/pangowin32-fontmap.c @@ -101,6 +101,7 @@ static void pango_win32_font_map_class_init (PangoFontMapClass *c static void pango_win32_font_map_finalize (GObject *object); static PangoFont *pango_win32_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *description); static void pango_win32_font_map_list_families (PangoFontMap *fontmap, PangoFontFamily ***families, @@ -428,6 +429,7 @@ pango_win32_get_font_family (PangoWin32FontMap *win32fontmap, static PangoFont * pango_win32_font_map_load_font (PangoFontMap *fontmap, + angoContext *context, const PangoFontDescription *description) { PangoWin32FontMap *win32fontmap = (PangoWin32FontMap *)fontmap; diff --git a/pango/pangox-fontmap.c b/pango/pangox-fontmap.c index c2c4a116..5e28a000 100644 --- a/pango/pangox-fontmap.c +++ b/pango/pangox-fontmap.c @@ -130,6 +130,7 @@ static void pango_x_font_map_class_init (PangoFontMapClass *class); static void pango_x_font_map_finalize (GObject *object); static PangoFont *pango_x_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *description); static void pango_x_font_map_list_families (PangoFontMap *fontmap, PangoFontFamily ***families, @@ -397,6 +398,7 @@ pango_x_get_font_family (PangoXFontMap *xfontmap, static PangoFont * pango_x_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *description) { PangoXFontMap *xfontmap = (PangoXFontMap *)fontmap; diff --git a/pango/pangoxft-font.c b/pango/pangoxft-font.c index c398f86d..43f229a5 100644 --- a/pango/pangoxft-font.c +++ b/pango/pangoxft-font.c @@ -154,7 +154,7 @@ get_mini_font (PangoFont *font) pango_font_description_set_size (desc, 0.5 * pango_font_description_get_size (xfont->description)); - xfont->mini_font = pango_font_map_load_font (xfont->fontmap, desc); + xfont->mini_font = pango_font_map_load_font (xfont->fontmap, NULL, desc); pango_font_description_free (desc); mini_xft = pango_xft_font_get_font (xfont->mini_font); diff --git a/pango/pangoxft-fontmap.c b/pango/pangoxft-fontmap.c index b159a56a..0c1d3d64 100644 --- a/pango/pangoxft-fontmap.c +++ b/pango/pangoxft-fontmap.c @@ -111,8 +111,10 @@ static void pango_xft_font_map_init (PangoXftFontMap static void pango_xft_font_map_class_init (PangoFontMapClass *class); static void pango_xft_font_map_finalize (GObject *object); static PangoFont * pango_xft_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *description); static PangoFontset *pango_xft_font_map_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language); static void pango_xft_font_map_list_families (PangoFontMap *fontmap, @@ -508,6 +510,7 @@ pango_xft_font_map_new_font (PangoFontMap *fontmap, static PangoFont * pango_xft_font_map_load_font (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *description) { PangoXftFontMap *xfontmap = (PangoXftFontMap *)fontmap; @@ -539,6 +542,7 @@ pango_xft_font_set_free (PangoXftPatternSet *font_set) static PangoFontset * pango_xft_font_map_load_fontset (PangoFontMap *fontmap, + PangoContext *context, const PangoFontDescription *desc, PangoLanguage *language) { |