#ifndef DIXFONT_H
#define DIXFONT_H 1
#include "dix.h"
#include <X11/fonts/font.h>
#include "closure.h"
#include <X11/fonts/fontstruct.h>
#define NullDIXFontProp ((DIXFontPropPtr)0)
typedef struct _DIXFontProp *DIXFontPropPtr;
extern Bool SetDefaultFont(char * );
extern void QueueFontWakeup(FontPathElementPtr );
extern void RemoveFontWakeup(FontPathElementPtr );
extern void FontWakeup(pointer ,
int ,
pointer );
extern int OpenFont(ClientPtr ,
XID ,
Mask ,
unsigned ,
char * );
extern int CloseFont(pointer ,
XID );
typedef struct _xQueryFontReply *xQueryFontReplyPtr;
extern void QueryFont(FontPtr ,
xQueryFontReplyPtr ,
int );
extern int ListFonts(ClientPtr ,
unsigned char * ,
unsigned int ,
unsigned int );
int
doListFontsWithInfo(ClientPtr ,
LFWIclosurePtr );
extern int doPolyText(ClientPtr ,
PTclosurePtr
);
extern int PolyText(ClientPtr ,
DrawablePtr ,
GCPtr ,
unsigned char * ,
unsigned char * ,
int ,
int ,
int ,
XID );
extern int doImageText(ClientPtr ,
ITclosurePtr );
extern int ImageText(ClientPtr ,
DrawablePtr ,
GCPtr ,
int ,
unsigned char * ,
int ,
int ,
int ,
XID );
extern int SetFontPath(ClientPtr ,
int ,
unsigned char * ,
int * );
extern int SetDefaultFontPath(char * );
extern int GetFontPath(ClientPtr client,
int *count,
int *length,
unsigned char **result);
extern void DeleteClientFontStuff(ClientPtr );
#ifdef __APPLE__
#define InitFonts Darwin_X_InitFonts
#endif
extern void InitFonts(void);
extern void FreeFonts(void);
extern FontPtr find_old_font(XID );
extern void GetGlyphs(FontPtr ,
unsigned long ,
unsigned char * ,
FontEncoding ,
unsigned long * ,
CharInfoPtr * );
extern void QueryGlyphExtents(FontPtr ,
CharInfoPtr * ,
unsigned long ,
ExtentInfoPtr );
extern Bool QueryTextExtents(FontPtr ,
unsigned long ,
unsigned char * ,
ExtentInfoPtr );
extern Bool ParseGlyphCachingMode(char * );
extern void InitGlyphCaching(void);
extern void SetGlyphCachingMode(int );
extern void BuiltinRegisterFpeFunctions(void);
extern int client_auth_generation(ClientPtr client);
extern void DeleteFontClientID(Font id);
extern FontResolutionPtr GetClientResolutions(int *num);
extern int GetDefaultPointSize(void);
extern Font GetNewFontClientID(void);
extern int init_fs_handlers(FontPathElementPtr fpe,
BlockHandlerProcPtr block_handler);
extern int RegisterFPEFunctions(NameCheckFunc name_func,
InitFpeFunc init_func,
FreeFpeFunc free_func,
ResetFpeFunc reset_func,
OpenFontFunc open_func,
CloseFontFunc close_func,
ListFontsFunc list_func,
StartLfwiFunc start_lfwi_func,
NextLfwiFunc next_lfwi_func,
WakeupFpeFunc wakeup_func,
ClientDiedFunc client_died,
LoadGlyphsFunc load_glyphs,
StartLaFunc start_list_alias_func,
NextLaFunc next_list_alias_func,
SetPathFunc set_path_func);
extern void remove_fs_handlers(FontPathElementPtr fpe,
BlockHandlerProcPtr blockHandler,
Bool all);
extern int StoreFontClientFont(FontPtr pfont, Font id);
#endif