diff options
Diffstat (limited to 'drv/drv_gcstruct.h')
-rw-r--r-- | drv/drv_gcstruct.h | 37 |
1 files changed, 33 insertions, 4 deletions
diff --git a/drv/drv_gcstruct.h b/drv/drv_gcstruct.h index 1a8519302..361833cc8 100644 --- a/drv/drv_gcstruct.h +++ b/drv/drv_gcstruct.h @@ -8,6 +8,38 @@ #include "drv_pixmap.h" #include "privates.h" +typedef struct _DrvGCFuncs { + void (* ValidateGC)( + DrvGCPtr /*pGC*/, + unsigned long /*stateChanges*/, + DrvPixmapPtr /*pDrawable*/); + + void (* ChangeGC)( + DrvGCPtr /*pGC*/, + unsigned long /*mask*/); + + void (* CopyGC)( + DrvGCPtr /*pGCSrc*/, + unsigned long /*mask*/, + DrvGCPtr /*pGCDst*/); + + void (* DestroyGC)( + DrvGCPtr /*pGC*/); + + void (* ChangeClip)( + DrvGCPtr /*pGC*/, + int /*type*/, + pointer /*pvalue*/, + int /*nrects*/); + + void (* DestroyClip)( + DrvGCPtr /*pGC*/); + + void (* CopyClip)( + DrvGCPtr /*pgcDst*/, + DrvGCPtr /*pgcSrc*/); +} DrvGCFuncs; + typedef struct _DrvGCOps { void (* FillSpans)( DrvPixmapPtr /*pDrawable*/, @@ -171,10 +203,6 @@ typedef struct _DrvGCOps { int /*x*/, int /*y*/); - void (* GPUValidateGC)( - DrvGCPtr /*pGC*/, - unsigned long /*stateChanges*/, - DrvPixmapPtr /*pDrawable*/); } DrvGCOps; typedef struct _DrvGC { @@ -214,6 +242,7 @@ typedef struct _DrvGC { pointer clientClip; unsigned long stateChanges; /* masked with GC_<kind> */ unsigned long serialNumber; + DrvGCFuncs *funcs; DrvGCOps *ops; PrivateRec *devPrivates; /* |