61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync/***********************************************************
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncCopyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync All Rights Reserved
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncPermission to use, copy, modify, and distribute this software and its
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncdocumentation for any purpose and without fee is hereby granted,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncprovided that the above copyright notice appear in all copies and that
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncboth that copyright notice and this permission notice appear in
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncsupporting documentation, and that the name of Digital not be
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncused in advertising or publicity pertaining to distribution of the
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncsoftware without specific, written prior permission.
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncDIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncDIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncSOFTWARE.
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync******************************************************************/
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#ifndef DIXFONT_H
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define DIXFONT_H 1
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include "dix.h"
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include <X11/fonts/font.h>
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include "closure.h"
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include <X11/fonts/fontstruct.h>
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include <X11/fonts/fontproto.h>
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define NullDIXFontProp ((DIXFontPropPtr)0)
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsynctypedef struct _DIXFontProp *DIXFontPropPtr;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool SetDefaultFont(const char * /*defaultfontname */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void QueueFontWakeup(FontPathElementPtr /*fpe */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void RemoveFontWakeup(FontPathElementPtr /*fpe */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void FontWakeup(void */*data */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*count */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync void */*LastSelectMask */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int OpenFont(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync XID /*fid */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync Mask /*flags */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned /*lenfname */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync const char * /*pfontname */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int CloseFont(void */*pfont */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync XID /*fid */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsynctypedef struct _xQueryFontReply *xQueryFontReplyPtr;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void QueryFont(FontPtr /*pFont */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync xQueryFontReplyPtr /*pReply */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*nProtoCCIStructs */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int ListFonts(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned char * /*pattern */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned int /*length */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned int /*max_names */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync doListFontsWithInfo(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync LFWIclosurePtr /*c */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int doPolyText(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync PTclosurePtr /*c */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int PolyText(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync DrawablePtr /*pDraw */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync GCPtr /*pGC */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned char * /*pElt */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned char * /*endReq */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*xorg */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*yorg */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*reqType */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync XID /*did */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int doImageText(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync ITclosurePtr /*c */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int ImageText(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync DrawablePtr /*pDraw */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync GCPtr /*pGC */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*nChars */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned char * /*data */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*xorg */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*yorg */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*reqType */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync XID /*did */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int SetFontPath(ClientPtr /*client */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int /*npaths */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned char * /*paths */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int SetDefaultFontPath(const char * /*path */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int GetFontPath(ClientPtr client,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int *count,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int *length, unsigned char **result);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void DeleteClientFontStuff(ClientPtr /*client */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync/* Quartz support on Mac OS X pulls in the QuickDraw
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync framework whose InitFonts function conflicts here. */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#ifdef __APPLE__
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define InitFonts Darwin_X_InitFonts
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#endif
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void InitFonts(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void FreeFonts(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT FontPtr find_old_font(XID /*id */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define GetGlyphs dixGetGlyphs
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void dixGetGlyphs(FontPtr /*font */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned long /*count */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned char * /*chars */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync FontEncoding /*fontEncoding */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned long * /*glyphcount */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync CharInfoPtr * /*glyphs */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void QueryGlyphExtents(FontPtr /*pFont */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync CharInfoPtr * /*charinfo */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned long /*count */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync ExtentInfoPtr /*info */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool QueryTextExtents(FontPtr /*pFont */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned long /*count */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync unsigned char * /*chars */ ,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync ExtentInfoPtr /*info */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool ParseGlyphCachingMode(char * /*str */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void InitGlyphCaching(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void SetGlyphCachingMode(int /*newmode */ );
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void register_fpe_functions(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#endif /* DIXFONT_H */