summaryrefslogtreecommitdiff
path: root/pango/pangoxft.h
Commit message (Collapse)AuthorAgeFilesLines
* docs: Convert gtk-doc syntax leftoversdocs-cleanupMatthias Clasen2021-05-191-4/+4
| | | | | Remove leftovers like #Type, reduce indentations to avoid markdown block quotes, etc.
* ft2, xft: Write out the full type of the SubstituteFuncwip/issue510Simon McVittie2020-11-051-1/+2
| | | | | | | | | | | | | If the SubstituteFunc used for the now-deprecated set_default_substitute functions is an alias for PangoFcSubstituteFunc, GObject-Introspection doesn't realise it's a function pointer, and doesn't flag the user data and destroy-notify arguments as such. This results in bindings like PyGI thinking that they are entirely separate arguments, which is an introspection API break (and probably not something that can practically be called any more). Signed-off-by: Simon McVittie <smcv@debian.org> Resolves: https://gitlab.gnome.org/GNOME/pango/-/issues/510
* Adapt deprecationsMatthias Clasen2020-09-181-2/+2
| | | | | Move things around to reflect the fact that we are now in 1.47, and use our deprecation macros.
* add pango_fc_font_map_set_default_substituteCaleb Hearon2020-06-131-0/+2
| | | | | | | | | | | | | | | | | | | added: pango_fc_font_map_set_default_substitute pango_fc_font_map_default_substitute_changed deprecated: pango_ft2_font_map_set_default_substitute pango_ft2_font_map_changed pango_xft_font_map_set_default_substitute pango_xft_font_map_changed Now PangoCairoFcFontMap will call what is passed to pango_fc_font_map_set_default_substitute when it is time. The deprecated functions make calls to the parent (FC) class now. The user-supplied callbacks are executed in the exact same places as before.
* single function type for FC substitute callbackCaleb Hearon2020-06-131-2/+2
|
* Use the appropriate namespace for Pango sub-librariesEmmanuele Bassi2020-06-101-5/+26
| | | | | | | | | | | | | | | | | | | | The Pango sub-libraries have symbols in the pango_<something> namespace, but the identifiers are in the Pango one, which makes consumers of the introspection data either get something like: PangoCairo.show_layout() with a bunch of warnings caused by the type macros not following the appropriate pattern, or: PangoCairo.cairo_show_layout() which breaks introspection ABI. We can use the __GI_SCANNER__ pre-processor symbol to trick the scanner into generating the appropriate representation of the API, while keeping the C consumers happy with the existing—albeit wildly inconsistent with best practices for GObject-based libraries—symbols.
* Header cleanupMatthias Clasen2019-07-041-5/+4
| | | | | | | Abolish the PANGO_ENABLE_BACKEND and PANGO_ENABLE_ENGINE defines. All backend-only apis are moved into private headers, all apis that were engine-only are marked as deprecated, since engines are.
* Decorate the symbols in the headers with version macrosChun-wei Fan2016-06-291-5/+14
| | | | | | | 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-0/+26
| | | | Patch from Rafał Mużyło.
* Add deprecation attributes to deprecated functionsMatthias Clasen2011-10-131-0/+5
| | | | | | | | This is using the newly introduce G_DEPRECATED macros from GLib. Traditional deprecation guards are still in place. https://bugzilla.gnome.org/show_bug.cgi?id=661612
* Make the following API public:Behdad Esfahbod2008-08-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-08-05 Behdad Esfahbod <behdad@gnome.org> * pango/pango-context.c: * pango/pango-context.h: Make the following API public: pango_context_new() pango_context_set_font_map() * pango/pango-fontmap.c (pango_font_map_create_context): * pango/pango-fontmap.h: New public API: pango_font_map_create_context() * pango/pangocairo-context.c (pango_cairo_create_context): * pango/pangocairo-font.c (_pango_cairo_font_get_metrics), (_pango_cairo_font_private_get_hex_box_info): * pango/pangocairo-fontmap.c (pango_cairo_font_map_create_context): * pango/pangocairo.h: Deprecate pango_cairo_font_map_create_context(). * pango/pangofc-font.c (pango_fc_font_get_metrics): * pango/pangofc-fontmap.c (pango_fc_font_map_create_context): * pango/pangofc-fontmap.h: Deprecate pango_fc_font_map_create_context(). * pango/pangoft2-fontmap.c (pango_ft2_font_map_create_context), (pango_ft2_get_context): * pango/pangoft2.h: Deprecate pango_ft2_font_map_create_context(). * pango/pangowin32.c (pango_win32_get_context), (pango_win32_font_get_metrics): * pango/pangowin32.h: Deprecate pango_win32_get_context(). * pango/pangoxft-font.c (_pango_xft_font_get_mini_font): * pango/pangoxft-fontmap.c (pango_xft_get_context): * pango/pangoxft.h: Deprecate pango_xft_get_context(). * pango/pangox-fontmap.c (pango_x_font_map_for_display): * pango/pangox.c (get_context_info), (pango_x_get_context), (pango_x_context_set_funcs), (pango_x_render_layout_line): Deprecate pango_x_get_context(), again. * docs/pango-sections.txt: * docs/tmpl/fonts.sgml: * pango-view/viewer-pangocairo.c (pangocairo_view_get_context): * pango-view/viewer-pangoft2.c (pangoft2_view_get_context): * pango-view/viewer-pangox.c (pangox_view_get_context): * pango-view/viewer-pangoxft.c (pangoxft_view_get_context): * pango/check.defs: * pango/pango.def: Update. svn path=/trunk/; revision=2675
* Add G_GNUC_CONST and G_GNUC_PURE annotations.Behdad Esfahbod2007-06-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-06-11 Behdad Esfahbod <behdad@gnome.org> * pango/pango-attributes.h: * pango/pango-font.h: * pango/pango-glyph.h: * pango/pango-gravity.h: * pango/pango-language.h: * pango/pango-layout.h: * pango/pango-matrix.h: * pango/pango-ot-private.h: * pango/pango-ot.h: * pango/pango-renderer.h: * pango/pango-script.h: * pango/pango-tabs.h: * pango/pango-utils.h: * pango/pangoatsui-private.h: * pango/pangocairo-atsui.h: * pango/pangocairo-atsuifont.h: * pango/pangocairo-fc.h: * pango/pangocairo-private.h: * pango/pangocairo-win32.h: * pango/pangocairo.h: * pango/pangofc-decoder.h: * pango/pangofc-font.h: * pango/pangofc-fontmap.h: * pango/pangoft2-private.h: * pango/pangoft2.h: * pango/pangowin32-private.h: * pango/pangox-private.h: * pango/pangoxft-render.h: * pango/pangoxft.h: Add G_GNUC_CONST and G_GNUC_PURE annotations. svn path=/trunk/; revision=2345
* Part of Bug 325714 – Pango should respect $LANGUAGEBehdad Esfahbod2007-05-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-05-14 Behdad Esfahbod <behdad@gnome.org> Part of Bug 325714 – Pango should respect $LANGUAGE * pango/pango-ot.h: * pango/pango-ot-ruleset.c (pango_ot_ruleset_get_for), (pango_ot_ruleset_description_hash), (pango_ot_ruleset_description_equal), (pango_ot_ruleset_description_copy), (pango_ot_ruleset_description_free): Add new engine API: PangoOTRulesetDescription pango_ot_ruleset_get_for() pango_ot_ruleset_description_hash() pango_ot_ruleset_description_equal() pango_ot_ruleset_description_copy() pango_ot_ruleset_description_free() The main addition is pango_ot_ruleset_get_for() that takes a ruleset description, ie. script/language and list of GSUB/GPOS features to apply, and returns a ruleset. It manages all the work to cache rulesets, so modules don't have to do that anymore. Given that modules do not deal with just one ruleset anymore (because we want to respect language, and allow user-selected features), this makes their life way easier. * docs/pango-sections.txt: * docs/tmpl/opentype.sgml: Update. svn path=/trunk/; revision=2290
* *.c, *.h: Replace preceding sequences of 8 spaces with tabs.Behdad Esfahbod2007-01-161-1/+1
| | | | | | | | | 2007-01-16 Behdad Esfahbod <behdad@gnome.org> *.c, *.h: Replace preceding sequences of 8 spaces with tabs. svn path=/trunk/; revision=2165
* Up version to 1.7.0.Owen Taylor2004-09-241-23/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fri Sep 24 12:59:22 2004 Owen Taylor <otaylor@redhat.com> * configure.in: Up version to 1.7.0. * pango/pango-renderer.[ch] pango/pango.h pango/Makefile.am: Add PangoRenderer, a base class that is subclassed to produce rendering drivers for different backends and purposes. * pango/pangoft2-private.h pango/pangoft2-render.c pango/pangoft2.c: Move rendering into pangoft2-render.c, use PangoRenderer. * pango/pangoft2-fontmap.c pango/pangoft2-private.h: Add _pango_ft2_font_map_get_renderer() to retrieve a singleton fontmap for the fontmap. * pango/pangoxft-render.[ch] pango/pangoxft.c pango/Makefile.am: Make Xft rendering use PangoRenderer, add publically visible, subclassable PangoXftRenderer. * pango/pangoxft-fontmap.c pango/pangoxft-private.h: Add _pango_xft_font_map_get_renderer() to retrieve a singleton fontmap for the fontmap. * examples/xftview.c examples/Makefile.am: Add a test program using the Xft backend. * docs/*: Update minimally for PangoRenderer.
* Make pangoxft depend on pangoft2.Owen Taylor2003-08-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Sat Aug 2 14:33:28 2003 Owen Taylor <otaylor@redhat.com> * pango/Makefile.am (libpangoxft_1_0_la_LIBADD): Make pangoxft depend on pangoft2. * pango/pangofc-fontmap.[ch]: Make pangofc-fontmap.cI into a real base class. * pango/pangofc-font.[ch]: Move some of the pangoxft/ pangoft2 implementation here. * pango/pangoft2.c pango/pangoft2-fontmap.c pango/pangoft2-private.h pango/pangoxft-font.c pango/pangoxft2-fontmap.c pango/pangoxft-private.h: Adapt to the new scheme * modules/*/Makefile.am Modules/*/*/*-fc.c: Don't build separate FT2 and Xft shapers, just build one Fc shaper. * docs/pango-sections.txt docs/pango-docs.sgml docs/tmpl/pangofc-font{,map}.sgml: Basic docs for the new stuff. * configure.in: Up pango_module_version to 1.4.0.
* Switch over the way that module entry points work, taking advantage of theOwen Taylor2003-04-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Mon Apr 14 06:02:34 2003 Owen Taylor <otaylor@redhat.com> * modules/thai/{thai-fc.c,thai-shaper.c,thai-x.c}: * modules/*/*-{xft,x,win32.c} pango/pango-engine.h modules/*/Makefile.am: Switch over the way that module entry points work, taking advantage of the new automake capability for per-target CFLAGS for shared sources. * pango/pangofc-font.[ch] pango/pangoxft-font.c pango/pangoft2.c: Add a base class for PangoXft and PangoFT2 font classes so code can be shared between FT2 and Xft backends. * configure.in modules/*/Makefile.am modules/{arabic,basic,hangul,hebrew,indic,thai}: Move *-xft.c to *-fc.c and share between Xft and FT2 backends; adds FT2 backend capabilities for hangul/indic/thai. * pango/pangoxft.h pango/pangoft2.h: Deprecate APIs that moved into PangoFcFont * modules/basic/basic-fc.c (set_glyph): Add kerning handling from FT2 backend.
* Export.Owen Taylor2002-08-061-0/+2
| | | | | | | | | | | | | | Mon Aug 5 21:54:21 2002 Owen Taylor <otaylor@redhat.com> * pango/pangoxft-fontmap.c (pango_xft_get_font_map): Export. * pango/pango-context.[ch]: Add pango_context_get_fontmap(), allow fontmap = NULL for pango_context_set_fontmap(). * pango/pangoxft-font.c pango/pangoxft-fontmap.c (pango_xft_font_get_metrics): More work on allowing displays to be shut down, while leaving basically working fonts behind.
* New function allowing us to shut down a display.Owen Taylor2002-08-021-2/+5
| | | | | | | | Fri Aug 2 12:12:34 2002 Owen Taylor <otaylor@redhat.com> * pango/pangoxft.h pango/pangoxft-fontmap.c (pango_xft_shutdown_display): New function allowing us to shut down a display.
* Patch from Theppitak Karoonboonyanan that factors out common code fromOwen Taylor2002-07-261-1/+4
| | | | | | | | | | | | | | | | | | | | | Fri Jul 26 18:48:49 2002 Owen Taylor <otaylor@redhat.com> * configure.in modules/thai/Makefile.am modules/thai/thai-shaper.[ch] modules/thai/thai-xft.c modules/thai/thai-x.c: Patch from Theppitak Karoonboonyanan that factors out common code from thai-x.c and adds a new Xft shaper for Thai. (#78346) * pango/pangoxft.h pango/pangoxft-font.c: Add pango_xft_font_has_char() to optimize for cases where we don't actually need to load the font. * pango/pangoxft.h: Document pango_xft_font_get_glyph(). * modules/basic/basic-xft.c (basic_engine_shape): Clean up an unused variable warning.
* New function to allow tweaking of FcPattern default substitution (forOwen Taylor2002-07-031-0/+11
| | | | | | | | | | | | | | | | | Mon Jul 1 19:45:10 2002 Owen Taylor <otaylor@redhat.com> * pango/pangoxft-fontmap.c (pango_xft_set_default_substitute): New function to allow tweaking of FcPattern default substitution (for XSETTINGS support.) * pango/pangoft2-fontmap.c pango/pangoft2.[ch] pango/pangoft2-private.h: Rationalize DPI and context creation by adding: pango_ft2_font_map_new() pango_ft2_font_map_set_resolution() pango_ft2_font_map_set_default_substitute() pango_ft2_font_map_create_context()
* on Jun 3 18:56:09 2002 Owen Taylor <otaylor@redhat.com>Owen Taylor2002-06-041-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Xft2 and fontconfig conversion, based largely on a patch from Keith Packard. * configure.in acconfig.h: Add checks for fontconfig, switch Xft checks to switch for Xft2 using pkg-config. * pangoxft.pc.in pangoxft.pc.in modules/{arabic,basic,hebrew,indic,tamil}/Makefile.am pango/Makefile.am: Reflect new Xft/fontconfig dependencies. * pango/pangoxft-private.h pango/pangoxft-fontmap.c modules/arabic/arabic-xft.c modules/indic/indic-xft.c: Switch over to using Xft2 and fontconfig. * pango/pangoft2.c pango/pangoft2-fontmap.c pango/pangoft2-private.h pango/pango/Makefile.am: Remove usage of mini-xft in favor of fontconfig. * pango/pango-ot.h pango/opentype/pango-ot-info.c pango/pangoxft.h modules/arabic/arabic-{xft,ft2}.c modules/indic/indic-xft.c: Attach OpenType information directly to the FT_Face structure using FT_Generic. * modules/tamil/Makefile.am modules/tamil/tamil-xft.c configure.in: Remove this module, no longer needed. * pango/pangoxft-font.c (pango_xft_real_render): Coalesce calls to Xft rendering functions.
* Add a function pango_xft_picture_render() to render onto an Xft pictureOwen Taylor2001-11-051-8/+15
| | | | | | | | Mon Nov 5 12:23:07 2001 Owen Taylor <otaylor@redhat.com> * pango/pangoxft.h pango/pangoxft-font.c: Add a function pango_xft_picture_render() to render onto an Xft picture directly linstead of using the XftDraw wrapper object.
* Up to 0.19.Owen Taylor2001-09-181-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Add opentype/.Owen Taylor2000-12-211-1/+1
| | | | | | | | | | | | | | | | Wed Dec 20 19:53:09 2000 Owen Taylor <otaylor@redhat.com> * docs/Makefile.am (IGNORE_HFILES): Add opentype/. * modules/{basic/basic,arabic/arabic}-xft.c: Include pango-engine.h. * pango/pangoxft.h: Don't include pango.h to avoid getting pango-enum-types.h. * pango/Makefile.am (pangoinclude_HEADERS): Move XFT_HFILES out of pango_headers, since mkenums.pl shouldn't be run on it.
* Since Xft may only be available statically without shlib deps, check forOwen Taylor2000-12-201-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Tue Dec 19 22:47:16 2000 Owen Taylor <otaylor@redhat.com> * configure.in pango-config.in pangoxft.pc.in modules/basic/Makefile.am: Since Xft may only be available statically without shlib deps, check for FreeType libs explicitly and include them when linking, otherwise things won't work. Also, define FREETYPE_CFLAGS from freetype-config --cflags. * modules/basic/basic-xft.c pango/pangoxft-font{,map}.c: Fool Xft into not converting glyph indices by loading the face unencoded then calling FT_Set_Charmap ourselves. * pango/Makefile.am pango/pango-ot.h pango/opentype/* :Add start of opentype handling - most of the actually meat of the code here is the OpenType layout code from FreeType 1 ported to freetype2 and adapted slighlty for our purposes. Also, includes a incomplete OpenType-table-dumping code useful for figuring out what is going on. * pango/pangoxft.h pango/pangoxft-font.h: Add calls for getting FT_Face and PangoOTInfo from PangoXftFont. * modules/arabic/{Makefile.am,arabic-ot.[ch],arabic-xft.c}: Initial support for rendering Arabic with OpenType fonts.
* Add PANGO_XFT_IS_FONT to the public header.Owen Taylor2000-12-151-0/+5
| | | | | | | Thu Dec 14 20:34:18 2000 Owen Taylor <otaylor@redhat.com> * pango/pangoxft.h pango/pangoxft-font.c: (PANGO_TYPE_XFT_FONT): Add PANGO_XFT_IS_FONT to the public header.
* Fix macro breakage.Owen Taylor2000-12-151-0/+61
Thu Dec 14 19:00:46 2000 Owen Taylor <otaylor@redhat.com> * modules/indic/pango-indic-script.h: Fix macro breakage. * modules/basic/tables-big.i: Remove extra copy of basic_ranges. * modules/thai/thai.c: Fix various warnings. * configure.in Makefile.am pangoxft.pc.in pango-config.in modules/basic/Makefile.am modules/basic/basic-xft.c pango/Makefile.am pango/pangoxft-font.[ch] pango/pangoxft-fontmap.c pango/pangoxft.h pango/pangoxft-private.h: Initial support for rendering via Xft and the Xrender extension.