diff options
Diffstat (limited to 'xc/lib/Xft/xftinit.c')
-rw-r--r-- | xc/lib/Xft/xftinit.c | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/xc/lib/Xft/xftinit.c b/xc/lib/Xft/xftinit.c new file mode 100644 index 000000000..b53d12000 --- /dev/null +++ b/xc/lib/Xft/xftinit.c @@ -0,0 +1,80 @@ +/* + * $XFree86: xc/lib/Xft/xftinit.c,v 1.1 2000/11/29 08:39:23 keithp Exp $ + * + * Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of Keith Packard not be used in + * advertising or publicity pertaining to distribution of the software without + * specific, written prior permission. Keith Packard makes no + * representations about the suitability of this software for any purpose. It + * is provided "as is" without express or implied warranty. + * + * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +#include <stdlib.h> +#include "xftint.h" + +#ifdef FREETYPE2 +FT_Library _XftFTlibrary; +#endif +XftFontSet *_XftFontSet; +Bool _XftConfigInitialized; + +/* #define XFT_DEBUG_FONTSET */ + +Bool +XftInitFtLibrary (void) +{ +#ifdef FREETYPE2 + char **d; + + if (_XftFTlibrary) + return True; + if (FT_Init_FreeType (&_XftFTlibrary)) + return False; + _XftFontSet = XftFontSetCreate (); + if (!_XftFontSet) + return False; + for (d = XftConfigDirs; d && *d; d++) + { +#ifdef XFT_DEBUG_FONTSET + printf ("scan dir %s\n", *d); +#endif + XftDirScan (_XftFontSet, *d); + } +#ifdef XFT_DEBUG_FONTSET + XftPrintFontSet (_XftFontSet); +#endif +#endif + return True; +} + +Bool +XftInit (char *config) +{ + if (_XftConfigInitialized) + return True; + _XftConfigInitialized = True; + if (!config) + { + config = getenv ("XFT_CONFIG"); + if (!config) + config = XFT_DEFAULT_PATH; + } + if (XftConfigLexFile (config)) + { + XftConfigparse (); + } + return True; +} |