summaryrefslogtreecommitdiff
path: root/pango/pango-markup.c
Commit message (Collapse)AuthorAgeFilesLines
* Bug 340229 – pango_font_description_from_string does not do boundBehdad Esfahbod2006-05-011-1/+1
| | | | | | | | | | | | 2006-05-01 Behdad Esfahbod <behdad@gnome.org> Bug 340229 – pango_font_description_from_string does not do bound checking * pango/fonts.c (pango_font_description_set_size), (pango_font_description_set_absolute_size), (parse_size): * pango/pango-markup.c (span_parse_func): Don't accept negative font sizes, and make sure sizes don't overflow.
* Bug 337924 – cleanups for issues reported by various compilers PatchBehdad Esfahbod2006-04-111-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Make #include syntax in sources and headers more consistent. We are usingBehdad Esfahbod2006-03-311-3/+3
| | | | | | | | | 2006-03-30 Behdad Esfahbod <behdad@gnome.org> * pango/*.[ch]: Make #include syntax in sources and headers more consistent. We are using the "..." syntax for all Pango headers in source files, and <...> syntax in all header files, except for including private headers, that we use "...".
* Hook up pango-utils.h into the documentation, as we are installing itBehdad Esfahbod2006-03-311-1/+1
| | | | | | | | 2006-03-30 Behdad Esfahbod <behdad@gnome.org> Hook up pango-utils.h into the documentation, as we are installing it anyway. Move some internal stuff to pango-impl-utils.h and make source files include that instead.
* If locking font face failed, do not assert, just return zero glyphs withBehdad Esfahbod2006-01-291-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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...
* Make sure #include <config.h> is the first include in the file. (bugBehdad Esfahbod2006-01-141-0/+1
| | | | | | | 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)
* Various documentation improvements.Behdad Esfahbod2005-11-171-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Set layout wrapping to PANGO_WRAP_WORD_CHAR if width is set for theBehdad Esfahbod2005-11-091-1/+1
| | | | | | | | | | | | | | | | | 2005-11-09 Behdad Esfahbod <behdad@gnome.org> * examples/renderdemo.c (make_layout): Set layout wrapping to PANGO_WRAP_WORD_CHAR if width is set for the layout. Setting width didn't have any effect previously. * pango/pango-layout.c (process_item): Remove the excess letter_spacing adjustment on the item width. (#168593, Damon Chaplin) * pango/pango-markup.c (pango_parse_markup), pango/querymodules.c: Replace g_string_new ("") with g_string_new (NULL). * pango/pangoft2.c: Use g_malloc'ed memory for unknown FreeType2 error, instead of static buffer.
* Reduce non-shared data (#168899, inspired by patches from Tommi KomulainenOwen Taylor2005-03-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 2005-03-04 Owen Taylor <otaylor@redhat.com> Reduce non-shared data (#168899, inspired by patches from Tommi Komulainen and Ross Burton) * pango/pango-color.c pango/pango-color-table.h tools/gen-color-table.pl: Redo storage of colors to use offsets into a static string rather than embedded strings. (Inspired by a patch from Tommi Komulainen, #168899) * pango/break.c pango/fonts.c pango/pango-color.c pango/pango-layout.c pango/pango-markup.c pango/pango-script-lang-table.h pango/mini-fribidi/fribidi_types.c tools/gen-script-for-lang.c: Add const in various places * modules/arabic/arabic-fc.c modules/hebrew/hebrew-fc.c: modules/indic/{indic-fc.c,indic-ot-class-tables.c, indic-ot.h} modules/syriac/syriac-ot.c (syriac): Further addition of const.
* Add underline_color and strikethrough_color attribute types. (#147616,Owen Taylor2004-11-231-0/+48
| | | | | | | | | | | | | | | | | | | | | | | Tue Nov 23 10:23:43 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-attributes.[ch]: Add underline_color and strikethrough_color attribute types. (#147616, Morten Welinder) * pango/pango-markup.c docs/pango_markup.sgml: Add corresponding 'underline_color' and 'strikethrough_color' attributes for <span>. * pango/pango-renderer.c (pango_renderer_default_prepare_run): Implement underline and strikethrough colors. * pango/pango-renderer.c: Fix some bigs with updating underlines/strikethrough state. * pango/pango-renderer.c (get_total_matrix): Fix a const warning. * docs/pango-sections.txt: Update
* Add new letter_spacing attribute.Owen Taylor2004-06-231-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* un Feb 29 15:31:09 2004 Owen Taylor <otaylor@redhat.com>Owen Taylor2004-02-291-0/+2
| | | | | | | | | | | | | Patch from Nicolas Setton, #114237 * pango/pango-attributes.h pango/pango-markup.c: Add a new underline type, PANGO_UNDERLINE_ERROR. * pango/pangowin32.c pango/pangox.c pango/pangoft2.c: Implement drawing of PANGO_UNDERLINE_ERROR. * pango/pango-layout.c (pango_layout_run_get_extents): Handle PANGO_UNDERLINE_ERROR.
* New attribute to turn font fallback on or off. (#105553)Noah Levitt2004-02-291-0/+25
| | | | | | | | | | | | 2003-02-29 Noah Levitt <nlevitt@columbia.edu> * docs/pango_markup.sgml: * docs/tmpl/text-attributes.sgml: * pango/pango-attributes.c: * pango/pango-attributes.h: * pango/pango-context.c: * pango/pango-markup.c: New attribute to turn font fallback on or off. (#105553)
* Handle 'tag' being NULL in a bunch of places. (#122844, Noah Levitt)Owen Taylor2004-02-101-12/+30
| | | | | | | Tue Feb 10 14:33:54 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c: Handle 'tag' being NULL in a bunch of places. (#122844, Noah Levitt)
* Fix up glyph addition code so that it works properly with the typicalOwen Taylor2004-01-261-3/+6
| | | | | | | | | | | | | | Mon Jan 26 10:30:06 2004 Owen Taylor <otaylor@redhat.com> * pango/modules/thai/thai-c: Fix up glyph addition code so that it works properly with the typical TrueType fonts that have 0 width for combining characters. (#124175, Theppitak Karoonboonyanan) Fri Jan 23 16:05:31 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c (open_tag_free): Fix some more problems with NULL attribute lists.
* Fixed segfault, see ChangeLogMatthias Warkus2002-07-021-1/+1
|
* Fix problem with attr_list == NULL. (#85079, Andreas J. Guelzow)Owen Taylor2002-06-131-0/+2
| | | | | | | | Thu Jun 13 16:39:01 2002 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c (pango_parse_markup): Fix problem with attr_list == NULL. (#85079, Andreas J. Guelzow)
* Dummy-initialize gsize variable to 0, not -1. (#73899, Erwann Chenede)Owen Taylor2002-03-201-1/+1
| | | | | | | Wed Mar 20 15:14:15 2002 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c (text_handler): Dummy-initialize gsize variable to 0, not -1. (#73899, Erwann Chenede)
* isspace -> g_ascii_isspace (pango_font_description_from_string): isspaceDarin Adler2002-02-101-3/+8
| | | | | | | | | | | | | | | | * pango/fonts.c: (getword): isspace -> g_ascii_isspace (pango_font_description_from_string): isspace -> g_ascii_isspace * pango/modules.c: Remove unneeded <ctype.h> include. * pango/pango-markup.c: (xml_isspace): New. (pango_parse_markup): isspace -> xml_isspace (span_parse_func): isdigit -> g_ascii_isdigit * pango/pango-utils.c: (pango_trim_string): isspace -> g_ascii_isspace (pango_skip_space): isspace -> g_ascii_isspace (pango_scan_word): isspace -> g_ascii_isspace (pango_scan_string): isspace -> g_ascii_isspace (pango_scan_int): isspace -> g_ascii_isspace * pango/pangoft2-fontmap.c: Remove unneeded <ctype.h> include. * pango/pangox-fontmap.c: Remove unneeded <ctype.h> include.
* Fix problem with detected root node. (Based on patch from Matthias Clasen,Owen Taylor2002-01-291-2/+2
| | | | | | | | Mon Jan 28 20:23:59 2002 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c (pango_parse_markup): Fix problem with detected root node. (Based on patch from Matthias Clasen, #69600)
* Up to 0.19.Owen Taylor2001-09-181-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* New file, move color handling here.Owen Taylor2001-08-301-915/+7
| | | | | | | | | | | Thu Aug 30 17:34:52 2001 Owen Taylor <otaylor@redhat.com> * pango/pango-color.c: New file, move color handling here. * pango/pango-attributes.[ch] pango/pango-markup.c pango/pango-color.c: Export pango_color_parse, change it to take a PangoColor as its argument.
* Use gssize, not size_t, gssize isn't defined here on all systems.Owen Taylor2001-07-021-5/+5
| | | | | | | | Sun Jul 1 22:59:02 2001 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c (text_handler): Use gssize, not size_t, gssize isn't defined here on all systems.
* pango/pango-markup.c: modules/arabic/arabic-xft.c (arabic_engine_shape):Owen Taylor2001-06-251-5/+5
| | | | | | | | | | | | | | | | | | Sat Jun 23 10:01:20 2001 Owen Taylor <otaylor@redhat.com> * pango/pangowin32-fontmap.c (pango_win32_font_entry_get_coverage): * pango/pangoft2-fontmap.c (pango_ft2_font_entry_get_coverage): pango/pango-markup.c: modules/arabic/arabic-xft.c (arabic_engine_shape): modules/arabic/arabic-x.c (arabic_engine_shape): pango/pango-context.c (pango_itemize): pango/pangox.c (get_font_metrics_from_string): pango/pangoft2.c (get_font_metrics_from_string): Adapt to 64-bit changes in glib. * pango/Makefile.am: Modify generation rules to use glib-mkenums (ugh, loong command lines), and to reduce rebuilding by using stamp files.
* Add a new PangoLanguage type to represent language tags; these canOwen Taylor2001-06-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Remove some conditionalization on (md->text == NULL) that is no longerOwen Taylor2001-04-201-5/+3
| | | | | | | | Fri Apr 20 11:38:46 2001 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c (pango_parse_markup): Remove some conditionalization on (md->text == NULL) that is no longer needed with the last change.
* Discard the parsed text if the input variable text is NULL. This fixes aAnders Carlsson2001-04-201-3/+4
| | | | | | | 2001-04-20 Anders Carlsson <andersca@codefactory.se> * pango/pango-markup.c (pango_parse_markup): Discard the parsed text if the input variable text is NULL. This fixes a segfault.
* Define PANGO_VERSION.Tor Lillqvist2000-11-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-30 Tor Lillqvist <tml@iki.fi> * pango/makefile.mingw.in (DEFINES): Define PANGO_VERSION. Changes by Hans Breuer: * pango/pango-layout.c (shape_tab): Add a FIXME comment. * pango/pango-markup.c (compare_xcolor_entries): Use g_strcasecmp. * pango/pango-utils.c (pango_get_sysconf_subdirectory): Use second fallback location if there is no pango subdir in the Windows directory. * pango/pangowin32-fontmap.c (pango_win32_font_entry_get_coverage): Check if fopen succeeded. * pango/pangowin32-private.h (DEBUGGING): Turn off. * pango/pangowin32.c (pango_win32_unicode_classify): We can in fact get out of the loop. Return invalid value in that case. (subfont_has_glyph): Improve performance a bit. * pango/querymodules.c: Small change for MSVC build. * modules/basic/basic-win32.c (basic_engine_get_coverage): Performance improvement. * examples/viewer-win32.c (main): Disable double buffering on the layout widget.
* Return the accel keyvalHavoc Pennington2000-11-011-0/+3
| | | | | | | 2000-11-01 Havoc Pennington <hp@redhat.com> * pango/pango-markup.c (pango_parse_markup): Return the accel keyval
* Fix bug where not all text was appended when parsing acceleratorsHavoc Pennington2000-11-011-0/+15
| | | | | | | 2000-11-01 Havoc Pennington <hp@redhat.com> * pango/pango-markup.c (text_handler): Fix bug where not all text was appended when parsing accelerators
* Add a new attribute for scaling a font; also required addingHavoc Pennington2000-11-011-0/+2216
2000-11-01 Havoc Pennington <hp@pobox.com> * pango/pango-attributes.c (pango_attr_scale_new): Add a new attribute for scaling a font; also required adding PangoAttrFloat. (pango_attr_iterator_get_font): Add PANGO_ATTR_SCALE handling. * pango/pango-utils.c (pango_parse_stretch): Take a plain string not a GString (pango_parse_weight): ditto (pango_parse_variant): ditto (pango_parse_style): ditto * pango/pangox-fontmap.c (pango_x_font_map_read_alias_file): pass GString::str instead of the GString itself to pango_parse_* * pango/pangoft2-fontmap.c (pango_ft2_insert_face): ditto * pango/pangowin32-fontmap.c (pango_win32_font_map_read_alias_file): ditto * pango/pango-layout.c (get_tab_pos): adapt to new pango_itemize() signature (pango_layout_check_lines): Raise attr list copy/creation out of the loop over paragraphs. Adapt to pango_itemize() changes. * pango/pango-context.c (pango_itemize): pass in a starting index and a cached iterator (add_engines): Easy optimization, pass in n_chars instead of recomputing it. Also, pass on the start index and cached iterator. * docs/pango-sections.txt: Add new stuff docs/pango_markup.sgml: Docs on markup format * pango/pango-layout.c (pango_layout_get_attributes): New function to retrieve the AttrList from a layout (pango_layout_set_markup): Set layout from markup (pango_layout_set_markup_with_accel): Set layout from markup including accelerator parsing. * pango/pango-attributes.h (pango_parse_markup): New function to convert a tag string to an attribute list * pango/pango-markup.c (pango_parse_markup): implement * docs/Makefile.am, docs/pango-docs.sgml, docs/pango-sections.txt, docs/pango_markup.sgml: oooooh, documentation for the above patch! * docs/tmpl/pango-unused.sgml: Remove from CVS; just causes problems, and was full of checked-in conflict markers.