diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2017-02-09 14:05:57 +0100 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2017-04-10 16:09:20 +0200 |
commit | f4c80a78ce0e5648334fc43e5c93a068ed3ec5be (patch) | |
tree | 109fac35d5025730fc3bbce7b135118b233878e5 /nx-X11/programs/Xserver/include/dixfont.h | |
parent | f743f9f743362c891f049a514cdcf3d39546194b (diff) | |
download | nx-libs-f4c80a78ce0e5648334fc43e5c93a068ed3ec5be.tar.gz nx-libs-f4c80a78ce0e5648334fc43e5c93a068ed3ec5be.tar.bz2 nx-libs-f4c80a78ce0e5648334fc43e5c93a068ed3ec5be.zip |
Xserver: Support building against libXfont2 (v2) API and old libXfont(1) API alike.
Fixes ArcticaProject/nx-libs#296.
Inspired by the following X.org commit. Other than X.org, we will continue
support for building nx-libs against libXfont1 for a while.
commit 05a793f5b3c40747d5a92a076def7f4fb673c7e7
Author: Keith Packard <keithp@keithp.com>
Date: Tue Sep 1 18:50:55 2015 -0700
dix: Switch to the libXfont2 API (v2)
This new libXfont API eliminates exposing internal X server symbols to
the font library, replacing those with a struct full of the entire API
needed to use that library.
v2: Use libXfont2 instead of libXfont_2
Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Diffstat (limited to 'nx-X11/programs/Xserver/include/dixfont.h')
-rw-r--r-- | nx-X11/programs/Xserver/include/dixfont.h | 36 |
1 files changed, 28 insertions, 8 deletions
diff --git a/nx-X11/programs/Xserver/include/dixfont.h b/nx-X11/programs/Xserver/include/dixfont.h index 004acefbf..21d917fe5 100644 --- a/nx-X11/programs/Xserver/include/dixfont.h +++ b/nx-X11/programs/Xserver/include/dixfont.h @@ -29,11 +29,21 @@ SOFTWARE. #include "closure.h" #include <X11/fonts/fontstruct.h> +#ifdef HAS_XFONT2 +# include <X11/fonts/libxfont2.h> +#else +# include <X11/fonts/fontutil.h> +#endif /* HAS XFONT2 */ + #define NullDIXFontProp ((DIXFontPropPtr)0) typedef struct _DIXFontProp *DIXFontPropPtr; +#ifdef HAS_XFONT2 +xfont2_fpe_funcs_rec const **fpe_functions; +#else extern FPEFunctions *fpe_functions; +#endif /* HAS_XFONT2 */ extern int FontToXError(int /*err*/); @@ -124,14 +134,25 @@ extern void InitFonts(void); extern void FreeFonts(void); +#ifdef HAS_XFONT2 +extern void GetGlyphs(FontPtr /*font */ , + unsigned long /*count */ , + unsigned char * /*chars */ , + FontEncoding /*fontEncoding */ , + unsigned long * /*glyphcount */ , + CharInfoPtr * /*glyphs */ ); +#else extern FontPtr find_old_font(XID /*id*/); -extern void GetGlyphs(FontPtr /*font*/, - unsigned long /*count*/, - unsigned char * /*chars*/, - FontEncoding /*fontEncoding*/, - unsigned long * /*glyphcount*/, - CharInfoPtr * /*glyphs*/); +#define GetGlyphs dixGetGlyphs +extern void dixGetGlyphs(FontPtr /*font*/, + unsigned long /*count*/, + unsigned char * /*chars*/, + FontEncoding /*fontEncoding*/, + unsigned long * /*glyphcount*/, + CharInfoPtr * /*glyphs*/); + +extern void register_fpe_functions(void); extern void QueryGlyphExtents(FontPtr /*pFont*/, CharInfoPtr * /*charinfo*/, @@ -142,6 +163,7 @@ extern Bool QueryTextExtents(FontPtr /*pFont*/, unsigned long /*count*/, unsigned char * /*chars*/, ExtentInfoPtr /*info*/); +#endif /* HAS_XFONT2 */ extern Bool ParseGlyphCachingMode(char * /*str*/); @@ -149,6 +171,4 @@ extern void InitGlyphCaching(void); extern void SetGlyphCachingMode(int /*newmode*/); -extern void register_fpe_functions(void); - #endif /* DIXFONT_H */ |