|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Copyright © 2000 Keith Packard
|
|
Packit |
b749da |
*
|
|
Packit |
b749da |
* Permission to use, copy, modify, distribute, and sell this software and its
|
|
Packit |
b749da |
* documentation for any purpose is hereby granted without fee, provided that
|
|
Packit |
b749da |
* the above copyright notice appear in all copies and that both that
|
|
Packit |
b749da |
* copyright notice and this permission notice appear in supporting
|
|
Packit |
b749da |
* documentation, and that the name of Keith Packard not be used in
|
|
Packit |
b749da |
* advertising or publicity pertaining to distribution of the software without
|
|
Packit |
b749da |
* specific, written prior permission. Keith Packard makes no
|
|
Packit |
b749da |
* representations about the suitability of this software for any purpose. It
|
|
Packit |
b749da |
* is provided "as is" without express or implied warranty.
|
|
Packit |
b749da |
*
|
|
Packit |
b749da |
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
|
Packit |
b749da |
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
|
Packit |
b749da |
* EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
|
Packit |
b749da |
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
|
Packit |
b749da |
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
|
Packit |
b749da |
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
Packit |
b749da |
* PERFORMANCE OF THIS SOFTWARE.
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* These definitions are solely for use by the implementation of Xft
|
|
Packit |
b749da |
* and constitute no kind of standard. If you need any of these functions,
|
|
Packit |
b749da |
* please drop me a note. Either the library needs new functionality,
|
|
Packit |
b749da |
* or there's a way to do what you need using the existing published
|
|
Packit |
b749da |
* interfaces. keithp@freedesktop.org
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#ifndef _XFTINT_H_
|
|
Packit |
b749da |
#define _XFTINT_H_
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#ifdef HAVE_CONFIG_H
|
|
Packit |
b749da |
#include "config.h"
|
|
Packit |
b749da |
#else /* X monolithic tree */
|
|
Packit |
b749da |
#define HAVE_STDLIB_H 1 /* assumed since all ANSI C platforms require it */
|
|
Packit |
b749da |
#include <X11/Xosdefs.h> /* get string.h or strings.h as appropriate */
|
|
Packit |
b749da |
#endif
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#include <stdio.h>
|
|
Packit |
b749da |
#if HAVE_STDLIB_H
|
|
Packit |
b749da |
#include <stdlib.h>
|
|
Packit |
b749da |
#endif
|
|
Packit |
b749da |
#if HAVE_STRING_H
|
|
Packit |
b749da |
#include <string.h>
|
|
Packit |
b749da |
#else
|
|
Packit |
b749da |
#if HAVE_STRINGS_H
|
|
Packit |
b749da |
#include <strings.h>
|
|
Packit |
b749da |
#endif
|
|
Packit |
b749da |
#endif
|
|
Packit |
b749da |
#include <ctype.h>
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#include <X11/Xlib.h>
|
|
Packit |
b749da |
#include <X11/Xutil.h>
|
|
Packit |
b749da |
#include <X11/Xmd.h>
|
|
Packit |
b749da |
#include <X11/Xlibint.h>
|
|
Packit |
b749da |
#define _XFT_NO_COMPAT_
|
|
Packit |
b749da |
#include "Xft.h"
|
|
Packit |
b749da |
#include <fontconfig/fcprivate.h>
|
|
Packit |
b749da |
#include <fontconfig/fcfreetype.h>
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* Added to <X11/Xfuncproto.h> in X11R6.9 and later */
|
|
Packit |
b749da |
#ifndef _X_HIDDEN
|
|
Packit |
b749da |
# define _X_HIDDEN /**/
|
|
Packit |
b749da |
#endif
|
|
Packit |
b749da |
#ifndef _X_EXPORT
|
|
Packit |
b749da |
# define _X_EXPORT /**/
|
|
Packit |
b749da |
#endif
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef struct _XftMatcher {
|
|
Packit |
b749da |
char *object;
|
|
Packit |
b749da |
double (*compare) (char *object, FcValue value1, FcValue value2);
|
|
Packit |
b749da |
} XftMatcher;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef struct _XftSymbolic {
|
|
Packit |
b749da |
const char *name;
|
|
Packit |
b749da |
int value;
|
|
Packit |
b749da |
} XftSymbolic;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Glyphs are stored in this structure
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
typedef struct _XftGlyph {
|
|
Packit |
b749da |
XGlyphInfo metrics;
|
|
Packit |
b749da |
void *bitmap;
|
|
Packit |
b749da |
unsigned long glyph_memory;
|
|
Packit |
b749da |
} XftGlyph;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* A hash table translates Unicode values into glyph indicies
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
typedef struct _XftUcsHash {
|
|
Packit |
b749da |
FcChar32 ucs4;
|
|
Packit |
b749da |
FT_UInt glyph;
|
|
Packit |
b749da |
} XftUcsHash;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Many fonts can share the same underlying face data; this
|
|
Packit |
b749da |
* structure references that. Note that many faces may in fact
|
|
Packit |
b749da |
* live in the same font file; that is irrelevant to this structure
|
|
Packit |
b749da |
* which is concerned only with the individual faces themselves
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef struct _XftFtFile {
|
|
Packit |
b749da |
struct _XftFtFile *next;
|
|
Packit |
b749da |
int ref; /* number of font infos using this file */
|
|
Packit |
b749da |
|
|
Packit |
b749da |
char *file; /* file name */
|
|
Packit |
b749da |
int id; /* font index within that file */
|
|
Packit |
b749da |
|
|
Packit |
b749da |
FT_F26Dot6 xsize; /* current xsize setting */
|
|
Packit |
b749da |
FT_F26Dot6 ysize; /* current ysize setting */
|
|
Packit |
b749da |
FT_Matrix matrix; /* current matrix setting */
|
|
Packit |
b749da |
|
|
Packit |
b749da |
int lock; /* lock count; can't unload unless 0 */
|
|
Packit |
b749da |
FT_Face face; /* pointer to face; only valid when lock */
|
|
Packit |
b749da |
} XftFtFile;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* This structure holds the data extracted from a pattern
|
|
Packit |
b749da |
* needed to create a unique font object.
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
|
|
Packit |
b749da |
struct _XftFontInfo {
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Hash value (not include in hash value computation)
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
FcChar32 hash;
|
|
Packit |
b749da |
XftFtFile *file; /* face source */
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Rendering options
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
FT_F26Dot6 xsize, ysize; /* pixel size */
|
|
Packit |
b749da |
FcBool antialias; /* doing antialiasing */
|
|
Packit |
b749da |
FcBool embolden; /* force emboldening */
|
|
Packit |
b749da |
int rgba; /* subpixel order */
|
|
Packit |
b749da |
int lcd_filter; /* lcd filter */
|
|
Packit |
b749da |
FT_Matrix matrix; /* glyph transformation matrix */
|
|
Packit |
b749da |
FcBool transform; /* non-identify matrix? */
|
|
Packit |
b749da |
FT_Int load_flags; /* glyph load flags */
|
|
Packit |
b749da |
FcBool render; /* whether to use the Render extension */
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Internal fields
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
int spacing;
|
|
Packit |
b749da |
FcBool minspace;
|
|
Packit |
b749da |
int char_width;
|
|
Packit |
b749da |
};
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Internal version of the font with private data
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef struct _XftFontInt {
|
|
Packit |
b749da |
XftFont public; /* public fields */
|
|
Packit |
b749da |
XftFont *next; /* all fonts on display */
|
|
Packit |
b749da |
XftFont *hash_next; /* fonts in this hash chain */
|
|
Packit |
b749da |
XftFontInfo info; /* Data from pattern */
|
|
Packit |
b749da |
int ref; /* reference count */
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Per-glyph information, indexed by glyph ID
|
|
Packit |
b749da |
* This array follows the font in memory
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
XftGlyph **glyphs;
|
|
Packit |
b749da |
int num_glyphs; /* size of glyphs/bitmaps arrays */
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Hash table to get from Unicode value to glyph ID
|
|
Packit |
b749da |
* This array follows the glyphs in memory
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
XftUcsHash *hash_table;
|
|
Packit |
b749da |
int hash_value;
|
|
Packit |
b749da |
int rehash_value;
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* X specific fields
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
GlyphSet glyphset; /* Render glyphset */
|
|
Packit |
b749da |
XRenderPictFormat *format; /* Render format for glyphs */
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Glyph memory management fields
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
unsigned long glyph_memory;
|
|
Packit |
b749da |
unsigned long max_glyph_memory;
|
|
Packit |
b749da |
FcBool use_free_glyphs; /* Use XRenderFreeGlyphs */
|
|
Packit |
b749da |
} XftFontInt;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef enum _XftClipType {
|
|
Packit |
b749da |
XftClipTypeNone, XftClipTypeRegion, XftClipTypeRectangles
|
|
Packit |
b749da |
} XftClipType;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef struct _XftClipRect {
|
|
Packit |
b749da |
int xOrigin;
|
|
Packit |
b749da |
int yOrigin;
|
|
Packit |
b749da |
int n;
|
|
Packit |
b749da |
} XftClipRect;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#define XftClipRects(cr) ((XRectangle *) ((cr) + 1))
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef union _XftClip {
|
|
Packit |
b749da |
XftClipRect *rect;
|
|
Packit |
b749da |
Region region;
|
|
Packit |
b749da |
} XftClip;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
struct _XftDraw {
|
|
Packit |
b749da |
Display *dpy;
|
|
Packit |
b749da |
int screen;
|
|
Packit |
b749da |
unsigned int bits_per_pixel;
|
|
Packit |
b749da |
unsigned int depth;
|
|
Packit |
b749da |
Drawable drawable;
|
|
Packit |
b749da |
Visual *visual; /* NULL for bitmaps */
|
|
Packit |
b749da |
Colormap colormap;
|
|
Packit |
b749da |
XftClipType clip_type;
|
|
Packit |
b749da |
XftClip clip;
|
|
Packit |
b749da |
int subwindow_mode;
|
|
Packit |
b749da |
struct {
|
|
Packit |
b749da |
Picture pict;
|
|
Packit |
b749da |
} render;
|
|
Packit |
b749da |
struct {
|
|
Packit |
b749da |
GC gc;
|
|
Packit |
b749da |
int use_pixmap;
|
|
Packit |
b749da |
} core;
|
|
Packit |
b749da |
};
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* Instead of taking two round trips for each blending request,
|
|
Packit |
b749da |
* assume that if a particular drawable fails GetImage that it will
|
|
Packit |
b749da |
* fail for a "while"; use temporary pixmaps to avoid the errors
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#define XFT_ASSUME_PIXMAP 20
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef struct _XftSolidColor {
|
|
Packit |
b749da |
XRenderColor color;
|
|
Packit |
b749da |
int screen;
|
|
Packit |
b749da |
Picture pict;
|
|
Packit |
b749da |
} XftSolidColor;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#define XFT_NUM_SOLID_COLOR 16
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#define XFT_NUM_FONT_HASH 127
|
|
Packit |
b749da |
|
|
Packit |
b749da |
typedef struct _XftDisplayInfo {
|
|
Packit |
b749da |
struct _XftDisplayInfo *next;
|
|
Packit |
b749da |
Display *display;
|
|
Packit |
b749da |
XExtCodes *codes;
|
|
Packit |
b749da |
FcPattern *defaults;
|
|
Packit |
b749da |
FcBool hasRender;
|
|
Packit |
b749da |
FcBool hasSolid;
|
|
Packit |
b749da |
XftFont *fonts;
|
|
Packit |
b749da |
XRenderPictFormat *solidFormat;
|
|
Packit |
b749da |
unsigned long glyph_memory;
|
|
Packit |
b749da |
unsigned long max_glyph_memory;
|
|
Packit |
b749da |
FcBool use_free_glyphs;
|
|
Packit |
b749da |
int num_unref_fonts;
|
|
Packit |
b749da |
int max_unref_fonts;
|
|
Packit |
b749da |
XftSolidColor colors[XFT_NUM_SOLID_COLOR];
|
|
Packit |
b749da |
XftFont *fontHash[XFT_NUM_FONT_HASH];
|
|
Packit |
b749da |
} XftDisplayInfo;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* By default, use no more than 4 meg of server memory total, and no
|
|
Packit |
b749da |
* more than 1 meg for any one font
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
#define XFT_DPY_MAX_GLYPH_MEMORY (4 * 1024 * 1024)
|
|
Packit |
b749da |
#define XFT_FONT_MAX_GLYPH_MEMORY (1024 * 1024)
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/*
|
|
Packit |
b749da |
* By default, keep the last 16 unreferenced fonts around to
|
|
Packit |
b749da |
* speed reopening them. Note that the glyph caching code
|
|
Packit |
b749da |
* will keep the global memory usage reasonably limited
|
|
Packit |
b749da |
*/
|
|
Packit |
b749da |
#define XFT_DPY_MAX_UNREF_FONTS 16
|
|
Packit |
b749da |
|
|
Packit |
b749da |
extern XftDisplayInfo *_XftDisplayInfo;
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#define XFT_DBG_OPEN 1
|
|
Packit |
b749da |
#define XFT_DBG_OPENV 2
|
|
Packit |
b749da |
#define XFT_DBG_RENDER 4
|
|
Packit |
b749da |
#define XFT_DBG_DRAW 8
|
|
Packit |
b749da |
#define XFT_DBG_REF 16
|
|
Packit |
b749da |
#define XFT_DBG_GLYPH 32
|
|
Packit |
b749da |
#define XFT_DBG_GLYPHV 64
|
|
Packit |
b749da |
#define XFT_DBG_CACHE 128
|
|
Packit |
b749da |
#define XFT_DBG_CACHEV 256
|
|
Packit |
b749da |
#define XFT_DBG_MEMORY 512
|
|
Packit |
b749da |
|
|
Packit |
b749da |
#define XFT_MEM_DRAW 0
|
|
Packit |
b749da |
#define XFT_MEM_FONT 1
|
|
Packit |
b749da |
#define XFT_MEM_FILE 2
|
|
Packit |
b749da |
#define XFT_MEM_GLYPH 3
|
|
Packit |
b749da |
#define XFT_MEM_NUM 4
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftcompat.c */
|
|
Packit |
b749da |
void XftFontSetDestroy (FcFontSet *s);
|
|
Packit |
b749da |
FcBool XftMatrixEqual (_Xconst FcMatrix *mat1, _Xconst FcMatrix *mat2);
|
|
Packit |
b749da |
void XftMatrixMultiply (FcMatrix *result, FcMatrix *a, FcMatrix *b);
|
|
Packit |
b749da |
void XftMatrixRotate (FcMatrix *m, double c, double s);
|
|
Packit |
b749da |
void XftMatrixScale (FcMatrix *m, double sx, double sy);
|
|
Packit |
b749da |
void XftMatrixShear (FcMatrix *m, double sh, double sv);
|
|
Packit |
b749da |
FcPattern *XftPatternCreate (void);
|
|
Packit |
b749da |
void XftValueDestroy (FcValue v);
|
|
Packit |
b749da |
void XftPatternDestroy (FcPattern *p);
|
|
Packit |
b749da |
FcBool XftPatternAdd (FcPattern *p, _Xconst char *object, FcValue value, FcBool append);
|
|
Packit |
b749da |
FcBool XftPatternDel (FcPattern *p, _Xconst char *object);
|
|
Packit |
b749da |
FcBool XftPatternAddInteger (FcPattern *p, _Xconst char *object, int i);
|
|
Packit |
b749da |
FcBool XftPatternAddDouble (FcPattern *p, _Xconst char *object, double i);
|
|
Packit |
b749da |
FcBool XftPatternAddMatrix (FcPattern *p, _Xconst char *object, FcMatrix *i);
|
|
Packit |
b749da |
FcBool XftPatternAddString (FcPattern *p, _Xconst char *object, char *i);
|
|
Packit |
b749da |
FcBool XftPatternAddBool (FcPattern *p, _Xconst char *object, FcBool i);
|
|
Packit |
b749da |
FcResult XftPatternGet (FcPattern *p, _Xconst char *object, int id, FcValue *v);
|
|
Packit |
b749da |
FcResult XftPatternGetInteger (FcPattern *p, _Xconst char *object, int id, int *i);
|
|
Packit |
b749da |
FcResult XftPatternGetDouble (FcPattern *p, _Xconst char *object, int id, double *i);
|
|
Packit |
b749da |
FcResult XftPatternGetString (FcPattern *p, _Xconst char *object, int id, char **i);
|
|
Packit |
b749da |
FcResult XftPatternGetMatrix (FcPattern *p, _Xconst char *object, int id, FcMatrix **i);
|
|
Packit |
b749da |
FcResult XftPatternGetBool (FcPattern *p, _Xconst char *object, int id, FcBool *i);
|
|
Packit |
b749da |
FcPattern *XftPatternDuplicate (FcPattern *orig);
|
|
Packit |
b749da |
FcPattern *XftPatternVaBuild (FcPattern *orig, va_list va);
|
|
Packit |
b749da |
FcPattern *XftPatternBuild (FcPattern *orig, ...);
|
|
Packit |
b749da |
FcBool XftNameUnparse (FcPattern *pat, char *dest, int len);
|
|
Packit |
b749da |
FcBool XftGlyphExists (Display *dpy, XftFont *font, FcChar32 ucs4);
|
|
Packit |
b749da |
FcObjectSet *XftObjectSetCreate (void);
|
|
Packit |
b749da |
Bool XftObjectSetAdd (FcObjectSet *os, _Xconst char *object);
|
|
Packit |
b749da |
void XftObjectSetDestroy (FcObjectSet *os);
|
|
Packit |
b749da |
FcObjectSet *XftObjectSetVaBuild (_Xconst char *first, va_list va);
|
|
Packit |
b749da |
FcObjectSet *XftObjectSetBuild (_Xconst char *first, ...);
|
|
Packit |
b749da |
FcFontSet *XftListFontSets (FcFontSet **sets, int nsets, FcPattern *p, FcObjectSet *os);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftcore.c */
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftRectCore (XftDraw *draw,
|
|
Packit |
b749da |
_Xconst XftColor *color,
|
|
Packit |
b749da |
int x,
|
|
Packit |
b749da |
int y,
|
|
Packit |
b749da |
unsigned int width,
|
|
Packit |
b749da |
unsigned int height);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftGlyphCore (XftDraw *draw,
|
|
Packit |
b749da |
_Xconst XftColor *color,
|
|
Packit |
b749da |
XftFont *public,
|
|
Packit |
b749da |
int x,
|
|
Packit |
b749da |
int y,
|
|
Packit |
b749da |
_Xconst FT_UInt *glyphs,
|
|
Packit |
b749da |
int nglyphs);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftGlyphSpecCore (XftDraw *draw,
|
|
Packit |
b749da |
_Xconst XftColor *color,
|
|
Packit |
b749da |
XftFont *public,
|
|
Packit |
b749da |
_Xconst XftGlyphSpec *glyphs,
|
|
Packit |
b749da |
int nglyphs);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftGlyphFontSpecCore (XftDraw *draw,
|
|
Packit |
b749da |
_Xconst XftColor *color,
|
|
Packit |
b749da |
_Xconst XftGlyphFontSpec *glyphs,
|
|
Packit |
b749da |
int nglyphs);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftdbg.c */
|
|
Packit |
b749da |
int
|
|
Packit |
b749da |
XftDebug (void);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftdpy.c */
|
|
Packit |
b749da |
XftDisplayInfo *
|
|
Packit |
b749da |
_XftDisplayInfoGet (Display *dpy, FcBool createIfNecessary);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
_XftDisplayManageMemory (Display *dpy);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
int
|
|
Packit |
b749da |
XftDefaultParseBool (const char *v);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
FcBool
|
|
Packit |
b749da |
XftDefaultGetBool (Display *dpy, const char *object, int screen, FcBool def);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
int
|
|
Packit |
b749da |
XftDefaultGetInteger (Display *dpy, const char *object, int screen, int def);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
double
|
|
Packit |
b749da |
XftDefaultGetDouble (Display *dpy, const char *object, int screen, double def);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
FcFontSet *
|
|
Packit |
b749da |
XftDisplayGetFontSet (Display *dpy);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftdraw.c */
|
|
Packit |
b749da |
unsigned int
|
|
Packit |
b749da |
XftDrawDepth (XftDraw *draw);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
unsigned int
|
|
Packit |
b749da |
XftDrawBitsPerPixel (XftDraw *draw);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
FcBool
|
|
Packit |
b749da |
XftDrawRenderPrepare (XftDraw *draw);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftextent.c */
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftfont.c */
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftfreetype.c */
|
|
Packit |
b749da |
FcBool
|
|
Packit |
b749da |
_XftSetFace (XftFtFile *f, FT_F26Dot6 xsize, FT_F26Dot6 ysize, FT_Matrix *matrix);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftFontManageMemory (Display *dpy);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftglyph.c */
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
_XftFontUncacheGlyph (Display *dpy, XftFont *public);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
_XftFontManageMemory (Display *dpy, XftFont *public);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftinit.c */
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftMemReport (void);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftMemAlloc (int kind, int size);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftMemFree (int kind, int size);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftlist.c */
|
|
Packit |
b749da |
FcFontSet *
|
|
Packit |
b749da |
XftListFontsPatternObjects (Display *dpy,
|
|
Packit |
b749da |
int screen,
|
|
Packit |
b749da |
FcPattern *pattern,
|
|
Packit |
b749da |
FcObjectSet *os);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftname.c */
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
_XftNameInit (void);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftrender.c */
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftstr.c */
|
|
Packit |
b749da |
int
|
|
Packit |
b749da |
_XftMatchSymbolic (XftSymbolic *s, int n, const char *name, int def);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftswap.c */
|
|
Packit |
b749da |
int
|
|
Packit |
b749da |
XftNativeByteOrder (void);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftSwapCARD32 (CARD32 *data, int n);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftSwapCARD24 (CARD8 *data, int width, int height);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftSwapCARD16 (CARD16 *data, int n);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
void
|
|
Packit |
b749da |
XftSwapImage (XImage *image);
|
|
Packit |
b749da |
|
|
Packit |
b749da |
/* xftxlfd.c */
|
|
Packit |
b749da |
#endif /* _XFT_INT_H_ */
|