VirtualBox

source: vbox/trunk/src/VBox/Additions/linux/x11include/4.2/include/extensions/shapestr.h@ 1

Last change on this file since 1 was 1, checked in by vboxsync, 55 years ago

import

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 6.8 KB
Line 
1/************************************************************
2
3Copyright 1989, 1998 The Open Group
4
5Permission to use, copy, modify, distribute, and sell this software and its
6documentation for any purpose is hereby granted without fee, provided that
7the above copyright notice appear in all copies and that both that
8copyright notice and this permission notice appear in supporting
9documentation.
10
11The above copyright notice and this permission notice shall be included in
12all copies or substantial portions of the Software.
13
14THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
18AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20
21Except as contained in this notice, the name of The Open Group shall not be
22used in advertising or otherwise to promote the sale, use or other dealings
23in this Software without prior written authorization from The Open Group.
24
25********************************************************/
26
27/* $Xorg: shapestr.h,v 1.4 2001/02/09 02:03:24 xorgcvs Exp $ */
28
29#ifndef _SHAPESTR_H_
30#define _SHAPESTR_H_
31
32/*
33 * Protocol requests constants and alignment values
34 * These would really be in SHAPE's X.h and Xproto.h equivalents
35 */
36
37#include "shape.h"
38
39#define Window CARD32
40#define Time CARD32
41
42#define SHAPENAME "SHAPE"
43
44#define SHAPE_MAJOR_VERSION 1 /* current version numbers */
45#define SHAPE_MINOR_VERSION 0
46
47typedef struct _ShapeQueryVersion {
48 CARD8 reqType; /* always ShapeReqCode */
49 CARD8 shapeReqType; /* always X_ShapeQueryVersion */
50 CARD16 length B16;
51} xShapeQueryVersionReq;
52#define sz_xShapeQueryVersionReq 4
53
54typedef struct {
55 BYTE type; /* X_Reply */
56 CARD8 unused; /* not used */
57 CARD16 sequenceNumber B16;
58 CARD32 length B32;
59 CARD16 majorVersion B16; /* major version of SHAPE protocol */
60 CARD16 minorVersion B16; /* minor version of SHAPE protocol */
61 CARD32 pad0 B32;
62 CARD32 pad1 B32;
63 CARD32 pad2 B32;
64 CARD32 pad3 B32;
65 CARD32 pad4 B32;
66} xShapeQueryVersionReply;
67#define sz_xShapeQueryVersionReply 32
68
69typedef struct _ShapeRectangles {
70 CARD8 reqType; /* always ShapeReqCode */
71 CARD8 shapeReqType; /* always X_ShapeRectangles */
72 CARD16 length B16;
73 CARD8 op; /* Set, ... */
74 CARD8 destKind; /* ShapeBounding or ShapeClip */
75 CARD8 ordering; /* UnSorted, YSorted, YXSorted, YXBanded */
76 CARD8 pad0; /* not used */
77 Window dest B32;
78 INT16 xOff B16;
79 INT16 yOff B16;
80} xShapeRectanglesReq; /* followed by xRects */
81#define sz_xShapeRectanglesReq 16
82
83typedef struct _ShapeMask {
84 CARD8 reqType; /* always ShapeReqCode */
85 CARD8 shapeReqType; /* always X_ShapeMask */
86 CARD16 length B16;
87
88 CARD8 op; /* Set, ... */
89 CARD8 destKind; /* ShapeBounding or ShapeClip */
90 CARD16 junk B16; /* not used */
91
92 Window dest B32;
93 INT16 xOff B16;
94 INT16 yOff B16;
95 CARD32 src B32; /* 1 bit pixmap */
96} xShapeMaskReq;
97#define sz_xShapeMaskReq 20
98
99typedef struct _ShapeCombine {
100 CARD8 reqType; /* always ShapeReqCode */
101 CARD8 shapeReqType; /* always X_ShapeCombine */
102 CARD16 length B16;
103 CARD8 op; /* Set, ... */
104 CARD8 destKind; /* ShapeBounding or ShapeClip */
105 CARD8 srcKind; /* ShapeBounding or ShapeClip */
106 CARD8 junk; /* not used */
107 Window dest B32;
108 INT16 xOff B16;
109 INT16 yOff B16;
110 Window src B32;
111} xShapeCombineReq;
112#define sz_xShapeCombineReq 20
113
114typedef struct _ShapeOffset {
115 CARD8 reqType; /* always ShapeReqCode */
116 CARD8 shapeReqType; /* always X_ShapeOffset */
117 CARD16 length B16;
118 CARD8 destKind; /* ShapeBounding or ShapeClip */
119 CARD8 junk1; /* not used */
120 CARD16 junk2 B16; /* not used */
121 Window dest B32;
122 INT16 xOff B16;
123 INT16 yOff B16;
124} xShapeOffsetReq;
125#define sz_xShapeOffsetReq 16
126
127typedef struct _ShapeQueryExtents {
128 CARD8 reqType; /* always ShapeReqCode */
129 CARD8 shapeReqType; /* always X_ShapeQueryExtents */
130 CARD16 length B16;
131 Window window B32;
132} xShapeQueryExtentsReq;
133#define sz_xShapeQueryExtentsReq 8
134
135typedef struct {
136 BYTE type; /* X_Reply */
137 CARD8 unused; /* not used */
138 CARD16 sequenceNumber B16;
139 CARD32 length B32; /* 0 */
140 CARD8 boundingShaped; /* window has bounding shape */
141 CARD8 clipShaped; /* window has clip shape */
142 CARD16 unused1 B16;
143 INT16 xBoundingShape B16; /* extents of bounding shape */
144 INT16 yBoundingShape B16;
145 CARD16 widthBoundingShape B16;
146 CARD16 heightBoundingShape B16;
147 INT16 xClipShape B16; /* extents of clip shape */
148 INT16 yClipShape B16;
149 CARD16 widthClipShape B16;
150 CARD16 heightClipShape B16;
151 CARD32 pad1 B32;
152} xShapeQueryExtentsReply;
153#define sz_xShapeQueryExtentsReply 32
154
155typedef struct _ShapeSelectInput {
156 CARD8 reqType; /* always ShapeReqCode */
157 CARD8 shapeReqType; /* always X_ShapeSelectInput */
158 CARD16 length B16;
159 Window window B32;
160 BYTE enable; /* xTrue -> send events */
161 BYTE pad1;
162 CARD16 pad2 B16;
163} xShapeSelectInputReq;
164#define sz_xShapeSelectInputReq 12
165
166typedef struct _ShapeNotify {
167 BYTE type; /* always eventBase + ShapeNotify */
168 BYTE kind; /* either ShapeBounding or ShapeClip */
169 CARD16 sequenceNumber B16;
170 Window window B32;
171 INT16 x B16;
172 INT16 y B16; /* extents of new shape */
173 CARD16 width B16;
174 CARD16 height B16;
175 Time time B32; /* time of change */
176 BYTE shaped; /* set when a shape actual exists */
177 BYTE pad0;
178 CARD16 pad1 B16;
179 CARD32 pad2 B32;
180 CARD32 pad3 B32;
181} xShapeNotifyEvent;
182#define sz_xShapeNotifyEvent 32
183
184typedef struct _ShapeInputSelected {
185 CARD8 reqType; /* always ShapeReqCode */
186 CARD8 shapeReqType; /* always X_ShapeInputSelected */
187 CARD16 length B16;
188 Window window B32;
189} xShapeInputSelectedReq;
190#define sz_xShapeInputSelectedReq 8
191
192typedef struct {
193 BYTE type; /* X_Reply */
194 CARD8 enabled; /* current status */
195 CARD16 sequenceNumber B16;
196 CARD32 length B32; /* 0 */
197 CARD32 pad1 B32; /* unused */
198 CARD32 pad2 B32;
199 CARD32 pad3 B32;
200 CARD32 pad4 B32;
201 CARD32 pad5 B32;
202 CARD32 pad6 B32;
203} xShapeInputSelectedReply;
204#define sz_xShapeInputSelectedReply 32
205
206typedef struct _ShapeGetRectangles {
207 CARD8 reqType; /* always ShapeReqCode */
208 CARD8 shapeReqType; /* always X_ShapeGetRectangles */
209 CARD16 length B16;
210 Window window B32;
211 CARD8 kind; /* ShapeBounding or ShapeClip */
212 CARD8 junk1;
213 CARD16 junk2 B16;
214} xShapeGetRectanglesReq;
215#define sz_xShapeGetRectanglesReq 12
216
217typedef struct {
218 BYTE type; /* X_Reply */
219 CARD8 ordering; /* UnSorted, YSorted, YXSorted, YXBanded */
220 CARD16 sequenceNumber B16;
221 CARD32 length B32; /* not zero */
222 CARD32 nrects B32; /* number of rectangles */
223 CARD32 pad1 B32;
224 CARD32 pad2 B32;
225 CARD32 pad3 B32;
226 CARD32 pad4 B32;
227 CARD32 pad5 B32;
228} xShapeGetRectanglesReply; /* followed by xRectangles */
229#define sz_xShapeGetRectanglesReply 32
230
231#undef Window
232#undef Time
233
234#endif /* _SHAPESTR_H_ */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette