/*
- * $XFree86: $
+ * $XFree86: xc/lib/fontconfig/fontconfig/fontconfig.h,v 1.9 2002/05/22 04:37:07 keithp Exp $
*
* Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc.
*
*/
#define FC_MAJOR 1
#define FC_MINOR 0
-#define FC_REVISION 0
+#define FC_REVISION 1
#define FC_VERSION ((FC_MAJOR * 10000) + (FC_MINOR * 100) + (FC_REVISION))
} FcObjectType;
typedef struct _FcConstant {
- const char *name;
+ const FcChar8 *name;
const char *object;
int value;
} FcConstant;
FcSetApplication = 1
} FcSetName;
+typedef struct _FcAtomic FcAtomic;
+
#if defined(__cplusplus) || defined(c_plusplus) /* for C++ V2.0 */
#define _FCFUNCPROTOBEGIN extern "C" { /* do not leave open across includes */
#define _FCFUNCPROTOEND }
typedef struct _FcBlanks FcBlanks;
+typedef struct _FcStrList FcStrList;
+
+typedef struct _FcStrSet FcStrSet;
+
_FCFUNCPROTOBEGIN
/* fcblanks.c */
FcBlanksIsMember (FcBlanks *b, FcChar32 ucs4);
/* fccfg.c */
-char *
-FcConfigFilename (const char *url);
+FcChar8 *
+FcConfigFilename (const FcChar8 *url);
FcConfig *
FcConfigCreate (void);
FcConfig *
FcConfigGetCurrent (void);
+FcBool
+FcConfigUptoDate (FcConfig *config);
+
FcBool
FcConfigBuildFonts (FcConfig *config);
-char **
-FcConfigGetDirs (FcConfig *config);
+FcStrList *
+FcConfigGetFontDirs (FcConfig *config);
-char **
+FcStrList *
+FcConfigGetConfigDirs (FcConfig *config);
+
+FcStrList *
FcConfigGetConfigFiles (FcConfig *config);
-char *
+FcChar8 *
FcConfigGetCache (FcConfig *config);
FcBlanks *
FcConfigGetBlanks (FcConfig *config);
+int
+FcConfigGetRescanInverval (FcConfig *config);
+
+FcBool
+FcConfigSetRescanInverval (FcConfig *config, int rescanInterval);
+
FcFontSet *
FcConfigGetFonts (FcConfig *config,
FcSetName set);
FcBool
FcConfigAppFontAddFile (FcConfig *config,
- const char *file);
+ const FcChar8 *file);
FcBool
FcConfigAppFontAddDir (FcConfig *config,
- const char *dir);
+ const FcChar8 *dir);
void
FcConfigAppFontClear (FcConfig *config);
FcChar32
FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b);
-#ifndef FONTCONFIG_NO_FREETYPE
-#include <freetype/freetype.h>
-FT_UInt
-FcFreeTypeCharIndex (FT_Face face, FcChar32 ucs4);
-#endif
+FcChar32
+FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result);
/* fcdbg.c */
+void
+FcValuePrint (FcValue v);
+
void
FcPatternPrint (FcPattern *p);
+void
+FcFontSetPrint (FcFontSet *s);
+
/* fcdefault.c */
void
FcDefaultSubstitute (FcPattern *pattern);
/* fcdir.c */
FcBool
-FcDirScan (FcFontSet *set,
- FcFileCache *cache,
- FcBlanks *blanks,
- const char *dir,
- FcBool force);
+FcFileScan (FcFontSet *set,
+ FcStrSet *dirs,
+ FcFileCache *cache,
+ FcBlanks *blanks,
+ const FcChar8 *file,
+ FcBool force);
+
+FcBool
+FcDirScan (FcFontSet *set,
+ FcStrSet *dirs,
+ FcFileCache *cache,
+ FcBlanks *blanks,
+ const FcChar8 *dir,
+ FcBool force);
+
+FcBool
+FcDirSave (FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
FcBool
-FcDirSave (FcFontSet *set, const char *dir);
+FcDirCacheValid (const FcChar8 *dir);
/* fcfreetype.c */
FcPattern *
-FcFreeTypeQuery (const char *file, int id, FcBlanks *blanks, int *count);
+FcFreeTypeQuery (const FcChar8 *file, int id, FcBlanks *blanks, int *count);
/* fcfs.c */
FcFontSetAdd (FcFontSet *s, FcPattern *font);
/* fcinit.c */
+FcConfig *
+FcInitLoadConfig (void);
+
+FcConfig *
+FcInitLoadConfigAndFonts (void);
+
FcBool
-FcInitFonts (void);
+FcInit (void);
+
+int
+FcGetVersion (void);
FcBool
-FcInitConfig (void);
+FcInitReinitialize (void);
FcBool
-FcInit (void);
+FcInitBringUptoDate (void);
/* fclist.c */
FcObjectSet *
FcObjectSet *
FcObjectSetBuild (const char *first, ...);
+FcFontSet *
+FcFontSetList (FcConfig *config,
+ FcFontSet **sets,
+ int nsets,
+ FcPattern *p,
+ FcObjectSet *os);
+
FcFontSet *
FcFontList (FcConfig *config,
FcPattern *p,
FcObjectSet *os);
+/* fcatomic.c */
+
+FcAtomic *
+FcAtomicCreate (const FcChar8 *file);
+
+FcBool
+FcAtomicLock (FcAtomic *atomic);
+
+FcChar8 *
+FcAtomicNewFile (FcAtomic *atomic);
+
+FcChar8 *
+FcAtomicOrigFile (FcAtomic *atomic);
+
+FcBool
+FcAtomicReplaceOrig (FcAtomic *atomic);
+
+void
+FcAtomicDeleteNew (FcAtomic *atomic);
+
+void
+FcAtomicUnlock (FcAtomic *atomic);
+
+void
+FcAtomicDestroy (FcAtomic *atomic);
+
/* fcmatch.c */
+FcPattern *
+FcFontSetMatch (FcConfig *config,
+ FcFontSet **sets,
+ int nsets,
+ FcPattern *p,
+ FcResult *result);
+
FcPattern *
FcFontMatch (FcConfig *config,
FcPattern *p,
FcResult *result);
+FcPattern *
+FcFontRenderPrepare (FcConfig *config,
+ FcPattern *pat,
+ FcPattern *font);
+
+FcFontSet *
+FcFontSetSort (FcConfig *config,
+ FcFontSet **sets,
+ int nsets,
+ FcPattern *p,
+ FcBool trim,
+ FcCharSet **csp,
+ FcResult *result);
+
/* fcmatrix.c */
FcMatrix *
FcMatrixCopy (const FcMatrix *mat);
FcNameUnregisterConstants (const FcConstant *consts, int nconsts);
const FcConstant *
-FcNameGetConstant (char *string);
+FcNameGetConstant (FcChar8 *string);
FcBool
-FcNameConstant (char *string, int *result);
+FcNameConstant (FcChar8 *string, int *result);
FcPattern *
-FcNameParse (const char *name);
+FcNameParse (const FcChar8 *name);
FcChar8 *
FcNameUnparse (FcPattern *pat);
void
FcValueDestroy (FcValue v);
+FcBool
+FcValueEqual (FcValue va, FcValue vb);
+
FcValue
FcValueSave (FcValue v);
void
FcPatternDestroy (FcPattern *p);
+FcBool
+FcPatternEqual (FcPattern *pa, FcPattern *pb);
+
FcBool
FcPatternAdd (FcPattern *p, const char *object, FcValue value, FcBool append);
FcPatternAddDouble (FcPattern *p, const char *object, double d);
FcBool
-FcPatternAddString (FcPattern *p, const char *object, const char *s);
+FcPatternAddString (FcPattern *p, const char *object, const FcChar8 *s);
FcBool
FcPatternAddMatrix (FcPattern *p, const char *object, const FcMatrix *s);
FcPatternGetDouble (FcPattern *p, const char *object, int n, double *d);
FcResult
-FcPatternGetString (FcPattern *p, const char *object, int n, char **const s);
+FcPatternGetString (FcPattern *p, const char *object, int n, FcChar8 ** s);
FcResult
FcPatternGetMatrix (FcPattern *p, const char *object, int n, FcMatrix **s);
/* fcstr.c */
-char *
-FcStrCopy (const char *s);
+FcChar8 *
+FcStrCopy (const FcChar8 *s);
+FcChar8 *
+FcStrCopyFilename (const FcChar8 *s);
+
#define FcToLower(c) (('A' <= (c) && (c) <= 'Z') ? (c) - 'A' + 'a' : (c))
int
-FcStrCmpIgnoreCase (const char *s1, const char *s2);
+FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2);
+
+int
+FcStrCmp (const FcChar8 *s1, const FcChar8 *s2);
int
FcUtf8ToUcs4 (FcChar8 *src_orig,
int *nchar,
int *wchar);
+FcChar8 *
+FcStrDirname (const FcChar8 *file);
+
+FcChar8 *
+FcStrBasename (const FcChar8 *file);
+
+FcStrSet *
+FcStrSetCreate (void);
+
+FcBool
+FcStrSetMember (FcStrSet *set, const FcChar8 *s);
+
+FcBool
+FcStrSetAdd (FcStrSet *set, const FcChar8 *s);
+
+FcBool
+FcStrSetAddFilename (FcStrSet *set, const FcChar8 *s);
+
+FcBool
+FcStrSetDel (FcStrSet *set, const FcChar8 *s);
+
+void
+FcStrSetDestroy (FcStrSet *set);
+
+FcStrList *
+FcStrListCreate (FcStrSet *set);
+
+FcChar8 *
+FcStrListNext (FcStrList *list);
+
+void
+FcStrListDone (FcStrList *list);
+
/* fcxml.c */
FcBool
-FcConfigParseAndLoad (FcConfig *config, const char *file, FcBool complain);
+FcConfigParseAndLoad (FcConfig *config, const FcChar8 *file, FcBool complain);
_FCFUNCPROTOEND