summaryrefslogtreecommitdiff
path: root/pango/pango-types.h
Commit message (Collapse)AuthorAgeFilesLines
* Decorate the symbols in the headers with version macrosChun-wei Fan2016-06-291-0/+5
| | | | | | | From the last commit, decorate all the symbols with the version macros. Also add the version macros in the docs. https://bugzilla.gnome.org/show_bug.cgi?id=767587
* Bug 685167 - migrate docs to no-tmpl flavourBehdad Esfahbod2013-09-271-2/+102
| | | | Patch from Rafał Mużyło.
* Group bidi stuff together. Add a section in the docs for them.Behdad Esfahbod2008-04-221-47/+0
| | | | | | | | | | | | | | | | | | | 2008-04-21 Behdad Esfahbod <behdad@gnome.org> * docs/pango-docs.sgml: * docs/pango-sections.txt: * docs/tmpl/bidi.sgml: * docs/tmpl/main.sgml: * docs/tmpl/vertical.sgml: * pango/pango-bidi-type.c (pango_log2vis_get_embedding_levels), (pango_unichar_direction), (pango_get_mirror_char): * pango/pango-bidi-type.h: * pango/pango-types.h: * pango/pango-utils.c: Group bidi stuff together. Add a section in the docs for them. svn path=/trunk/; revision=2608
* Bug 515432 – Add function to get bidirectional character type of aBehdad Esfahbod2008-04-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-04-21 Behdad Esfahbod <behdad@gnome.org> Bug 515432 – Add function to get bidirectional character type of a unicode character Patch from Jürg Billeter * docs/pango-sections.txt: * docs/tmpl/layout.sgml: * docs/tmpl/main.sgml: * docs/tmpl/pangocairo.sgml: * pango/Makefile.am: * pango/pango-bidi-type.c (pango_bidi_type_for_unichar): * pango/pango-bidi-type.h: * pango/pango-types.h: * pango/pango-utils.c (pango_log2vis_get_embedding_levels), (pango_unichar_direction): * pango/pango.def: * pango/pango.h: New public API: enum PangoBidiType; pango_bidi_type_get_type() pango_bidi_type_for_unichar() svn path=/trunk/; revision=2607
* Bug 508002 – change pango_layout_pixel_extents() to round logical rectBehdad Esfahbod2008-01-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-01-21 Behdad Esfahbod <behdad@gnome.org> Bug 508002 – change pango_layout_pixel_extents() to round logical rect to be inclusive * pango/pango-layout.c (pango_layout_get_pixel_extents), (pango_layout_line_get_pixel_extents): Round extents to pixels inclusively. That is, pass both ink_rect and logical_rect as first argument to pango_extents_to_pixels(). * pango/pango-matrix.c (pango_matrix_transform_pixel_rectangle): Fix rounding. * pango/pango-types.h: * docs/tmpl/glyphs.sgml: * pango/pango-utils.c (pango_extents_to_pixels): Rename pango_extents_to_pixels() function arguments from @ink_rect and @logical_rect to @inclusive and @nearest. Given that this API is a fairly new addition and not commonly used, language bindings are encouraged to update their argument names accordingly. Moreover, they are encouraged to wrap this function as two different calls: extents_to_pixels_inclusive() and extents_to_pixels_nearest(), or similar conventions that best reflect their native language. svn path=/trunk/; revision=2548
* Move PangoLanguage stuff into pango-language.[ch]Behdad Esfahbod2007-05-081-19/+2
| | | | | | | | | | | | | | | 2007-05-08 Behdad Esfahbod <behdad@gnome.org> * pango/Makefile.am: * pango/pango-script.h: * pango/pango-types.h: * pango/pango-utils.c: * pango/pango-language.c: * pango/pango-language.h: Move PangoLanguage stuff into pango-language.[ch] svn path=/trunk/; revision=2268
* Move PANGO_UNITS_ROUND here... ...from here.Behdad Esfahbod2007-04-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-04-30 Behdad Esfahbod <behdad@gnome.org> * pango/pango-types.h: Move PANGO_UNITS_ROUND here... * pango/pangofc-private.h: ...from here. * pango/pango-gravity.c: Document that pango_gravity_to_rotation() returns angle in radians but pango_matrix_rotate() takes degrees. * pango/pango-layout.c (pango_layout_run_get_extents): * pango/pango-renderer.c (pango_renderer_draw_layout_line): Retain metrics hinting when centering baseline (used for Latin, etc in vertical mode). * pango/pangocairo-fcfont.c (pango_cairo_fc_font_get_metrics), (pango_cairo_fc_font_glyph_extents_cache_init): Respect metrics hinting setting when moving glyphs around for vertical writing. * pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new): Apply the gravity rotation before the pattern's matrix, such that vertical text gets correct italic direction. * pango/pangocairo-font.c (_pango_cairo_font_get_hex_box_info): Make hexbox font inherit most properties from the current font. That is, bold hexbox digits for a bold font, etc. svn path=/trunk/; revision=2238
* Quantize kerning adjustment, otherwise all the metrics hinting effort willBehdad Esfahbod2007-04-121-0/+2
| | | | | | | | | | | | | | | | | | 2007-04-12 Behdad Esfahbod <behdad@gnome.org> * pango/pango-ot-buffer.c (apply_gpos_ltr), (apply_gpos_rtl), (pango_ot_buffer_output): * pango/pango-types.h: * pango/pangofc-font.c (pango_fc_font_kern_glyphs): * pango/pangofc-private.h: Quantize kerning adjustment, otherwise all the metrics hinting effort will be ruined by a non-whole-pixel kerning value. In the future we want to take lsb_delta and rsb_delta into the game before quantizing the adjustment here, but we don't have those values handy right now. svn path=/trunk/; revision=2225
* *.c, *.h: Drop trailing whitespace.Behdad Esfahbod2007-01-161-2/+2
| | | | | | | | | 2007-01-16 Behdad Esfahbod <behdad@gnome.org> *.c, *.h: Drop trailing whitespace. svn path=/trunk/; revision=2163
* Bug 323173 – Add layout of mixed direction text for vertical layoutBehdad Esfahbod2007-01-161-113/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-01-15 Behdad Esfahbod <behdad@gnome.org> Bug 323173 – Add layout of mixed direction text for vertical layout * pango/pango-gravity.h: * pango/pango-gravity.c: Moved gravity stuff here. New public API: PangoGravityHint pango_gravity_get_for_matrix() pango_gravity_get_for_script() * pango/pango-context.h: * pango/pango-context.c (pango_context_init), (update_resolved_gravity), (itemize_state_update_for_new_run): Support gravity hint. New public API: pango_context_set_gravity_hint() pango_context_get_gravity_hint() * pango/pango-utils.c: * pango/pango-matrix.c: * pango/pango-matrix.h: * pango/pango-types.h: Moved gravity and matrix stuff into its own header. pango-types.h includes both pango-matrix.h and pango-gravity.h * pango/pango.h: Include new headers. * pango/pango.def: * pango/Makefile.am: Update. * docs/pango-docs.sgml: * docs/pango-sections.txt: * docs/tmpl/glyphs.sgml: * docs/tmpl/main.sgml: * docs/tmpl/vertical.sgml: Add a section for Vertical Text. * examples/renderdemo.c (do_output), (parse_gravity_hint), (parse_options): Support gravity hint. * examples/test-mixed.txt: New test, mixed Latin, Arabic, Chinese text. svn path=/trunk/; revision=2144
* Part of Bug 332266 – gdk_draw_layout fails for coordinates >= 2^21Behdad Esfahbod2007-01-041-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-01-04 Behdad Esfahbod <behdad@gnome.org> Part of Bug 332266 – gdk_draw_layout fails for coordinates >= 2^21 * pango/pango-types.h: * pango/pango-matrix.c: New public API: pango_matrix_transform_distance() pango_matrix_transform_point() pango_matrix_transform_rectangle() pango_matrix_transform_pixel_rectangle() * pango/pango-utils.h: * pango/pango-utils.c: New public API: pango_units_from_double() pango_units_to_double() pango_extents_to_pixels() * pango/pango-layout.c (pango_layout_get_pixel_extents), (pango_layout_line_get_pixel_extents): Use pango_extents_to_pixels(). * pango/pangocairo-fcfont.c: (pango_cairo_fc_font_glyph_extents_cache_init), (compute_glyph_extents): Use pango_units_from_double(). * examples/renderdemo.c (do_output): Use pango_matrix_transform_pixel_rectangle(); * pango/pango.def: * docs/pango-sections.txt: * docs/tmpl/glyphs.sgml: Update. svn path=/trunk/; revision=2126
* Bug 333982 – Fallback to $LANG whenever NULL PangoLanguage is used PatchBehdad Esfahbod2006-12-061-0/+2
| | | | | | | | | | | | | | | | | | | | | 2006-12-06 Behdad Esfahbod <behdad@gnome.org> Bug 333982 – Fallback to $LANG whenever NULL PangoLanguage is used Patch from LingNing Zhang * docs/pango-sections.txt: * docs/tmpl/utils.sgml: * pango/pango-context.c: * pango/pango-types.h: * pango/pango-utils.c (_pango_get_lc_ctype), (pango_language_get_default): * pango/pango.def: New public function pango_language_get_default(). Note that, this does not make Pango fallback to the default language automatically, but the user can use this function to set the default language of the locale on a context: pango_context_set_language (context, pango_language_get_default());
* Correct switched return value of EAST/WEST.Behdad Esfahbod2006-08-201-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | 2006-08-20 Behdad Esfahbod <behdad@gnome.org> * pango/pango-matrix.c (pango_matrix_to_gravity): Correct switched return value of EAST/WEST. * pango/pango-types.h (PangoGravity): Add PANGO_GRAVITY_AUTO. * pango/pango-context.h: Add pango_context_get_gravity(). * examples/renderdemo.c (parse_gravity), (parse_options): * pango/pango-context.c (pango_context_init), (update_resolved_gravity), (pango_context_set_matrix), (pango_context_set_base_gravity), (pango_context_get_gravity), (itemize_state_init), (get_shaper_and_font): * pango/pango-layout.c (line_set_resolved_dir): * pango/pangocairo-fcfont.c (pango_cairo_fc_font_get_metrics), (pango_cairo_fc_font_glyph_extents_cache_init), (_pango_cairo_fc_font_new): * pango/pangofc-fontmap.c (pango_fc_make_pattern), (pango_fc_font_map_load_fontset): * pango/pango.def: * docs/pango-sections.txt: * docs/tmpl/main.sgml: Update to above.
* Render block progression and line direction arrows, and a base gravityBehdad Esfahbod2006-08-161-95/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-08-16 Behdad Esfahbod <behdad@gnome.org> * examples/viewer-pangocairo.c (render_callback): Render block progression and line direction arrows, and a base gravity roof-top. * pango/pango-matrix.c (pango_matrix_to_gravity): New function. * pango/pango-utils.c (pango_gravity_to_rotation): New function. * pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new): Use pango_gravity_to_rotation(). * pango/pango-utils.h: * pango/pango-types.h: Reorder a bit. * examples/Makefile.am: * examples/test-chinese.txt: New test text for Chinese. * pango/check.defs: New script that checks that all the exported symbols are listed in the respective .def file. (only checks the libraries actually built. No win32 for example.) * pango/Makefile.am: Hook check.defs as a 'make check' test. * pango/pango.def: * pango/pangoft2.def: * pango/pangocairo.def: Update. * docs/tmpl/glyphs.sgml: * docs/tmpl/main.sgml: * docs/pango-sections.txt: Update.
* Oops. Exchange west<->east and north<->south gravities. The gravity is theBehdad Esfahbod2006-08-151-10/+10
| | | | | | | | | | | | | | | | 2006-08-15 Behdad Esfahbod <behdad@gnome.org> * docs/pango-sections.txt: * docs/tmpl/main.sgml: * examples/renderdemo.c (parse_gravity), (parse_options): * pango/pango-context.c (pango_context_init), (pango_context_get_base_gravity), (itemize_state_add_character): * pango/pango-types.h: * pango/pangocairo-fcfont.c (pango_cairo_fc_font_get_scaled_font): * pango/pangofc-fontmap.c (pango_fc_make_pattern): Oops. Exchange west<->east and north<->south gravities. The gravity is the side that the glyph sits on. So, for normal Latin text for example, gravity is south, not north.
* Add enum PangoGravity.Behdad Esfahbod2006-08-151-5/+21
| | | | | | | | | | | | | 2006-08-15 Behdad Esfahbod <behdad@gnome.org> * pango/pango-types.h: Add enum PangoGravity. * pango/pango-context.h: * pango/pango-context.c (pango_context_set_base_gravity), (pango_context_get_base_gravity): New functions. * pango/pango.def: * docs/pango-sections.txt: Hook new API.
* Bug 329547 – pango_layout_get_pixel_extents andBehdad Esfahbod2006-04-291-4/+6
| | | | | | | | | | | | | | | | 2006-04-29 Behdad Esfahbod <behdad@gnome.org> Bug 329547 – pango_layout_get_pixel_extents and pango_layout_get_pixel_size cause off-by-one metrics * docs/pango-sections.txt: * docs/tmpl/glyphs.sgml: * pango/pango-types.h: Define PANGO_PIXELS_FLOOR and * PANGO_PIXELS_CEIL. * pango/pango-layout.c (pango_layout_get_pixel_extents), (pango_layout_get_pixel_size): Make sure logical rects are consistent and ink rects are inclusive.
* Move PANGO_GLYPH_EMPTY, PANGO_GLYPH_UNKNOWN_FLAG, andBehdad Esfahbod2006-02-171-4/+0
| | | | | | | | | 2006-02-17 Behdad Esfahbod <behdad@gnome.org> * pango/pango-types.h, pango/pango-font.h: Move PANGO_GLYPH_EMPTY, PANGO_GLYPH_UNKNOWN_FLAG, and PANGO_GET_UNKNOWN_GLYPH from the former to the latter, and only define if PANGO_ENABLE_ENGINE or PANGO_ENABLE_BACKEND is set.
* Change PANGO_GLYPH_EMPTY to 0x0FFFFFFF, to not overlap withBehdad Esfahbod2006-02-051-2/+3
| | | | | | | | | | | | | | | | | | | | | | | 2006-02-04 Behdad Esfahbod <behdad@gnome.org> * pango/pango-types.h: Change PANGO_GLYPH_EMPTY to 0x0FFFFFFF, to not overlap with PANGO_GLYPH_UNKNOWN_FLAG (0x10000000). Define PANGO_GET_UNKNOWN_GLYPH(wc) that simply returns wc|PANGO_GLYPH_UNKNOWN_FLAG. * docs/pango-sections.txt, docs/tmpl/glyphs.sgml: Document new symbols. * modules/*/*.c: Use PANGO_GET_UNKNOWN_GLYPH instead of various backend-specific functions. * pango/pangofc-font.c, pango/pangoft.c, pango/pangoxft-font.c, * pango/pangowin32.c, pango/pangox.c: Suggest using PANGO_GET_UNKNOWN_GLYPH in docs. * pango/pangofc-font.h: Deprecate pango_fc_font_get_unknown_glyph(). * pango/pangowin32.h: Deprecate pango_win32_get_unknown_glyph().
* Finish the 'glyph 0' work of this morning: PANGO_GLYPH_NULL that IBehdad Esfahbod2006-02-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-02-02 Behdad Esfahbod <behdad@gnome.org> Finish the 'glyph 0' work of this morning: PANGO_GLYPH_NULL that I introduced is renamed to PANGO_GLYPH_EMPTY. It means, no rendering should be performed. The backends however, still return 0 if a glyph is not found. The modules then are free to replace this 0 glyph with an unknown character. * modules/arabic/arabic-fc.c, modules/basic/basic-atsui.c, modules/basic/basic-fc.c, modules/basic/basic-win32.c, modules/basic/basic-x.c, modules/hangul/hangul-fc.c, modules/hebrew/hebrew-fc.c, modules/indic/indic-fc.c, modules/khmer/khmer-fc.c, modules/syriac/syriac-fc.c, modules/thai/thai-fc.c, modules/tibetan/tibetan-fc.c, pango/pangox.c, pango/pangowin32.c: Adapt to above change. Backends return 0 if glyph not found. * pango/fonts.c (pango_font_get_glyph_extents): If font is not usable (!PANGO_IS_FONT (font)), return the generic UNKNOWN_GLYPH metrics. This is used when your backends are misconfigured and you don't find *any* font at all. * pango/pango-engince.c: Add unknown glyphs in fallback shaper, instead of empty glyphs. * pango/shape.c: Call the fall-back shaper if shaper fails, instead of generating a dummy glyph string ourselves. * pango/pango-layout.c (imposed_shape, shape_tab): Use PANGO_GLYPH_EMPTY instead of glyph 0. * pango/pango-renderer.c (pango_renderer_draw_glyph): No-op on PANGO_GLYPH_EMPTY instead of glyph 0. * pango/pangocairo-atsuifont.c, pango/pangocairo-win32font.c, pango/pangocairo-fcfont.c, pango/pangocairo-font.c, pango/pangocairo-private.h: install_font returns a boolean now. * pango/pangocairo-render.c, pango/pangoxft-render.c: Handle font and hex-box failures more gracefully by drawing a generic unknown-box glyph. * pango/pangoft2.c, pango/pangoft2-render.c: Draw the generic unknown-box glyph here too. For unknown glyphs though, if the font is TTF (FT_IS_SFNT), use the zero-indexed glyph, otherwise, draw a box of proper size.
* Use PANGO_GLYPH_NULL for when no glyph should be drawn. UseBehdad Esfahbod2006-02-021-0/+3
| | | | | | | | | | | | | | | | | | | | | | | 2006-02-02 Behdad Esfahbod <behdad@gnome.org> * modules/arabic/arabic-fc.c, modules/basic/basic-atsui.c, modules/basic/basic-fc.c, modules/basic/basic-win32.c, modules/basic/basic-x.c, modules/hangul/hangul-fc.c, modules/hebrew/hebrew-fc.c, modules/indic/indic-fc.c, modules/khmer/khmer-fc.c, modules/syriac/syriac-fc.c, modules/thai/thai-fc.c, modules/tibetan/tibetan-fc.c, pango/fonts.c, pango/pango-engine-private.h pango/pango-types.h, pango/pangocairo-fcfont.c, pango/pangocairo-font.c, pango/pangocairo-private.h, pango/pangocairo-render.c, pango/pangofc-decoder.c, pango/pangofc-font.c, pango/pangoft2-render.c, pango/pangoft2.c pango/pangowin32.c, pango/pangox.c, pango/pangoxft-font.c pango/pangoxft-private.h, pango/pangoxft-render.c, pango/shape.c: Use PANGO_GLYPH_NULL for when no glyph should be drawn. Use PANGO_GLYPH_UNKNOWN_FLAG for all backends to mark unknown flags. There's no need for pango_font_get_unknown_glyph() anymore, since all backends know how to handle PANGO_GLYPH_UNKNOWN_FLAG gracefully. We may add that in the future however. (fixes bug #73147, closes bug #329524)
* Make matrix parameter const.Behdad Esfahbod2006-01-211-1/+1
| | | | | | | | | | | | | | | 2006-01-21 Behdad Esfahbod <behdad@gnome.org> * pango/pango-types.h, pango/pango-utils.h (pango_matrix_get_font_scale_factor): Make matrix parameter const. * pango/fonts.c, pango/pango-context.c, pango/pango-coverage.c, pango/pango-fontset.c, pango/pango-layout.c, pango/pango-renderer.c, pango/pango-types.h, pango/pango-utils.c, pango/pangocairo-atsuifont.c, pango/pangofc-font.c, pango/pangoft2-fontmap.c, pango/pangowin32-fontmap.c, pango/pangowin32.c, pango/pangox-fontmap.c, pango/pangoxft-font.c: Replace "Returns:" with "Return value:" in docs.
* Fix bug #323540.Behdad Esfahbod2005-12-121-0/+1
| | | | | | | | | | | | | | | | 2005-12-12 Behdad Esfahbod <behdad@gnome.org> Fix bug #323540. * pangofc-fontmap.c (get_scaled_size): The logic in there is moved and renamed into pango-utils. * pango/pango-types.h, * pango/pango-utils.c (pango_matrix_get_font_scale_factor): New function. * pango/pangocairo-fcfont.c (get_font_size): Divide pixel-size by matrix font-scale-factor, since pixel-size is scaled.
* Various documentation improvements.Behdad Esfahbod2005-11-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | 2005-11-16 Behdad Esfahbod <behdad@gnome.org> * docs/pango_markup.sgml docs/tmpl/coverage-maps.sgml docs/tmpl/engines.sgml docs/tmpl/fonts.sgml docs/tmpl/freetype-fonts.sgml docs/tmpl/glyphs.sgml docs/tmpl/layout.sgml docs/tmpl/main.sgml docs/tmpl/modules.sgml docs/tmpl/opentype.sgml docs/tmpl/pango-engine-lang.sgml docs/tmpl/pango-engine-shape.sgml docs/tmpl/pango-renderer.sgml docs/tmpl/pangocairo.sgml docs/tmpl/pangofc-decoder.sgml docs/tmpl/pangofc-font.sgml docs/tmpl/pangofc-fontmap.sgml docs/tmpl/scripts.sgml docs/tmpl/tab-stops.sgml docs/tmpl/text-attributes.sgml docs/tmpl/win32-fonts.sgml docs/tmpl/x-fonts.sgml docs/tmpl/xft-fonts.sgml pango/break.c pango/ellipsize.c pango/fonts.c pango/pango-attributes.c pango/pango-color.c pango/pango-context.c pango/pango-coverage.c pango/pango-fontmap.c pango/pango-glyph-item.c pango/pango-layout.c pango/pango-markup.c pango/pango-tabs.c pango/pango-types.h pango/pango-utils.c pango/pangoft2-render.c pango/pangox.c pango/pangoxft-render.c: Various documentation improvements.
* Added % to PANGO_DIRECTION_LTR in doc comments.Behdad Esfahbod2005-11-161-1/+1
| | | | | | 2005-11-15 Behdad Esfahbod <behdad@gnome.org> * pango/pango-types.h: Added % to PANGO_DIRECTION_LTR in doc comments.
* PangoCairoFontMap for win32 fonts.Owen Taylor2005-02-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-02-24 Owen Taylor <otaylor@redhat.com> * pango/pangocairo-win32.h pango/pangocairo-win32font.c pango/pangocairo-win32fontmap.c pango/Makefile.am: PangoCairoFontMap for win32 fonts. * pango/pangocairo-fontmap.c: Use PangoCairoWin32FontMap when available. * pango/pangowin32.h pango/pangowin32-fontmap.h pango/pangowin32.c: Add virtual pango_win32_font_select_font() to prepare a DC for use with a PangoWin32Font, and to release, pango_win32_font_scale_font() to get logical unit => Pango units scale, pango_win32_font_done_font() to release resources. * pango/pangowin32-fontmap.[ch]: Add a find_font() virtual method to allow subclasses that change how PangoFont lookup and creation happens. * pango/pangowin32-fontmap.c: Move initialization into pango_win32_font_map_init() to facilitate derivation. * pango/pangowin2.c pango/pangowin32-fontmap.c pango/pangowin32-private.h: Move PangoWin32Font/PangoWin32FontMap definitions into pangowin32-private.h to allow derivation for PangoCairoWin32Font. * modules/basic/basic-win32.c: Use pango_win32_font_select_font() and friends. * modules/basic/basic-win32.c: Use g_utf8_to_utf16 instead of g_convert for simplicity and speed. * pango/fonts.c (pango_font_get_font_map) pango/pango-font.h pango/pangofc-font.c pango/pangowin32.c pango/pango.c pango/pango.def docs/pango-sections.txt: Add a virtual function to get the fontmap for a font. * pango/pangocairo-render.c: Use pango_font_get_font_map() rather than PangoFcFontMap hack. * pango/pango-types.h: Move the declaration of PangoFontMap here to avoid interactions between pango-font.h and pango-fontmap.h. * pango/pangocairo.h: Remove accidental include of pangofc-fontmap.h.
* Fix problem where MEDIUM was getting grouped with SEMIBOLD rather thanOwen Taylor2004-12-311-1/+1
| | | | | | | | | | | | | | Fri Dec 31 10:20:55 2004 Owen Taylor <otaylor@redhat.com> * pango/pangofc-fontmap.c (pango_fc_convert_weight_to_pango): Fix problem where MEDIUM was getting grouped with SEMIBOLD rather than NORMAL. (http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=143832) Wed Dec 22 13:21:01 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-script.c pango/pango-types.h: Fix a couple of documentation typos (#161647, Torsten Schoenfeld)
* === Released 1.6.0 ===PANGO_1_6_0Owen Taylor2004-09-141-0/+4
| | | | | | | | | | | | | | | | | Mon Sep 13 17:38:58 2004 Owen Taylor <otaylor@redhat.com> * === Released 1.6.0 === * configure.in: Update versions for 1.6.0 * NEWS: Update. * README: Minor tweak. * pango/fonts.c pango/pango-context.c pango/pango-types.h pango/pango-utils.c pango/pangoft2.c pango/pango-layout.c pango/opentype/pango-ot-buffer.c: Add a bunch of missing Since: 1.6.
* Add a GType for PangoMatrix (#145532, Torsten Schoenfeld)Owen Taylor2004-07-131-0/+9
| | | | | | | | Tue Jul 13 16:23:15 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-types.h pango/pango-utils.c docs/pango-sections.txt: Add a GType for PangoMatrix (#145532, Torsten Schoenfeld)
* One more constification.Owen Taylor2004-07-101-2/+2
| | | | | | | Sat Jul 10 17:55:03 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-types.h pango/pango-utils.c (pango_matrix_concat): One more constification.
* Make PangoMatrix arguments const where appropriate.Owen Taylor2004-07-101-1/+1
| | | | | | | | | | | | | | | | | Sat Jul 10 17:33:38 2004 Owen Taylor <otaylor@redhat.com> * pango/pangoft2-private.h pango/pangoft2-render.c pango/pango-context.[ch] pango/pangoft2.[ch] pango/pango-utils. pango/pango-types.h pango/pangofc-fontmap.c: Make PangoMatrix arguments const where appropriate. * pango/pango-context.c pango/fonts.c pango/pangofc-font.c pangofc-fontmap.c pango/pangoft2.c pango/pangoft2-fontmap.c pango/pangoxft-font.c pango/pangoxft-fontmap.c pango/pangowin32-fontmap.c: Use G_DEFINE_TYPE comprehensively. * pango/pangoft2-private.h pangoft2.c: Un-staticify pango_ft2_font_get_type.
* Add pango_context_get_font_map()Owen Taylor2004-07-081-3/+7
| | | | | | | | | | | | | | | Thu Jul 8 15:25:29 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-context.[ch]: Add pango_context_get_font_map() * pango/pango-fonts.c pango/pango-fontset.c pango/pango-context.c: Some s/PangoMetrics/PangoFontMetrics/ in docs. * pango/pango-context.c: Fix problem with unsetting the matrix for a context. * pango/pango-types.h: Switch to a much more efficient implementation of PANGO_SCALE.
* Add new letter_spacing attribute.Owen Taylor2004-06-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wed Jun 23 11:17:51 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-attributes.[ch]: Add new letter_spacing attribute. * pango/pango-attributes.c (pango_attr_rise_new): Correct description; rise is in Pango units, not em-relative. * pango/pango-glyph-item.c: Break out iteration-over-clusters from ApplyAttrsState into a separate GlyphItemIter. * pango/pango-glyph-item.[ch]: New function pango_glyph_item_letter_space() to add add letter spacing to a single glyph item. * pango/pango-markup.c: Add a letter_spacing attribute. * pango/pango-layout.c: Use G_DEFINE_TYPE(). * pango/pango-layout.c (pango_layout_get_item_properties): Switch to use a structure rather than a pile of out parameters. * pango/pango-layout.c (pango_run_get_extents): Remove the unused shape_set out parameter. * pango/pangofc-decoder.[ch] pango/pangofc-fontmap.[ch]: Doc fixes. * pango/pango-types.h: Deprecate pango_get_mirror_char() * pango/pango-utils.c (pango_get_mirror_char): Add docs. * docs/pango-sections.txt docs/pango-docs.sgml: Add PangoFcDecoder and letter spacing.
* Remove stray semi-colon. (#143516, Morten Welinder)Owen Taylor2004-06-021-1/+1
| | | | | | | Wed Jun 2 10:07:06 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-types.h (PANGO_MATRIX_INIT): Remove stray semi-colon. (#143516, Morten Welinder)
* Fix 'new' as parameter name (C++ compatibility issue). (#143430, DavidOwen Taylor2004-05-311-1/+1
| | | | | | | | Mon May 31 07:39:01 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.c pango/pango-types.h (pango_matrix_concat): Fix 'new' as parameter name (C++ compatibility issue). (#143430, David Hawthorne)
* Add PangoMatrix type for affine transforms.Owen Taylor2004-05-281-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | Fri May 28 11:39:39 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-types.h pango/pango-utils.c: Add PangoMatrix type for affine transforms. * configure.in pango.pc.in pango/Makefile.am: Add a -lm dependency for PangoMatrix operations. * pango/pango-context.[ch]: Add pango_context_set/get_matrix(). * pango/pangoft2-render.c pango/pangoft2-private.h: Add code for drawing antialiased transformed rectangles and squiggly error underlines. * pango/pangoft2.[ch]: Add pango_ft2_render_transformed(), pango_ft2_render_layout_subpixel(), pango_ft2_render_layout_line_subpixel(), implement transformed rendering. * pango/pangofc-font.c: Pass any transformation matrix on to fontconfig when creating the pattern for a PangoFcFont.
* Add some new enum and values and utilities for supporting automaticallyOwen Taylor2004-02-271-5/+41
| | | | | | | | | | | | | | | | | | | | | | | | | Fri Feb 27 09:30:10 2004 Owen Taylor <otaylor@redhat.com> Add some new enum and values and utilities for supporting automatically determined base direction. (#70451, based on changes by Dov Grobgeld) * pango/pango-types.h docs/tmpl/main.sgml: Add PANGO_DIRECTION_WEAK_RTL/LTR, extend the docs for PangoDirection. * pango/pango-types.h pango/pango-utils.h: Move pango_get_mirror_char() to pango-types.h. * pango/mini-fribidi/fribidi.c (pango_log2vis_get_embedding_levels): Handle new values of PangoDirection, handle PANGO_DIRECTION_TTB_LTR/RTL as aliases for PANGO_DIRECTION_RTL/LTR. * pango/mini-fribidi/fribidi.c pango/pango-types.h: Add pango_unichar_direction(). * pango/pango-utils.c pango/pango-types.h: Add pango_find_base_dir()
* Up to 0.19.Owen Taylor2001-09-181-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tue Sep 18 15:47:08 2001 Owen Taylor <otaylor@redhat.com> * configure.in (PANGO_MINOR_VERSION): Up to 0.19. * pango/pango-font.h pango/pango-fontmap.[ch] pango/fonts.c pango/pangoxft-fontmap.c pango/pangoft-fontmap.c pango/pango-context.[ch] pango/pangox-fontmap.c: Add new PangoFontFace and PangoFontFamily object types, and change the font listing API to list faces and families, instead of face names and font descriptions. * pango/pango-font.h pango/fonts.c: Make PangoFontDescription an opaque heap-allocated structure, add accessors and convenience functions. * pango/pango-font.h pango/pango-private.h: Make PangoFontMetrics heap allocated, protect the structure definition with #ifdef PANGO_ENABLE_BACKEND, and add getters for the fields. * pango/pango-attributes.[ch] ( pango_attr_iterator_get_font): instead of providing a base font description and one to fill in, provide a single font description to modify based on the attributes. * pango/pango-attributes.[ch]: Fix PangoAttrFontDesc to have a PangoFontDescription by reference, not by value. * pango/pango-utils.[ch]: make pango_parse_style() and friends take pointers to individual enumerations instead of to a PangoFontDescription structure. * pango/*.c: Fix for the PangoFontDescription and PangoFontMetrics changes. * pango/pango-{break,engine,indic,ot,xft}.h pango/Makefile.am pango/opentype/Makefile.am: Protect portions with PANGO_ENABLE_ENGINE to shrink the public API. * modules/*/Makefile.am: -DPANGO_ENABLE_ENGINE. * pango/{pangox.h,pangox-private.h} modules/basic/basic-x.c: Move pango_x_font_get_unknown_glyph() into public header since it is used from modules. * pango/pango-{context,font,fontmap,modules.utils}.h pango/Makefile.am: Protect portions with PANGO_ENABLE_BACKEND to shrink the public API. * pango/*.h: Use G_BEGIN/END_DECLS * examples/viewer-qt.[cc,h]: Fix for changes to font listing API, PangoFontDescription. * pango/pango-indic.h modules/indic/*: Since we install this header fix it up to Pango conventions, namespece ZERO_WIDTH_JOINER, ZERO_WIDTH_NON_JOINER. * docs/pango-sections.txt: Updated.
* copy function. (pango_glyph_string_get_type): implement get_type function.James Henstridge2001-07-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | 2001-07-02 James Henstridge <james@daa.com.au> * pango/glyphstring.c (pango_glyph_string_copy): copy function. (pango_glyph_string_get_type): implement get_type function. * pango/pango-glyph.h (pango_glyph_string_get_type): get_type function prototype. (pango_glyph_string_copy): prototype for copy function. * pango/pango-utils.c (pango_language_get_type): implementation. * pango/pango-types.h (pango_language_get_type): get_type function. * pango/pango-tabs.c (pango_tab_array_get_type): implementation. * pango/pango-tabs.h (pango_tab_array_get_type): get_type function. * pango/fonts.c (pango_font_description_get_type): implementation. * pango/pango-font.h (pango_font_description_get_type): add get_type function for typecode.
* Add a new PangoLanguage type to represent language tags; these canOwen Taylor2001-06-141-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sat Jun 9 17:36:09 2001 Owen Taylor <otaylor@redhat.com> * pango/pango-types.h pango/pango-utils.c: Add a new PangoLanguage type to represent language tags; these can efficiently be compared and don't need to be copied. Also add pango_language_matches() to match a language tag against a pattern. * pango/pango-item.[ch] pango/pango-layout.c: Move extra_attrs from PangoItem to PangoAnalysis. Add a language tag field to PangoAnalysis. (#55894) * pango/pango-attributes.[ch] (pango_attr_iterator_get_font): Return the language tag as well. * pango/pango-attributes.[ch]: Rename PangoAttrLang to PangoAttrLanguage, and make it hold a PangoLanguage. * pango/pango-context.[ch]: Rename pango_context_{get,set}_lang() to pango_context_{get,set}_language(). * **.[ch]: Adapt to PangoLanguage and s/lang/language/ changes. * modules/basic/basic-x.c modules/basic/tables-big.i: Add support for ordering character sets differently for different language tags. * pango/itemize.c: Remove old, unused file. * pango/pango-context.c (pango_itemize): Reduce number of mallocs by allocating one array of PangoAnalysis instead of many arrays.
* Add a PANGO_PIXELS macro to convert from pango units to device units andOwen Taylor2000-07-021-0/+3
| | | | | | | | | | | Sun Jul 2 17:19:11 2000 Owen Taylor <otaylor@redhat.com> * pango/pango-types.h: Add a PANGO_PIXELS macro to convert from pango units to device units and round. * pango/pango-layout.[ch]: Add convenience functions pango_layout_get_pixel_extents, pango_layout_get_size, pango_layout_get_pixel_size pango_layout_line_get_pixel_extents.
* *** empty log message ***Owen Taylor2000-06-081-6/+0
|
* Fix memory leak by freeing correct list.Owen Taylor2000-05-101-1/+1
| | | | | | | | | | | | | Tue May 9 03:22:11 2000 Owen Taylor <otaylor@redhat.com> * pango/pango-layout.c (pango_layout_check_lines): Fix memory leak by freeing correct list. * pango/pango-context.c (pango_context_get_font_description): Change to return a pointer to the context's font description instead of a copy. Not quite 100% kosher but a lot more efficient than the previous. (Should we just refcount font descriptions and get it over with?)
* Handle right alignment for width == -1, align within total width ofOwen Taylor2000-03-221-1/+2
| | | | | | | Mon Mar 13 11:47:53 2000 Owen Taylor <otaylor@redhat.com> * pango/pango-layout.c pango/pangox.c (pango_x_render_layout): Handle right alignment for width == -1, align within total width of layout.
* Memory management functions for PangoItem.Owen Taylor2000-03-131-16/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mon Mar 13 10:54:48 2000 Owen Taylor <otaylor@redhat.com> * pango/pango-item.[ch]: Memory management functions for PangoItem. * pango/*.[ch]: Random constification. * pango/pangox.c pango/pango-layout.c pango/pango-context.c: Add an extra_attrs field to PangoItem. Use this to handle underlining for PangoLayout. * examples/viewer.c (reload_font): Make paragraphs global to save the complexity of passing it around all over the place. * pango/pango-layout.[ch] (pango_layout_context_changed): Add a function to reset the layout on changes to the layout's context. * pango/pangox.c (pango_x_make_matching_xlfd): Prefer bitmap to scaleable if the discrepancy is < 1 pixel. (Probably not the ideal criterion.) * pango/pangox.c (pango_x_font_map_for_display): Fix resolution computation error. * pango/pango-layout.c (pango_layout_check_lines): Handle text with embedded newlines. * pango/pangox.c (pango_x_render_layout): Fix y to refer to the top of the layout, not the baseline of the first line. * pango/pango-layout.c (process_item): Don't wrap if width is set to -1. * Makefile.am configure.in **/*.[ch]: move libpango/ directory and fix all headers to install under include/pango/
* Convert log_clusters[] use from char offsets to byte offset - should makeOwen Taylor2000-03-071-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Mon Mar 6 20:55:32 2000 Owen Taylor <otaylor@redhat.com> * libpango/mapping.c example/viewer.c: * modules/hangul/hangul.c modules/basic/basic.c modules/tamil/tamil.c: Convert log_clusters[] use from char offsets to byte offset - should make it easier to have all interface deal with stuff in byte offsets. * libpango/mapping.c libpango/pango-glyph.h: Rename x_to_cp and cp_to_x to make them "member functions" of glyph_string. * libpango/pango-types.h: Add a rectangle type for use in storing glyph/glyph-string extents, plus macros for extracting ascent/descent. * libpango/fonts.c libpango/pango-font.h libpango/pangox.c: Virtualize glyph extents function into the font. * libpango/pangox.c modules/*/*.c examples/viewer.c: Convert over to new rationalized unit system - everything in 1000ths of a point or 1000ths of a glyph unit. * libpango/pango-glyph.h libpango/glyphstring.c: Add function to get extents of a glyph string. (We may want to fastpath the width in the future, since getting the width seems to be a very common and time-critical operation)
* Make refcounted.Owen Taylor2000-02-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wed Feb 16 16:39:46 2000 Owen Taylor <otaylor@redhat.com> * libpango/pango-coverage.c (pango_coverage_get): Make refcounted. * libpango/modules.c (struct _PangoEnginePair): Since we don't currently unload engines, cache loaded engines. (Not really quite satisfactory, but should work OK) * libpango/pango-context.c (pango_context_get_font_description): Added a global font description. * libpango/modules.c (_pango_find_map): Allow NULL language tags. * libpango/pango-context.c (pango_itemize) examples/viewer.c: Switch itemize over to take a PangoAttrList. * examples/viewer.c: Conform to changes in itemization interface * libpango/font.[ch]: Add a compare function for FontDescription * libpango/pango-attributes.[ch]: Change the iteration iterface to be more convenient. * libpango/pango-context.[ch]: Add the ability to set a default font. * libpango/pango-context.[ch]: Take the font for itemization from the attributes on the text. * libpango/pangox.c: Cache currently loaded fonts, and cache coverages.
* Conditionally define G_N_ELEMENTS() when using glib-1.3.Owen Taylor2000-02-011-0/+7
| | | | | | | | | | | | | | | | | | Wed Feb 2 11:12:12 2000 Owen Taylor <otaylor@redhat.com> * libpango/pango-types.h: Conditionally define G_N_ELEMENTS() when using glib-1.3. * modules/basic/basic.c modules/hangul/hangul.c modules/tamil/tamil.c: Replace MEMBERS() with G_N_ELEMENTS(). * libpango/pango-engine.h: Added a get_coverage() function to the PangoEngineShape vtable. * modules/basic/basic.c modules/hangul/hangul.c modules/tamil/tamil.c: Added get_coverage() functions. The basic.c one is incredibly inefficient (but caching may make that matter that much). The Hangul one needs checking.
* The great header file reorganization. Split up roughtly by objects.Owen Taylor2000-02-011-0/+76
Wed Feb 2 00:07:13 2000 Owen Taylor <otaylor@redhat.com> * libpango/pango-*.h: The great header file reorganization. Split up roughtly by objects. * libpango/pango-font.h libpango/fonts.h: Add generic font-loading and listing interfaces. * libpango/pangox.c: Implement font-listing/loading interfaces for X. * libpango/pango-context.[ch]: Flesh out context structure. Add appropriate accesors, font loading-methods, etc. * libpango/pango-coverage.[ch]: Coverage map objects. * examples/viewer.c: First stab at adding font-selection. Majorly deficient for the moment until we add font lists and fallbacks based on coverage maps.