summaryrefslogtreecommitdiff
path: root/drv/drv_gcstruct.h
diff options
context:
space:
mode:
Diffstat (limited to 'drv/drv_gcstruct.h')
-rw-r--r--drv/drv_gcstruct.h37
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;
/*