xref: /OK3568_Linux_fs/external/xserver/hw/xnest/XNGC.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2 
3 Copyright 1993 by Davor Matic
4 
5 Permission to use, copy, modify, distribute, and sell this software
6 and its documentation for any purpose is hereby granted without fee,
7 provided that the above copyright notice appear in all copies and that
8 both that copyright notice and this permission notice appear in
9 supporting documentation.  Davor Matic makes no representations about
10 the suitability of this software for any purpose.  It is provided "as
11 is" without express or implied warranty.
12 
13 */
14 
15 #ifndef XNESTGC_H
16 #define XNESTGC_H
17 
18 /* This file uses the GC definition form Xlib.h as XlibGC. */
19 
20 typedef struct {
21     XlibGC gc;
22 } xnestPrivGC;
23 
24 extern DevPrivateKeyRec xnestGCPrivateKeyRec;
25 
26 #define xnestGCPrivateKey (&xnestGCPrivateKeyRec)
27 
28 #define xnestGCPriv(pGC) ((xnestPrivGC *) \
29     dixLookupPrivate(&(pGC)->devPrivates, xnestGCPrivateKey))
30 
31 #define xnestGC(pGC) (xnestGCPriv(pGC)->gc)
32 
33 Bool xnestCreateGC(GCPtr pGC);
34 void xnestValidateGC(GCPtr pGC, unsigned long changes, DrawablePtr pDrawable);
35 void xnestChangeGC(GCPtr pGC, unsigned long mask);
36 void xnestCopyGC(GCPtr pGCSrc, unsigned long mask, GCPtr pGCDst);
37 void xnestDestroyGC(GCPtr pGC);
38 void xnestChangeClip(GCPtr pGC, int type, void *pValue, int nRects);
39 void xnestDestroyClip(GCPtr pGC);
40 void xnestCopyClip(GCPtr pGCDst, GCPtr pGCSrc);
41 
42 #endif                          /* XNESTGC_H */
43