summaryrefslogtreecommitdiff
path: root/modules/basic
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright headers.Behdad Esfahbod2007-07-201-2/+4
| | | | | | | | | | | | | | 2007-07-21 Behdad Esfahbod <behdad@gnome.org> * modules/arabic/arabic-fc.c: * modules/basic/basic-fc.c: * modules/hebrew/hebrew-fc.c: * modules/syriac/syriac-fc.c: * modules/thai/thai-fc.c: Update copyright headers. svn path=/trunk/; revision=2372
* Remove list of supported scripts. Supporting all is what we really wantBehdad Esfahbod2007-07-091-27/+0
| | | | | | | | | | 2007-07-10 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-atsui.c: Remove list of supported scripts. Supporting all is what we really want and that's already there. svn path=/trunk/; revision=2371
* Remove unused empty header file basic-common.hBehdad Esfahbod2007-07-055-37/+0
| | | | | | | | | | | | | | 2007-07-05 Behdad Esfahbod <behdad@gnome.org> * modules/basic/Makefile.am: * modules/basic/basic-fc.c: * modules/basic/basic-win32.c: * modules/basic/basic-x.c: * modules/basic/basic-common.h: Remove unused empty header file basic-common.h svn path=/trunk/; revision=2370
* Bug 449543 - Ship pangoatsui.hRichard Hult2007-06-241-8/+4
| | | | | | | | | | | | | | | | | | | | | | 2007-06-24 Richard Hult <richard@imendio.com> Bug 449543 - Ship pangoatsui.h * pango/pangoatsui-fontmap.c: * pango/pangoatsui-private.h: * pango/pangoatsui.c: * pango/pangoatsui.h: * pango/pangocairo-atsuifont.c: * pango/pangocairo-atsuifont.h: Move get_atsu_font_id from the cairo atsui font class to the atsui base class. Make the members of the atsui font private and adapt all users of them. * pango/Makefile.am: Ship pangoatsui.h. * modules/basic/basic-atsui.c: (basic_engine_shape): Adapt to the above changes. svn path=/trunk/; revision=2366
* Rename pango_ot_ruleset_get_for() toBehdad Esfahbod2007-06-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 2007-06-03 Behdad Esfahbod <behdad@gnome.org> * docs/pango-sections.txt: * docs/tmpl/opentype.sgml: * modules/arabic/arabic-fc.c (arabic_engine_shape): * modules/basic/basic-fc.c (basic_engine_shape): * modules/hebrew/hebrew-fc.c (hebrew_engine_shape): * modules/indic/indic-fc.c (indic_engine_shape): * modules/khmer/khmer-fc.c (khmer_engine_shape): * modules/syriac/syriac-fc.c (syriac_engine_shape): * modules/thai/thai-fc.c (thai_engine_shape): * modules/tibetan/tibetan-fc.c (tibetan_engine_shape): * pango/pango-ot-ruleset.c (pango_ot_ruleset_get_for_description), (pango_ot_ruleset_new_from_description): * pango/pango-ot.h: * pango/pangoft2.def: Rename pango_ot_ruleset_get_for() to pango_ot_ruleset_get_for_description(). New engine API: pango_ot_ruleset_new_from_description(). svn path=/trunk/; revision=2328
* Move ruleset creation after populating buffer.Behdad Esfahbod2007-05-151-24/+23
| | | | | | | | | | | | 2007-05-15 Behdad Esfahbod <behdad@gnome.org> * modules/arabic/arabic-fc.c (arabic_engine_shape): * modules/basic/basic-fc.c (basic_engine_shape): * modules/syriac/syriac-fc.c (syriac_engine_shape): Move ruleset creation after populating buffer. svn path=/trunk/; revision=2303
* Part of Bug 325714 – Pango should respect $LANGUAGE Bug 414264 – PangoBehdad Esfahbod2007-05-141-254/+62
| | | | | | | | | | | | | | | | | | | | | | | | | 2007-05-14 Behdad Esfahbod <behdad@gnome.org> Part of Bug 325714 – Pango should respect $LANGUAGE Bug 414264 – Pango vertical writing support is different with real CJK usage. * modules/arabic/arabic-fc.c (arabic_engine_shape): * modules/basic/basic-fc.c (basic_engine_shape): * modules/syriac/syriac-fc.c (syriac_engine_shape): Remove fallback_shape() paths. Remove get_ruleset(). Use pango_ot_ruleset_get_for(), that correctly works for multiple languages. Also makes basic shaper apply the 'vert' feature for vertical text. Removes a net 500 lines. Other OpenType modules need to be ported over time, however some extensions may be needed. For example, the Hebrew shaper uses fallback code if no GPOS tables are available. Currently using pango_ot_ruleset_get_for() one cannot see which features were found. svn path=/trunk/; revision=2292
* Use PANGO_OT_DEFAULT_LANGUAGE and PANGO_OT_ALL_GLYPHS instead of hardcodedBehdad Esfahbod2007-05-101-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | 2007-05-10 Behdad Esfahbod <behdad@gnome.org> * modules/arabic/arabic-fc.c (maybe_add_gsub_feature), (maybe_add_gpos_feature), (get_ruleset): * modules/basic/basic-fc.c (get_ruleset): * modules/hebrew/hebrew-fc.c (maybe_add_gsub_feature), (maybe_add_gpos_feature), (get_ruleset): * modules/indic/indic-fc.c (maybe_add_GSUB_feature), (maybe_add_GPOS_feature): * modules/khmer/khmer-fc.c (maybe_add_GSUB_feature), (maybe_add_GPOS_feature): * modules/syriac/syriac-fc.c (maybe_add_gsub_feature), (maybe_add_gpos_feature), (get_ruleset): * modules/thai/thai-ot.c (maybe_add_gsub_feature), (maybe_add_gpos_feature), (thai_ot_get_ruleset), (lao_ot_get_ruleset): * modules/tibetan/tibetan-fc.c (maybe_add_GSUB_feature), (maybe_add_GPOS_feature): Use PANGO_OT_DEFAULT_LANGUAGE and PANGO_OT_ALL_GLYPHS instead of hardcoded 0xFFFF. svn path=/trunk/; revision=2282
* Correct the signature by making PangoAnalysis const, fixes build warning.Richard Hult2007-04-271-6/+6
| | | | | | | | | 2007-04-27 Richard Hult <richard@imendio.com> * modules/basic/basic-atsui.c (basic_engine_shape): Correct the signature by making PangoAnalysis const, fixes build warning. svn path=/trunk/; revision=2236
* An ISO639 code is always in ASCII, no need to call the wide-characterTor Lillqvist2007-03-071-10/+1
| | | | | | | | | | | 2007-03-07 Tor Lillqvist <tml@novell.com> * modules/basic/basic-win32.c: An ISO639 code is always in ASCII, no need to call the wide-character version of GetLocaleInfo(). svn path=/trunk/; revision=2210
* configure.in modules/basic/Makefile.am Make building with Uniscribe (usingTor Lillqvist2007-03-072-254/+33
| | | | | | | | | | | | | | | | | | | | | | | | 2007-03-07 Tor Lillqvist <tml@novell.com> * configure.in * modules/basic/Makefile.am * modules/basic/basic-win32.c: Make building with Uniscribe (using the <usp10.h> header) mandatory. Mingw's w32api headers do include usp10.h now so one doesn't need to copy it from the Platform SDK any longer. At runtime using Uniscribe is still optional, depending on whether usp10.dll is found or not. I think it isn't necessarily present on Windows 2000 machines, for instance. * modules/basic/basic-win32.c (lang_name): Instead of a hardcoded case statement, use GetLocaleInfo() to get the language ISO639 code. (charset_name): Remove, unused. (itemize_shape_and_place, uniscribe_shape, basic_engine_shape): Constify the PangoAnalysis parameter to match the prototype of PangoEngineShapeClass::script_shape(). svn path=/trunk/; revision=2209
* Bug 395328 – Map kATSDeletedGlyphcode to PANGO_GLYPH_EMPTYBehdad Esfahbod2007-01-171-1/+2
| | | | | | | | | | | | 2007-01-17 Behdad Esfahbod <behdad@gnome.org> Bug 395328 – Map kATSDeletedGlyphcode to PANGO_GLYPH_EMPTY * modules/basic/basic-atsui.c (set_glyph): Handle kATSDeletedGlyphcode. svn path=/trunk/; revision=2170
* *.c, *.h: Replace preceding sequences of 8 spaces with tabs.Behdad Esfahbod2007-01-162-31/+31
| | | | | | | | | 2007-01-16 Behdad Esfahbod <behdad@gnome.org> *.c, *.h: Replace preceding sequences of 8 spaces with tabs. svn path=/trunk/; revision=2165
* *.c, *.h: Drop trailing whitespace.Behdad Esfahbod2007-01-164-119/+119
| | | | | | | | | 2007-01-16 Behdad Esfahbod <behdad@gnome.org> *.c, *.h: Drop trailing whitespace. svn path=/trunk/; revision=2163
* New attribute types PANGO_ATTR_GRAVITY and PANGO_ATTR_GRAVITY_HINT. NewBehdad Esfahbod2007-01-161-12/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-01-16 Behdad Esfahbod <behdad@gnome.org> * pango/pango-attributes.h: * pango/pango-attributes.c: New attribute types PANGO_ATTR_GRAVITY and PANGO_ATTR_GRAVITY_HINT. New public functions: pango_attr_gravity_new() pango_attr_gravity_hint_new() * pango/pango-context.c (update_attr_iterator), (itemize_state_init), (itemize_state_add_character), (get_shaper_and_font), (itemize_state_update_for_new_run): Handle gravity and gravity_hint attributes. * pango/pango-utils.h: * pango/pango-utils.c: New public function: pango_parse_enum() * pango/pango-markup.c (span_parse_func): Parse gravity and gravity_hint attributes for <span>. Optimize a bit. * pango/pango-markup.c (parse_absolute_size), (attr_strcmp), (span_parse_int), (span_parse_boolean), (span_parse_color), (span_parse_enum), (span_parse_func): Use pango_scan_int(), pango_color_parse(), and pango_parse_enum(). Also, ignore '-' and '_' differences when matching attribute names for <span>. * examples/renderdemo.c (parse_enum), (parse_ellipsis), (parse_gravity), (parse_gravity_hint), (parse_hinting), (parse_wrap): Use a generic parse_enum() that uses pango_parse_enum(). * modules/basic/basic-fc.c (basic_engine_shape): * pango/pangofc-fontmap.c (pango_fc_make_pattern): Use PANGO_GRAVITY_IS_VERTICAL(). * pango/pango.def: * docs/pango-sections.txt: * docs/tmpl/text-attributes.sgml: * docs/tmpl/utils.sgml: Update. svn path=/trunk/; revision=2145
* Remove .cvsignore files (moved to svn:ignore prop)Behdad Esfahbod2007-01-091-7/+0
| | | | svn path=/trunk/; revision=2137
* Fix build on Win32 outside srcdir. (#392789, J. Ali Harlow)Tor Lillqvist2007-01-071-1/+1
| | | | | | | | | | 2007-01-07 Tor Lillqvist <tml@novell.com> * modules/basic/Makefile.am: Fix build on Win32 outside srcdir. (#392789, J. Ali Harlow) svn path=/trunk/; revision=2128
* Have basic-win32.c instead of basic-win32.lo depend on usp10.h so thingsTor Lillqvist2006-08-271-1/+1
| | | | | | | | 2006-08-28 Tor Lillqvist <tml@novell.com> * modules/basic/Makefile.am: Have basic-win32.c instead of basic-win32.lo depend on usp10.h so things work out also in case the basic-win32 module is compiled in.
* Remove redundant positioning block!Behdad Esfahbod2006-08-161-17/+0
| | | | | | | 2006-08-16 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-fc.c (fallback_shape): Remove redundant positioning block!
* Use analysis->gravity to detect vertical fonts, instead of poking into theBehdad Esfahbod2006-08-151-7/+14
| | | | | | | 2006-08-15 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-fc.c (basic_engine_shape): Use analysis->gravity to detect vertical fonts, instead of poking into the font_pattern.
* Always use fallback shaping for vertical fonts.Behdad Esfahbod2006-08-151-0/+12
| | | | | | | | | | 2006-08-15 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-fc.c (basic_engine_shape): Always use fallback shaping for vertical fonts. * pango/pango-context.c (get_shaper_and_font): Always use basic shaper for vertical items (east/west gravity).
* Add Cuneiform and Phoenician in the list of supported scripts by thisBehdad Esfahbod2006-07-251-0/+4
| | | | | | | | | | | 2006-07-25 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-fc.c: Add Cuneiform and Phoenician in the list of supported scripts by this backend. Phoenician is a simple RTL script. * pango/pango-script.c (pango_script_get_sample_language): Add language code "nqo" for script N'Ko.
* Bug 337924 – cleanups for issues reported by various compilers PatchBehdad Esfahbod2006-04-112-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-04-11 Behdad Esfahbod <behdad@gnome.org> Bug 337924 – cleanups for issues reported by various compilers Patch from Kjartan Maraas. * examples/viewer-x.c (update): * modules/arabic/arabic-fc.c (fallback_shape), (arabic_engine_shape): * modules/basic/basic-fc.c (fallback_shape), (basic_engine_shape): * modules/basic/basic-x.c: * modules/hangul/hangul-fc.c: * modules/hebrew/hebrew-fc.c (hebrew_engine_shape): * 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/break.c: * pango/modules.c: * pango/opentype/ftglue.c (_hb_ftglue_face_goto_table): * pango/pango-attributes.c (pango_attr_list_filter): * pango/pango-engine.c: * pango/pango-fontset.c: * pango/pango-layout.c (pango_layout_set_text), (pango_layout_xy_to_index), (pango_layout_get_cursor_pos): * pango/pango-markup.c (text_handler): * pango/pango-utils.c (read_alias_file): * pango/pangocairo-fcfont.c (G_DEFINE_TYPE_WITH_CODE): * pango/pangocairo-fcfontmap.c (G_DEFINE_TYPE_WITH_CODE): * pango/pangocairo-font.c (_pango_cairo_font_get_hex_box_info): * pango/pangox-fontmap.c (pango_x_make_matching_xlfd): * tests/dump-boundaries.c (fail): Remove unused variables. Remove excess semicolon after DEFINE_TYPE macros.
* pango/pangowin32-private.h (PING) pango/pangowin32.c Use g_print() insteadTor Lillqvist2006-02-281-46/+46
| | | | | | | | | | 2006-02-28 Tor Lillqvist <tml@novell.com> * pango/pangowin32-private.h (PING) * pango/pangowin32.c * modules/basic/basic-win32.c: Use g_print() instead of printf() for debugging output, to enable easy redirection using GLib facilities. (#332855)
* Bug 331723 – shapers should not crash on failuresBehdad Esfahbod2006-02-211-1/+2
| | | | | | | | | | | | 2006-02-21 Behdad Esfahbod <behdad@gnome.org> Bug 331723 – shapers should not crash on failures * modules/*/*-fc.c: Return instead of g_return_if_fail when face == NULL. * pango/pango-engine.h (PangoEngineShape): Document that a shaper should return an empty glyph string on failure.
* Pass 1.6 and gnu options to automake.Behdad Esfahbod2006-02-131-26/+1
| | | | | | | | | | | | | 2006-02-13 Behdad Esfahbod <behdad@gnome.org> * configure.in: Pass 1.6 and gnu options to automake. * modules/Makefile.am: Distribute Module.mk. * modules/Module.mk: Common bits for writing module Makefil.am's. * modules/*/Makefile.am: Include Module.mk instead of copying common bits.
* Bug 314548 – pango_shape() is missing const correctness Patch fromBehdad Esfahbod2006-02-092-3/+3
| | | | | | | | | | | | | | | | | | 2006-02-09 Behdad Esfahbod <behdad@gnome.org> Bug 314548 – pango_shape() is missing const correctness Patch from Antoine Dopffer. * modules/arabic/arabic-fc.c, modules/basic/basic-fc.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-shaper.c, modules/thai/thai-shaper.h, modules/tibetan/tibetan-fc.c, pango/pango-context.c, pango/pango-engine-private.h, pango/pango-engine.c, pango/pango-engine.h, pango/pango-glyph.h pango/pango-layout.c, pango/shape.c: Make PangoAnalysis *analysis const in all shaper interfaces.
* Change PANGO_GLYPH_EMPTY to 0x0FFFFFFF, to not overlap withBehdad Esfahbod2006-02-053-7/+7
| | | | | | | | | | | | | | | | | | | | | | | 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-034-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-024-10/+10
| | | | | | | | | | | | | | | | | | | | | | | 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)
* If locking font face failed, do not assert, just return zero glyphs withBehdad Esfahbod2006-01-291-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-01-29 Behdad Esfahbod <behdad@gnome.org> * modules/arabic/arabic-fc.c, modules/basic/basic-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-ot.c, modules/thai/thai-shaper.c modules/tibetan/tibetan-fc.c: If locking font face failed, do not assert, just return zero glyphs with an implicit warning. * pango/fonts.c, pango/glyphstring.c pango/modules.c pango/pango-color.c, pango/pango-context.c pango/pango-coverage.c, pango/pango-fontmap.c pango/pango-glyph-item.c, pango/pango-item.c pango/pango-layout.c, pango/pango-markup.c pango/pango-ot-buffer.c, pango/pango-script.c pango/pango-tabs.c, pango/pango-utils.c pango/pangoatsui-fontmap.c, pango/pangocairo-fcfont.c pango/pangocairo-fcfontmap.c, pango/pangocairo-fontmap.c pango/pangocairo-win32font.c, pango/pangofc-font.c pango/pangofc-fontmap.c, pango/pangoft2-fontmap.c pango/pangoft2-render.c, pango/pangoft2.c pango/pangowin32-fontcache.c, pango/pangoxft-font.c pango/pangoxft-render.c, pango/break.c pango/ellipsize.c: Use g_slice for allocating all types. Also, change some g_error's to g_critical's...
* If major.minor of required and available glib versions are the same, addBehdad Esfahbod2006-01-251-1/+0
| | | | | | | | | 2006-01-25 Behdad Esfahbod <behdad@gnome.org> * configure.in: If major.minor of required and available glib versions are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617) * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
* Set cluster only on base chars, like the Arabic module does.Behdad Esfahbod2006-01-231-2/+3
| | | | | | | | | | 2006-01-23 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-fc.c: Set cluster only on base chars, like the Arabic module does. * modules/indic/indic-fc.c: Draw an unknown glyph on missing glyphs, like other modules do. (part of bug #326960, LingNing Zhang)
* Fixes bug #71414, allowing to disable building/installing modules.Behdad Esfahbod2006-01-161-1/+10
| | | | | | | | | | 2006-01-16 Behdad Esfahbod <behdad@gnome.org> Fixes bug #71414, allowing to disable building/installing modules. * configure.in: Add support for --with-dynamic-modules. * */Makefile.am: Adapt to the above change.
* Make sure #include <config.h> is the first include in the file. (bugBehdad Esfahbod2006-01-144-1/+4
| | | | | | | 2006-01-14 Behdad Esfahbod <behdad@gnome.org> * */*.c, */*/*.c: Make sure #include <config.h> is the first include in the file. (bug #158870, based on patch by Luis Menina)
* modules/arabic/arabic-fc.c, modules/basic/basic-fc.c,Behdad Esfahbod2005-12-261-9/+16
| | | | | | | | | | 2005-12-26 Behdad Esfahbod <behdad@gnome.org> * modules/arabic/arabic-fc.c, * modules/basic/basic-fc.c, * modules/hebrew/hebrew-fc.c, * modules/syriac/syriac-fc.c: Use pango_is_zero_width() to not draw zero-width characters in the OpenType shapers. (Fixes bug #324621)
* Return NULL, not FALSE!Behdad Esfahbod2005-12-041-1/+1
| | | | | | | | | 2005-12-04 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-fc.c: Return NULL, not FALSE! * modules/arabic-arabic-fc.c: Add 'cswh' (swash) OpenType feature, as per the Arabic OpenType spec.
* Forgot to add thisAnders Carlsson2005-11-251-0/+234
|
* Reworked basic shaper with OpenType support. (#101079, based on patch fromBehdad Esfahbod2005-11-231-41/+222
| | | | | | | | | | | | | | | | | 2005-11-23 Behdad Esfahbod <behdad@gnome.org> * modules/basic/basic-fc.c: Reworked basic shaper with OpenType support. (#101079, based on patch from Denis Jacquerye and Noah Levitt) * modules/basic/basic-fc.c (basic_scripts): Added Unicode 4.1 addition script PANGO_SCRIPT_GLAGOLITIC that is a "simple" script. * modules/arabic/arabic-fc.c, modules/syriac/syriac-fc.c: Replace g_utf8_to_ucs4_fast() with g_utf8_strlen()! * pango/opentype/pango-ot-ruleset.c (pango_ot_ruleset_add_feature): Remove reference in docs to pango_ot_ruleset_shape() that was removed long ago.
* Add checks for ATSUI.Anders Carlsson2005-11-221-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-11-21 Anders Carlsson <andersca@imendio.com> * configure.in: Add checks for ATSUI. * examples/Makefile.am: Only build pango-cairoview if freetype is detected. * modules/basic/Makefile.am: Add basic ATSUI module. * pango/Makefile.am: Add ATSUI files for cairo backend. * pango/pangocairo-fontmap.c: (pango_cairo_font_map_new): Support creating ATSUI font maps here. * pango/pangoatsui-fontmap.c: * pango/pangoatsui-private.h: * pango/pangoatsui.c: * pango/pangoatsui.h: * pango/pangocairo-atsui.h: * pango/pangocairo-atsuifont.c: * pango/pangocairo-atsuifont.h: * pango/pangocairo-atsuifontmap.c: Add.
* Turn various gcc warnings off. Adding const, adding static, fullyBehdad Esfahbod2005-11-041-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-11-04 Behdad Esfahbod <behdad@gnome.org> * configure.in, examples/argcontext.c examples/cairoview.c, examples/renderdemo.c, examples/renderdemo.h examples/xftview.c, modules/basic/basic-x.c, modules/hangul/hangul-fc.c, modules/hebrew/hebrew-shaper.c, modules/hebrew/hebrew-shaper.h, modules/indic/indic-fc.c, modules/indic/mprefixups.c, modules/syriac/syriac-fc.c, pango/break.c pango/fonts.c, pango/modules.c, pango/pango-coverage.c pango/pango-engine.c, pango/pango-engine.h, pango/pango-fontmap.c, pango/pango-fontset.c, pango/pango-impl-utils.h, pango/pango-layout.c, pango/pango-layout.h, pango/pango-renderer.c, pango/pango-script.c, pango/pango-utils.c, pango/pangocairo-fc.h, pango/pangocairo-font.c, pango/pangocairo-fontmap.c, pango/pangocairo-private.h, pango/pangofc-decoder.c, pango/pangofc-font.c, pango/pangofc-fontmap.c pango/pangoft2.c, pango/pangox-fontcache.c, pango/pangox-fontmap.c pango/pangox.c, pango/pangoxft-font.c, pango/querymodules.c, pango/opentype/ftglue.c, pango/opentype/ftxgpos.c, pango/opentype/ftxopen.c, pango/opentype/pango-ot-buffer.c, pango/opentype/pango-ot-info.c, pango/opentype/pango-ot-ruleset.c, tests/dump-boundaries.c, tests/testboundaries.c, tests/testcolor.c tests/testiter.c, tests/testscript.c: Turn various gcc warnings off. Adding const, adding static, fully initializing structs, match signedness in comparisons. (#317804) * tests/testscript.c, tools/gen-script-for-lang.c: (scripts_for_file): Pass error->message instead of error to fail(), which was wrong. (compare_lang): Fix typo comparing a and a instead of a and b.
* Drop unused font_cache variable and the call toTor Lillqvist2005-09-131-5/+0
| | | | | | | | | | 2005-09-13 Tor Lillqvist <tml@novell.com> * modules/basic/basic-win32.c: Drop unused font_cache variable and the call to pango_win32_font_map_for_display() used in its initialization, which caused an extra instance of PangoWin32FontMap to be created, and fonts enumerated an extra time.
* New function added.Behdad Esfahbod2005-07-234-21/+3
| | | | | | | | | | | | | | 2005-07-23 Behdad Esfahbod <pango@behdad.org> * pango/pango-utils.c, pango/pango-utils.h (pango_is_zerowidth): New function added. * modules/basic/basic-common.h, modules/basic/basic-fc.c, modules/basic/basic-win32.c, modules/basic/basic-x.c, modules/hangul/hangul-fc.c, modules/arabic/arabic-fc.c, modules/indic/indic-fc.c, modules/indic/indic-ot.h, modules/syriac/syriac-fc.c: Use the new pango_is_zerowidth function. (#306639, Behnam Esfahbod)
* Use -export-symbols-regex to control symbol exports, including notOwen Taylor2005-07-221-7/+3
| | | | | | | | | | | | | | | | | 2005-07-22 Owen Taylor <otaylor@redhat.com> * pango/Makefile.a configure.in: Use -export-symbols-regex to control symbol exports, including not exporting the symbols from opentype/. * modules/*/Makefile.am: Control symbol exports here as well, simplify using AC_SUBST() of MODULE_LIBTOOL_OPTIONS from configure.in. * pango/pangox-fontmap.c (engine_shape_covers): Cut-and-paste engine_shape_covers to avoid using a symbol from libpango. * pango/pango-utils.c: Make accidentally exported pango_aliases_ht static.
* Fix up places where there is missing or incomplete Copyright and LicenseOwen Taylor2005-07-211-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-07-21 Owen Taylor <otaylor@redhat.com> Fix up places where there is missing or incomplete Copyright and License information (Reported by William N. Ray) * pango/opentype/fterrcompat.h: Mark as FreeType/GPL licensed. * pango/opentype/FT-license.txt: Make this the dual-licensing description that covers the FreeType code (FreeType's LICENSE.TXT) rather than the FTL. * pango/opentype/FTL.TXT: Move the FTL (referenced from FT-license.txt) to here. * modules/basic/basic-common.h modules/hebrew/hebrew-shaper.h modules/thai/thai-charprop.c modules/thai/thai-shaper.h tools/gen-script-for-lang.c tests/testcolor.c: Add LGPL header and copyright information. * modules/indic/indic-ot.[ch] modules/indic/indic-ot-class-tables.c modules/thai/thai-ot.[ch]: Add LGPL header. * modules/thai/thai-shaper.c modules/thai/thai-charprop.h: Minor fixes to copyright information. * modules/arabic/arabic-ot.c: Add Freetype license boilerplate.
* pango/pangocairo-render.c (pango_cairo_renderer_draw_glyphs): Handle glyphOwen Taylor2005-05-161-1/+2
| | | | | | | | | | | 2005-05-16 Owen Taylor <otaylor@redhat.com> * pango/pangocairo-fcfont.c (pango_cairo_fc_font_get_glyph_extents): pango/pangocairo-render.c (pango_cairo_renderer_draw_glyphs): Handle glyph == 0. * modules/indic/indic-ot.h modules/basic/basic-common.h: Treat LINE SEPARATOR as a zero-width character.
* Correct parameters passed to MultiByteToWideChar(). Pass -1 as sourceTor Lillqvist2005-04-281-12/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-04-28 Tor Lillqvist <tml@novell.com> * pango/pangocairo-win32font.c (pango_cairo_win32_font_get_font_face): Correct parameters passed to MultiByteToWideChar(). Pass -1 as source string length so that the target string gets zero-terminated. Size of target array is in number of WCHARs, not number of bytes. Add support to pangowin32 for TrueType fonts with coverage outside the BMP. Fix handling of surrogate pairs in the Uniscribe shaper. (#302238) * pango/pangowin32-private.h (PangoWin32Face): Rename the unicode_table field to cmap. Keep track of its format (4 or 12). (format_12_cmap): Add struct for a format 12 cmap. * pango/pangowin32.c: Corresponding changes. Rename internal functions a bit. (get_format_12_cmap): New function, reads a format 12 cmap. (font_get_cmap): Look for both format 12 (which is preferred) and format 4 cmaps. (pango_win32_font_get_glyph_index, pango_win32_font_calc_coverage): Handle also format 12 cmaps. * modules/basic/basic-win32.c: Handle surrogate pairs in wchar_t strings properly. (unichar_index): New function. Given a wchar_t string and an index into it, calculate the index of the corresponding Unicode character. Each surrogate pair in the wchar_t is just one Unicode character. (set_up_pango_log_clusters, itemize_shape_and_place): Use unichar_index() instead of direct index into wchar_t string.
* Update to new Cairo font API.Owen Taylor2005-04-071-1/+1
| | | | | | | | | | | 2005-04-07 Owen Taylor <otaylor@redhat.com> * pango/pangocairo-fcfont.c pango/pangocairo-win32font.c pango/pangocairo-render.c: Update to new Cairo font API. * pangpopangowin32.h pango/pangowin32-private.h pango/pangowin32.c pango/pangocairo-win32font.c modules/basic/basic-win32.c: Rename get_scale_factor() to get_metrics_factor() to match Cairo
* Leave out some languages that don't have any own digits.Tor Lillqvist2005-03-201-25/+18
| | | | | | | | | | | | | 2005-03-20 Tor Lillqvist <tml@novell.com> * modules/basic/basic-win32.c (make_langid): Leave out some languages that don't have any own digits. (itemize_shape_and_place): Force fRTL for each item returned from ScriptItemize() to the bidi embedding parity for the whole run. Pango passes us a run that it correctly has analyzed should be of a certain direction, but ScriptItemize() still might split it into items, some of which have neutral direction. (#170931) (text_is_simple): Use g_utf8_to_utf16().
* PangoCairoFontMap for win32 fonts.Owen Taylor2005-02-241-34/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.