diff options
author | Keith Packard <keithp@keithp.com> | 2003-11-22 00:44:32 +0000 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2003-11-22 00:44:32 +0000 |
commit | f92db7128c857b3925846a9c8519e9554a1c67e2 (patch) | |
tree | 326da04318110b283f8f038daa461dbc47031e0b | |
parent | 804a9fda12f70e66feac5e45bc8293a7e436689b (diff) | |
download | xorg-proto-fixesproto-f92db7128c857b3925846a9c8519e9554a1c67e2.tar.gz |
Eliminate offset arguments in combining operators, create separate CopyRegion and TranslateRegion requests.
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | protocol | 39 | ||||
-rw-r--r-- | xfixesproto.h | 27 | ||||
-rw-r--r-- | xfixeswire.h | 30 |
4 files changed, 70 insertions, 34 deletions
@@ -1,3 +1,11 @@ +2003-11-21 Keith Packard <keithp@keithp.com> + + * protocol: + * xfixesproto.h: + * xfixeswire.h: + Eliminate offset arguments in combining operators, + create separate CopyRegion and TranslateRegion requests. + 2003-11-02 Keith Packard <keithp@keithp.com> * configure.ac: @@ -1,6 +1,7 @@ - The XFIXES Extension + The XFIXES Extension Version 2.0 - 2003-10-15 + Document Revision 1 + 2003-11-20 Keith Packard keithp@keithp.com @@ -303,38 +304,46 @@ SetRegion This replaces the current contents of region with the region formed by the union of rects. +CopyRegion + source: Region + destination: Region + + This replaces the contents of destination with the contents of + source. + UnionRegion IntersectRegion SubtractRegion - source1: Region or None - xOff1, yOff1: INT16 - source2: Region or None - xOff2, yOff2: INT16 + source1: Region + source2: Region destination: Region Combines source1 and source2, placing the result in destination. - Destination may be the same as either source1 or source2. If - source1 or source2 are None, the operation behaves as if an empty - region was specified. xOff1, yOff1 are added to the coordinates of - source1 while xOff2 and yOff2 are added to the coordinates of - source2. + Destination may be the same as either source1 or source2. Errors: Region, Value InvertRegion source: Region - xOff, yOff: INT16 bounds: RECTANGLE destination: Region - The source region is offset by xOff, yOff and subtracted from the - region specified by bounds. The result is placed in destination, - replacing its contents. + The source region is subtracted from the region specified by + bounds. The result is placed in destination, replacing its contents. Errors: Region +TranslateRegion + + region: Region + dx, dy: INT16 + + The region is translated by dx, dy in place. + + Errors: Region + RegionExtents source: Region diff --git a/xfixesproto.h b/xfixesproto.h index 8bdae6f..e6b2a7f 100644 --- a/xfixesproto.h +++ b/xfixesproto.h @@ -247,17 +247,25 @@ typedef struct { CARD8 reqType; CARD8 xfixesReqType; CARD16 length B16; + Region source B32; + Region destination B32; +} xXFixesCopyRegionReq; + +#define sz_xXFixesCopyRegionReq 12 + +typedef struct { + CARD8 reqType; + CARD8 xfixesReqType; + CARD16 length B16; Region source1 B32; - INT16 xOff1 B16, yOff1 B16; Region source2 B32; - INT16 xOff2 B16, yOff2 B16; Region destination B32; } xXFixesCombineRegionReq, xXFixesUnionRegionReq, xXFixesIntersectRegionReq, xXFixesSubtractRegionReq; -#define sz_xXFixesCombineRegionReq 24 +#define sz_xXFixesCombineRegionReq 16 #define sz_xXFixesUnionRegionReq sz_xXFixesCombineRegionReq #define sz_xXFixesIntersectRegionReq sz_xXFixesCombineRegionReq #define sz_xXFixesSubtractRegionReq sz_xXFixesCombineRegionReq @@ -267,14 +275,23 @@ typedef struct { CARD8 xfixesReqType; CARD16 length B16; Region source B32; - INT16 xOff B16, yOff B16; INT16 x B16, y B16; CARD16 width B16, height B16; Region destination B32; } xXFixesInvertRegionReq; -#define sz_xXFixesInvertRegionReq 24 +#define sz_xXFixesInvertRegionReq 20 + +typedef struct { + CARD8 reqType; + CARD8 xfixesReqType; + CARD16 length B16; + Region region B32; + INT16 dx B16, dy B16; +} xXFixesTranslateRegionReq; +#define sz_xXFixesTranslateRegionReq 12 + typedef struct { CARD8 reqType; CARD8 xfixesReqType; diff --git a/xfixeswire.h b/xfixeswire.h index b0c8e19..3cb2730 100644 --- a/xfixeswire.h +++ b/xfixeswire.h @@ -44,20 +44,22 @@ #define X_XFixesCreateRegionFromPicture 9 #define X_XFixesDestroyRegion 10 #define X_XFixesSetRegion 11 -#define X_XFixesUnionRegion 12 -#define X_XFixesIntersectRegion 13 -#define X_XFixesSubtractRegion 14 -#define X_XFixesInvertRegion 15 -#define X_XFixesRegionExtents 16 -#define X_XFixesFetchRegion 17 -#define X_XFixesSetGCClipRegion 18 -#define X_XFixesSetWindowShapeRegion 19 -#define X_XFixesSetPictureClipRegion 20 -#define X_XFixesSetCursorName 21 -#define X_XFixesGetCursorName 22 -#define X_XFixesGetCursorImageAndName 23 -#define X_XFixesChangeCursor 24 -#define X_XFixesChangeCursorByName 25 +#define X_XFixesCopyRegion 12 +#define X_XFixesUnionRegion 13 +#define X_XFixesIntersectRegion 14 +#define X_XFixesSubtractRegion 15 +#define X_XFixesInvertRegion 16 +#define X_XFixesTranslateRegion 17 +#define X_XFixesRegionExtents 18 +#define X_XFixesFetchRegion 19 +#define X_XFixesSetGCClipRegion 20 +#define X_XFixesSetWindowShapeRegion 21 +#define X_XFixesSetPictureClipRegion 22 +#define X_XFixesSetCursorName 23 +#define X_XFixesGetCursorName 24 +#define X_XFixesGetCursorImageAndName 25 +#define X_XFixesChangeCursor 26 +#define X_XFixesChangeCursorByName 27 #define XFixesNumberRequests (X_XFixesChangeCursorByName+1) |