XNGC.h revision 4642e01f
1/*
2
3Copyright 1993 by Davor Matic
4
5Permission to use, copy, modify, distribute, and sell this software
6and its documentation for any purpose is hereby granted without fee,
7provided that the above copyright notice appear in all copies and that
8both that copyright notice and this permission notice appear in
9supporting documentation.  Davor Matic makes no representations about
10the suitability of this software for any purpose.  It is provided "as
11is" 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
20typedef struct {
21  XlibGC gc;
22  int nClipRects;
23} xnestPrivGC;
24
25extern DevPrivateKey xnestGCPrivateKey;
26
27#define xnestGCPriv(pGC) ((xnestPrivGC *) \
28    dixLookupPrivate(&(pGC)->devPrivates, xnestGCPrivateKey))
29
30#define xnestGC(pGC) (xnestGCPriv(pGC)->gc)
31
32Bool xnestCreateGC(GCPtr pGC);
33void xnestValidateGC(GCPtr pGC, unsigned long changes, DrawablePtr pDrawable);
34void xnestChangeGC(GCPtr pGC, unsigned long mask);
35void xnestCopyGC(GCPtr pGCSrc, unsigned long mask, GCPtr pGCDst);
36void xnestDestroyGC(GCPtr pGC);
37void xnestChangeClip(GCPtr pGC, int type, pointer pValue, int nRects);
38void xnestDestroyClip(GCPtr pGC);
39void xnestDestroyClipHelper(GCPtr pGC);
40void xnestCopyClip(GCPtr pGCDst, GCPtr pGCSrc);
41
42#endif /* XNESTGC_H */
43