summaryrefslogtreecommitdiff
path: root/pango/pango-utils.c
Commit message (Collapse)AuthorAgeFilesLines
* Italian is "it"; "iw" is deprecated for Hebrew, should be "he".Noah Levitt2003-11-251-2/+2
| | | | | | | 2003-11-25 Noah Levitt <nlevitt@columbia.edu> * pango-utils.c (lang_texts[]): Italian is "it"; "iw" is deprecated for Hebrew, should be "he".
* Increment past the ';' for a list with multiple elements. (#117180, JohnOwen Taylor2003-07-241-1/+2
| | | | | | | | Thu Jul 24 14:35:48 2003 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.c (pango_language_matches): Increment past the ';' for a list with multiple elements. (#117180, John Finlay)
* Use octal escapes rather than hex to avoid the problem over having hexOwen Taylor2002-12-071-19/+19
| | | | | | | | Fri Dec 6 18:58:25 2002 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.lo: Use octal escapes rather than hex to avoid the problem over having hex digits immediately after the hex escape.
* Convert literal UTF-8 to hex escapes. (#92050, Arnaud Carlet)Owen Taylor2002-12-061-19/+19
| | | | | | | | | | | Fri Dec 6 18:30:36 2002 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.c: Convert literal UTF-8 to hex escapes. (#92050, Arnaud Carlet) * pango/testfonts.c: Convert literal ISO-8859-1 to UTF-8 hex escapes. (Don't know how passing ISO-8859-1 to pango_shape() was working...)
* Convert [sf]printf to g_[sf]printf, or, where appropriate g_printerr().Owen Taylor2002-12-061-4/+4
| | | | | | | | | | | | Fri Dec 6 18:07:48 2002 Owen Taylor <otaylor@redhat.com> * modules/indic/devanagari-x.c, pango/modules.c pango/pango-utils.c pango/pangoft2.c pango/querymodules.c: Convert [sf]printf to g_[sf]printf, or, where appropriate g_printerr(). (Based on patch from Matthias Clasen, #99321) * configure.in: Require glib-2.1.3.
* Distribute specifically pango.aliases and pango.modules, not the wholeTor Lillqvist2002-09-211-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-09-21 Tor Lillqvist <tml@iki.fi> * pango-zip.sh.in: Distribute specifically pango.aliases and pango.modules, not the whole etc/pango which might contain editor backup files. * pango/pangowin32-private.h * pango/pangowin32*.c: Rename DEBUGGING to PANGO_WIN32_DEBUGGING. Use plain printf instrad of g_print in the PING macro for debugging output (to avoid UTF-8 requirement). * pango/pangowin32.h: Guard against redefinition of _WIN32_WINNT. * pango/pangowin32-private.h: Remove the FS_VIETNAMESE define, not needed. Rename PangoWin32Font::face to win32face. Add enum PangoWin32CoverageLanguageClass, used to classify PangoLanguages that might have locale-specific coverage of fonts (i.e. CJKV). Change PangoWin32Face::coverage into an array, coverages. Move some TrueType macro and struct defines from pangowin32.c here. Rename them a bit to match the names used in the specs better. Add declarations for new functions (see below). * pango/pangowin32.c (pango_win32_get_hfont): Convert LOGFONT::lfFaceName to UTF-8 before printing. (pango_win32_render): Revert the change from 2002-09-05. Characters not in a font are supposed to show up at this stage as invalid glyphs (usually a box). It's up to the higher layers to filter out TABs and other characters that shouldn't be visible. (pango_win32_get_name_header, pango_win32_get_name_record): New functions, to read the name table header and records from a TrueType font. (font_name_in): New function, checks if a font has a name in one of the spoecial-case languages, or actually locales (zh_TW, zh_CN, ja, ko, vi). Checks the TrueType name table. (pango_win32_font_calc_coverage): Take a PangoLanguage parameter, too. Use it to decide whether to hide the Unified CJKV Ideographs block in case the font is not for the specified locale. If so, the coverage for these characters is set to PANGO_COVERAGE_APPROXIMATE. * pango/pangowin32-fontmap.c: Remove PangoWin32FontMap::faces, unused. Remove dead _WE_WANT_GLOBAL_ALIASES_ code. Rename parent_class to font_map_parent_class to match pangox-fontmap.c. (get_family_name, get_family_name_lowercase): New functions. Search for an English name for a TrueType font, in case the font name in LOGFONT::lfFaceName is non-ASCII. (Can one assume that if it is ASCII, it is the English name? Do some TrueType fonts have different names in French, German, etc, and does the system return these if the locale is set to use French, German, etc?) (pango_win32_insert_font): Don't store LOGFONTs that differ only in charset. What charset we specify when calling CreateFontIndirect() is irrelevant, as we are going to use ExtTextOutW() anyway, i.e. Unicode. Use the English family name from get_family_name_lowercase(), not the one returned in the LOGFONT from font enumeration. Bypass the code that sets up the mapping for monospace, serif and sans, and the recignition of plain "courier" for "courier new". We need a pango.aliases anyhow, so let it handle that. (pango_win32_coverage_language_classify): New function. (pango_win32_font_entry_set_coverage, pango_win32_font_entry_get_coverage): Take also a PangoLanguage parameter, use the corresponding entry in the PangoWin32Face::coverages array. * pango/pango-utils.c (pango_get_lib_subdirectory, pango_get_sysconf_subdirectory): Fix doc comment on Win32 behaviour.
* Fix problem where position wasn't updated properly.Owen Taylor2002-09-191-0/+1
| | | | | | Thu Sep 19 15:12:21 2002 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.c (pango_scan_int): Fix problem where position wasn't updated properly.
* G_WIN32_DLLMAIN_FOR_DLL_NAME not needed on Cygwin, surround with #ifdefTor Lillqvist2002-09-041-1/+3
| | | | | | | 2002-09-04 Tor Lillqvist <tml@iki.fi> * pango/pango-utils.c: G_WIN32_DLLMAIN_FOR_DLL_NAME not needed on Cygwin, surround with #ifdef G_OS_WIN32. (91785, Masahiro Sakai)
* isspace -> g_ascii_isspace (pango_font_description_from_string): isspaceDarin Adler2002-02-101-8/+7
| | | | | | | | | | | | | | | | * 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.
* acconfig.h support for --with-xftconfig-dir= path to system XftConfig fileManish Singh2001-11-241-1/+1
| | | | | | | | | | | | | | | | | | | | 2001-11-24 Manish Singh <yosh@gimp.org> * acconfig.h * configure.in: support for --with-xftconfig-dir= path to system XftConfig file * pango/pango-utils.c * pango/pangox.c: include "config.h", not <config.h> * pango/pangoxft-fontmap.c: this file is pangoxft-fontmap.c, not pangoxft-fontmap.h :) * pango/mini-xft/minixftint.h * pango/mini-xft/minixftinit.c: add code for searching common locations for the XftConfig file. We search MINI_XFTCONFIG_DIR if configure defines it for us (as above), then $sysconfdir, then (only on !_WIN32) /etc/X11 and /usr/X11R6/lib/X11.
* removed the arbitrary limit to 10 fonts. Instead make the command lineHans Breuer2001-11-231-4/+4
| | | | | | | | | | | | | | | | | | | | 2001-11-23 Hans Breuer <hans@breuer.org> * testfonts.c : removed the arbitrary limit to 10 fonts. Instead make the command line params useful again and reduce the default result bitmap size by decreasing the default font size. * pango/pangowin32-fontcache.c (pango_win32_font_cache_load): Don't always turn on anti-aliasing. Respect the users settings from 'Properties of Display/Effects'. * pango/makefile.msc : updated, version 0.22 * pango/pango.def : updated externals * pango/font.c pango/pango-coverage.c pango-utils.c pango/pangowin32.c pango/shape.c : coding style and static correctness
* Check for LEX and YACC. This will be made optional later, with the buildAlexander Larsson2001-11-181-1/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-11-17 Alexander Larsson <alla@lysator.liu.se> * configure.in: Check for LEX and YACC. This will be made optional later, with the build sources checked in to cvs. Generate pango/mini-xft/Makefile * modules/basic/basic-ft2.c: Use the new pangoft2 API. * pango/Makefile.am: Build mini-xft. Add new files. * pango/pango-context.[ch]: Support only one fontmap per context. Use pango_font_map_load_fontset() and PangoFontset instead of internal fontset. * pango/pango-fontmap.[ch]: New virtual function pango_font_map_load_fontset() and default implementation that uses pango_font_map_load_font(). * pango/pango-utils.[ch] (pango_lookup_aliases): Utility function for looking up aliases. This can be used by backend that has no backend specific aliases. * pango/pangoft2-fontcache.c: Removed file. * pango/pangoft2-fontmap.c: * pango/pangoft2-private.h: * pango/pangoft2.c: * pango/pangoft2.h: Major rewrite. Doesn't handle fontsets. Uses mini-xft so that it will always match the PangoXft backend. Simplified the public API. * pango/pangowin32.c: * pango/pangox.c: pango_context_add_font_map -> pango_context_set_font_map * pango/pangoxft-font.c: * pango/pangoxft-fontmap.c: * pango/pangoxft-private.h: New code to handle fontsets. * pango/mini-xft/*: Mini version of libXft from XFree86 in order to have the pangoFT2 and pangXft backends have same config files and generate the same fonts.
* Add pangoxft-private.h.Matthias Clasen2001-11-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | * docs/Makefile.am (IGNORE_HFILES): Add pangoxft-private.h. * pango/pango-utils.c (pango_language_from_string): Fix typo in documentation. * docs/tmpl/text-attributes.sgml: Document PangoColor, PangoLanguage, PangoAttrLanguage, PangoAttrFloat and PangoAttrShape. * docs/tmpl/layout.sgml: Document PangoWrapMode and PangoLayoutIter. * docs/tmpl/tab-stops.sgml: Document PangoTabAlign and PangoTabArray. * docs/tmpl/fonts.sgml: Document PangoFontMask. * pango/fonts.c (pango_font_description_unset_fields): Fix typo in documentation. * docs/tmpl/opentype.sgml: Remove documentation templates of the unimplemented functions pango_ot_ruleset_set_glyph_loader and pango_ot_ruleset_set_alternate_func and the related typedefs PangoOTGlyphLoader and PangoOTAlternateFunc. * docs/tmpl/x-rendering.sgml: Document PangoGetGCFunc and PangoFreeGCFunc typedefs.
* Patch from Darin Adler, with updates, to use g_ascii_* instead ofOwen Taylor2001-11-021-27/+27
| | | | | | | | | | | | | Fri Nov 2 08:50:16 2001 Owen Taylor <otaylor@redhat.com> * pango/{fonts.c,pango-color.c,pango-utils.c, pangoft2-fontmap.c,pangowin32-fontcache.c, pangowin32-fontmap.c, pangox-fontmap.c}: Patch from Darin Adler, with updates, to use g_ascii_* instead of locale-dependent variants (#55833). * pango/fonts.c: Use g_ascii_dtostr, g_ascii_strtod().
* Neat Win32 feature: A prebuilt Pango package can be installed in a randomTor Lillqvist2001-10-311-25/+5
| | | | | | | | | | | | | | | | | 2001-10-31 Tor Lillqvist <tml@iki.fi> * pango/modules.c (process_module_file): Neat Win32 feature: A prebuilt Pango package can be installed in a random location (i.e., not the same used when configuring and building the software). The pango.modules file provided with the package contains paths on the packager's system, not the end-users. We notice this, and replace with the corresponding path in the installation directory on the end-user's machine. * pango/pango-utils.c: Use G_WIN32_DLLMAIN_FOR_DLL_NAME. (pango_get_sysconf_subdirectory,pango_get_lib_subdirectory): No need to call g_path_get_basename on the DLL name, DllMain already does it.
* Typo fixes.Matthias Clasen2001-10-131-16/+101
|
* Add the Win32 GDI Pango backend to autoconfiguration:Tor Lillqvist2001-10-031-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-03 Tor Lillqvist <tml@iki.fi> Add the Win32 GDI Pango backend to autoconfiguration: * configure.in: Call AC_LIBTOOL_WIN32_DLL. Check for native Win32 or Cygwin, set automake conditional PLATFORM_WIN32. Check for native Win32, set OS_WIN32. Refactor the Xrender+Xft+Xft+FreeType.h checks not to use AC_CHECK_LIBs inside eachother, autoconf 2.52e on Cygwin generated bad shell code for that. Check for gdi32 library, set automake conditional HAVE_WIN32. Add the basic-win32 module, add INCLUDED_WIN32_MODULES and INCLUDE_BASIC_WIN32. Write pango/module-defs-win32.c. Generate pangowin32*.pc. * pangowin32.pc.in * pangowin32-uninstalled.pc.in: New files. * Makefile.am: Add pangowin32*.pc.in. * .cvsignore: Add pangowin32*.pc. * modules/basic/Makefile.am: Add the basic-win32 backend. Use -no-undefined on PLATFORM_WIN32. * pango/Makefile.am: Add the Win32 backend. Use -no-undefined on PLATFORM_WIN32. Use the .def files on OS_WIN32. Link libpangoft2 with GLIB_LIBS. * pango/pango-utils.c: (DllMain): New function, on G_OS_WIN32. Used to get the actual DLL name, which is tucked away. (pango_get_sysconf_subdirectory, pango_get_lib_subdirectory): (Win32): Append VERSION to the registry key passed to g_win32_get_package_installation_subdirectory(). Use the real DLL name from above instead of assuming the DLL has a certain name. Other Win32 backend fixes: * pango/pangowin32-fontmap.c: (free_coverages_foreach): Remove, unused. * pango/pangowin32.c: Remove unused variables. * pango/pangowin32.def: Add pango_win32_font_get_glyph_index. * pango/pangowin32.h: Remove pango_win32_font_get_coverage, which is static.
* Fix wrapper version to have boolean result. (#61248, Eric Lemings.)Owen Taylor2001-09-271-3/+6
| | | | | | | | Thu Sep 27 12:08:23 2001 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.c (pango_log2vis_get_embedding_levels): Fix wrapper version to have boolean result. (#61248, Eric Lemings.)
* Up to 0.19.Owen Taylor2001-09-181-33/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Use g_build_filename() where appropriate.Owen Taylor2001-09-121-6/+4
| | | | | | | | Tue Sep 11 11:31:53 2001 Owen Taylor <otaylor@redhat.com> * pango/pangoft2-fontmap.c pango/modules.c pango/pango-utils.c pango/querymodules.c: Use g_build_filename() where appropriate.
* Update to the new g_boxed_type_register_static API.Alex Larsson2001-09-101-3/+1
| | | | | | | | | | | | 2001-09-10 Alex Larsson <alexl@redhat.com> * pango/fonts.c: * pango/glyphstring.c: * pango/pango-attributes.c: * pango/pango-color.c: * pango/pango-tabs.c: * pango/pango-utils.c: Update to the new g_boxed_type_register_static API.
* Make a couple of functions static.Owen Taylor2001-09-021-2/+2
| | | | | | | | | | Sun Sep 2 12:08:15 2001 Owen Taylor <otaylor@redhat.com> * pango/pango-layout.c pango/pango-utils.c: Make a couple of functions static. * pango/mini-fribidi/{fribidi_tables.i,fribidi.patch}: Make data arrays static.
* copy function. (pango_glyph_string_get_type): implement get_type function.James Henstridge2001-07-021-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* Couple of bug fixes for the last change.Owen Taylor2001-06-261-2/+88
| | | | | | | | | | Tue Jun 26 15:11:30 2001 Owen Taylor <otaylor@redhat.com> * pango/pango-context.c (font_set_get_font) pango/pango-context.c (add_engines): Couple of bug fixes for the last change. * configure.in: Abort out when AM_PATH_GLIB fails.
* Add a new PangoLanguage type to represent language tags; these canOwen Taylor2001-06-141-4/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Patch from Soeren SandmannHavoc Pennington2001-02-211-2/+2
| | | | | | | | | | | | | 2001-02-20 Havoc Pennington <hp@pobox.com> Patch from Soeren Sandmann * pango/pangox-fontcache.c (pango_x_font_cache_load): make xlfd arg const * pango/pango-utils.c (pango_get_sysconf_subdirectory): G_CONST_RETURN (pango_get_lib_subdirectory): G_CONST_RETURN
* Use g_win32_get_package_installation_subdirectory(). Use the sameTor Lillqvist2001-02-101-59/+12
| | | | | | | | | | | | | | | | | | | | | | | 2001-02-10 Tor Lillqvist <tml@iki.fi> * pango/pango-utils.c (pango_get_sysconf_subdirectory, pango_get_lib_subdirectory): (Win32): Use g_win32_get_package_installation_subdirectory(). Use the same directory structure as on Unix, etc\pango and lib\pango under the installation "prefix". * config.h.win32 * pango/makefile.mingw.in: Use mini-fribidi instead of full FriBiDi. * pango/pangowin32.c (pango_win32_render_layout_line): Adapt to changed PangoAttrColor. * pango/querymodules.c: Include <io.h> for getcwd() prototype. (query_module): Handle modules with spaces in the path, and backslashes, use g_strescape() (for Windows). * pango/mini-fribidi/makefile.mingw: New file
* Free item->extra_attrs list.32001-01-231-3/+7
| | | | | | | | | | | | | | 2001-01-23 <alla@lysator.liu.se> * pango/pango-item.c (pango_item_free): Free item->extra_attrs list. * pango/pango-layout.c (process_item): Don't leak copy of item. * pango/pango-utils.c (read_config_file): If the config file open fails, don't leak the temp buffers.
* Use g_file_test().Tor Lillqvist2000-11-301-6/+1
| | | | | | | | | | 2000-12-01 Tor Lillqvist <tml@iki.fi> * pango/pango-utils.c (pango_get_sysconf_subdirectory): Use g_file_test(). * examples/viewer-win32.c (main): Disable double buffering on the layout widget only when building with GTK+ 1.3.2 or newer.
* Define PANGO_VERSION.Tor Lillqvist2000-11-301-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Fix low underline code to deal with run_ink == NULL.Owen Taylor2000-11-141-3/+8
| | | | | | | | | | | | | | | | | Tue Nov 14 11:10:24 2000 Owen Taylor <otaylor@redhat.com> * pango/pango-layout.c (pango_layout_run_get_extents): Fix low underline code to deal with run_ink == NULL. * pango/pango-utils.c (pango_read_line): Return number of lines read to allow decent parse errors line numbers. * pango/pangox-fontmap.c (pango_x_font_map_read_alias_file): Fix line number count. * examples/pangox.aliases: Include extra international fonts for all styles, not just roman, reindent so it looks halfway legible.
* Include a stripped-down version of fribidi to avoid the extra dependency.Owen Taylor2000-11-121-0/+31
| | | | | | | | | | | | | | | | | | | | Sun Nov 12 16:07:06 2000 Owen Taylor <otaylor@redhat.com> * configure.in pango/pango-utils.[ch] pango/Makefile.am pango/mini-fribidi/*: Include a stripped-down version of fribidi to avoid the extra dependency. No fribidi symbols are exported so conflicts with the real fribidi should not happen. Library can optionally be compiled with the real libfribidi. * pango/pango-utils.[ch]: Wrappers for fribidi_ functions when compiling with fribiid. * modules/basic/basic-ft2.c modules/basic/basic-win32.c modules/basic/basic.c modules/thai/thai.c pango/Makefile.am pango/itemize.c pango/pango-context.c pango/pangoft2.c pango/pangowin32.c pango/pangox.c: Use pango_ versions of fribidi functions.
* Add a new attribute for scaling a font; also required addingHavoc Pennington2000-11-011-47/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Added docs for the publically exported functions in this module, evenOwen Taylor2000-10-301-1/+1
| | | | | | | | | | | | | Tue Sep 12 10:21:08 2000 Owen Taylor <otaylor@redhat.com> * pango/modules.c (pango_map_get_entry): Added docs for the publically exported functions in this module, even though they are really only semi-public (for people implementing new types of #PangoFont), not public * pango/pango-utils.c (pango_read_line): Minor bug tweak.
* Add parameter telling whether to print warning or not if string isn'tTor Lillqvist2000-08-201-29/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-08-20 Tor Lillqvist <tml@iki.fi> * pango/pango-utils.c (pango_parse_*): Add parameter telling whether to print warning or not if string isn't recognised. Use g_strncasecmp(). * pango/pango-utils.h: Change prototype accordingly. * pango/pangox-fontmap.c * pango/pangowin32-fontmap.c: Change calls correspondingly. * pango/pangowin32.h: * pango/pangowin32.c: Cosmetic changes, dead code removal. * pango/pangoft2.h * pango/pangoft2-private.h * pango/pangoft2.c * pango/pangoft2-fontmap.c * pango/pangoft2-fontcache.c: New files implementing a FreeType2 backend. Used only on Win32 so far, but doesn't contain Win32-specific code per se, so if somebody wants to try it out on X11, too, be my guest. It works, more or less, but there are some details still to sort out. Performance needs to be improved. Debugging printouts still present. Font path currently hardcoded to C:\windows\fonts, heh. Owen says he doesn't think it's a good idea to use ths on Win32, but I'll try anyway. If it turns out using the native Win32 GDI backend is better after all, oh well. * pango/makefile.mingw: Delete. Move contents to makefile.mingw.in. * pango/makefile.mingw.in: New file. Add rules for FreeType2 backend. Add FreeType2 CFLAGS and LIBS. * pango/Makefile.am: Generate makefile.mingw. (EXTRA_DIST): Add FreeType2 backend sources, and makefile.mingw{,.in} * modules/basic/basic-win32.c: Couple of cosmetic changes. * modules/basic/Makefile.am: Generate makefile.mingw. (EXTRA_DIST): Add basic-ft2.c, and makefile.mingw{,.in} * modules/basic/makefile.mingw: Delete. Move contents to makefile.mingw.in. * modules/basic/makefile.mingw.in: New file. Add rule for basic-ft2. Add FreeType2 CFLAGS and LIBS. * examples/viewer-win32.c (read_file): Fix error messages. (draw): Get HDC from GDK once for all paragraphs. * examples/viewer-ft2.c: New file. The FT_Bitmap (256-level bitmap) produced by the FreeType2 backend is copied to the GtkLayout window using gdk_draw_gray_image from GdkRGB (!). Yes, this is kinda circular dependency between Pango and GTK+. * examples/makefile.mingw: Delete. Move contents to makefile.mingw.in. * examples/makefile.mingw.in: New file. Add rules for viewer-ft2. Add FreeType2 CFLAGS and LIBS. * examples/Makefile.am: Generate makefile.mingw. (EXTRA_DIST): Add viewer-win32.c and viewer-ft2.c, and makefile.mingw{,.in}
* include <stdlib.h>Owen Taylor2000-07-221-0/+1
| | | | | | | | Sat Jul 22 10:52:06 2000 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.c: include <stdlib.h> * configure.in: s/FRIBID_CONFIG/FRIBIDI_CONFIG/.
* Don't try to use the ! command, not available in all systems. Move the !Tor Lillqvist2000-07-191-0/+1
| | | | | | | | | | | | | | | | | | | 2000-07-19 Tor Lillqvist <tml@iki.fi> * configure.in: Don't try to use the ! command, not available in all systems. Move the ! inside the test instead. * pango-config.in: Change order of --cflags output, so that we can build with both GLib 1.2 and 1.3 installed. * modules/devanagari/dev-ligatures.h: No C++ comments, thanks. * pango/break.c: Fix gccism, non-constant initailiser. * pango/pango-fontmap.c: Don't return value from void functions. * pango/pango-utils.c: Must have at least empty statement after a label.
* pango/pango-utils.h pango/pango-utils.c pango/pangox-fontmap.c Move theTor Lillqvist2000-07-161-0/+231
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-07-16 Tor Lillqvist <tml@iki.fi> * pango/pango-utils.h * pango/pango-utils.c * pango/pangox-fontmap.c * pango/pangowin32-fontmap.c: Move the get_{style,variant, weight,stretch} functions to pango-utils.c, and rename them to pango_parse_*. Would otherwise be duplicated in pangox and angowin32. * pango/pango.def: Export them. * pango/pango-font.h: Add PANGO_WEIGHT_ULTRALIGHT, PANGO_WEIGHT_LIGHT, PANGO_WEIGHT_EXTRABOLD and PANGO_WEIGHT_HEAVY values to PangoWeight. * pango/pango-utils.c: Recognize the new weight strings. * pango/pangowin32.c (pango_win32_list_subfonts): Don't g_free the subfont_list from the subfonts_by_subrange hash table... * pango/pangowin32-fontmap.c (pango_win32_font_map_read_alias_file): Also set the other properties in the LOGFONT, not only the face name. (pango_win32_insert_font): Insert a pointer to a freshly allocated LOGFONT in the hash table, not the one passed in as a parameter, which could be (and in fact, *is*) a pointer to an auto variable. Quantize the description weight values to exact PANGO_WEIGHT_* values. (pango_win32_get_unknown_glyph): Use subfont 1. * examples/viewer-win32.c: (split_paragraphs): Don't include the newline. (draw): Correct 1st parameter to gdk_win32_hdc_{get,release}.
* pango/pangowin32.h pango/pangowin32-private.h pango/pangowin32-fontcache.cTor Lillqvist2000-07-151-8/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-07-15 Tor Lillqvist <tml@iki.fi> * pango/pangowin32.h * pango/pangowin32-private.h * pango/pangowin32-fontcache.c * pango/pangowin32-fontmap.c * modules/basic/basic-win32.c * examples/viewer-win32.c * examples/pangowin32.aliases: New files. Start of a Win32 implementation. Does not work yet. * configure.in: Chek for dirent.h and unistd.h. * pango/pango-utils.h * pango/pango-utils.c (pango_get_sysconf_subdirectory, pango_get_lib_subdirectory): New functions, for better portability, to enable installation-time choice of directory (on Windows) instead of compile-time. Use these instead of SYSCONFDIR "/pango" and LIBDIR "/pango". (pango_split_file_list): Fix comment, the function splits on searchpath separators, not commas. Use G_SEARCHPATH_SEPARATOR_S for portability. Don't try to expand '~' as home directory on Windows. (read_config): Use pango_get_sysconf_subdirectory(). * pango/modules.c (read_modules): Use pango_get_sysconf_subdirectory(). Don't crash if a module file cannot be opened. * pango/querymodules.c: Include config.h Conditionalize inclusion of dirent.h and unistd.h. Use platform-specific shared library extension. Use pango_get_lib_subdirectory().
* Fix bug in home directory substitution.Owen Taylor2000-07-111-1/+1
| | | | | | | Mon Jul 10 10:42:42 2000 Owen Taylor <otaylor@redhat.com> * pango/pango-utils.c (pango_split_file_list): Fix bug in home directory substitution.
* A bunch of simple functions for reading from files, manipulating stringsOwen Taylor2000-07-011-0/+575
* pango/pango-utils.[ch] Makefile.am: A bunch of simple functions for reading from files, manipulating strings as necessary for config files. Also, a simple gnome-config/win.ini style config file reader.