diff options
Diffstat (limited to 'xc/lib/Xft/Xft.h')
-rw-r--r-- | xc/lib/Xft/Xft.h | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/xc/lib/Xft/Xft.h b/xc/lib/Xft/Xft.h index 6304c633b..3e900de90 100644 --- a/xc/lib/Xft/Xft.h +++ b/xc/lib/Xft/Xft.h @@ -1,5 +1,5 @@ /* - * $XFree86: xc/lib/Xft/Xft.h,v 1.17 2001/01/26 20:51:14 keithp Exp $ + * $XFree86: xc/lib/Xft/Xft.h,v 1.18 2001/03/30 18:50:18 keithp Exp $ * * Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc. * @@ -62,6 +62,7 @@ typedef unsigned int XftChar32; /* specific to FreeType rasterizer */ #define XFT_CHAR_WIDTH "charwidth" /* Int */ #define XFT_CHAR_HEIGHT "charheight"/* Int */ +#define XFT_MATRIX "matrix" /* XftMatrix */ #define XFT_WEIGHT_LIGHT 0 #define XFT_WEIGHT_MEDIUM 100 @@ -88,9 +89,17 @@ typedef enum _XftType { XftTypeInteger, XftTypeDouble, XftTypeString, - XftTypeBool + XftTypeBool, + XftTypeMatrix } XftType; +typedef struct _XftMatrix { + double xx, xy, yx, yy; +} XftMatrix; + +#define XftMatrixInit(m) ((m)->xx = (m)->yy = 1, \ + (m)->xy = (m)->yx = 0) + typedef enum _XftResult { XftResultMatch, XftResultNoMatch, XftResultTypeMismatch, XftResultNoId } XftResult; @@ -102,6 +111,7 @@ typedef struct _XftValue { int i; Bool b; double d; + XftMatrix *m; } u; } XftValue; @@ -395,6 +405,22 @@ XftFontSetMatch (XftFontSet **sets, XftPattern *p, XftResult *result); +/* xftmatrix.c */ +int +XftMatrixEqual (const XftMatrix *mat1, const XftMatrix *mat2); + +void +XftMatrixMultiply (XftMatrix *result, XftMatrix *a, XftMatrix *b); + +void +XftMatrixRotate (XftMatrix *m, double c, double s); + +void +XftMatrixScale (XftMatrix *m, double sx, double sy); + +void +XftMatrixShear (XftMatrix *m, double sh, double sv); + /* xftname.c */ XftPattern * XftNameParse (const char *name); @@ -440,6 +466,9 @@ Bool XftPatternAddString (XftPattern *p, const char *object, const char *s); Bool +XftPatternAddMatrix (XftPattern *p, const char *object, const XftMatrix *s); + +Bool XftPatternAddBool (XftPattern *p, const char *object, Bool b); XftResult @@ -452,6 +481,9 @@ XftResult XftPatternGetString (XftPattern *p, const char *object, int n, char **s); XftResult +XftPatternGetMatrix (XftPattern *p, const char *object, int n, XftMatrix **s); + +XftResult XftPatternGetBool (XftPattern *p, const char *object, int n, Bool *b); XftPattern * |