179 lines
5.1 KiB
C
179 lines
5.1 KiB
C
|
/*
|
||
|
Copyright 1996, 1998, 2001 The Open Group
|
||
|
|
||
|
Permission to use, copy, modify, distribute, and sell this software and its
|
||
|
documentation for any purpose is hereby granted without fee, provided that
|
||
|
the above copyright notice appear in all copies and that both that
|
||
|
copyright notice and this permission notice appear in supporting
|
||
|
documentation.
|
||
|
|
||
|
The above copyright notice and this permission notice shall be included
|
||
|
in all copies or substantial portions of the Software.
|
||
|
|
||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||
|
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||
|
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||
|
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||
|
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||
|
OTHER DEALINGS IN THE SOFTWARE.
|
||
|
|
||
|
Except as contained in this notice, the name of The Open Group shall
|
||
|
not be used in advertising or otherwise to promote the sale, use or
|
||
|
other dealings in this Software without prior written authorization
|
||
|
from The Open Group.
|
||
|
*/
|
||
|
|
||
|
#ifndef _AGPROTO_H_ /* { */
|
||
|
#define _AGPROTO_H_
|
||
|
|
||
|
#include <X11/extensions/ag.h>
|
||
|
|
||
|
#define X_XagQueryVersion 0
|
||
|
#define X_XagCreate 1
|
||
|
#define X_XagDestroy 2
|
||
|
#define X_XagGetAttr 3
|
||
|
#define X_XagQuery 4
|
||
|
#define X_XagCreateAssoc 5
|
||
|
#define X_XagDestroyAssoc 6
|
||
|
|
||
|
#define XAppGroup CARD32
|
||
|
|
||
|
/*
|
||
|
* Redefine some basic types used by structures defined herein. This allows
|
||
|
* both the library and server to view communicated data as 32-bit entities,
|
||
|
* thus preventing problems on 64-bit architectures where libXext sees this
|
||
|
* data as 64 bits and the server sees it as 32 bits.
|
||
|
*/
|
||
|
|
||
|
#define Colormap CARD32
|
||
|
#define VisualID CARD32
|
||
|
#define Window CARD32
|
||
|
|
||
|
typedef struct _XagQueryVersion {
|
||
|
CARD8 reqType; /* always XagReqCode */
|
||
|
CARD8 xagReqType; /* always X_XagQueryVersion */
|
||
|
CARD16 length B16;
|
||
|
CARD16 client_major_version B16;
|
||
|
CARD16 client_minor_version B16;
|
||
|
} xXagQueryVersionReq;
|
||
|
#define sz_xXagQueryVersionReq 8
|
||
|
|
||
|
typedef struct {
|
||
|
BYTE type; /* X_Reply */
|
||
|
BOOL pad1;
|
||
|
CARD16 sequence_number B16;
|
||
|
CARD32 length B32;
|
||
|
CARD16 server_major_version B16;
|
||
|
CARD16 server_minor_version B16;
|
||
|
CARD32 pad2 B32;
|
||
|
CARD32 pad3 B32;
|
||
|
CARD32 pad4 B32;
|
||
|
CARD32 pad5 B32;
|
||
|
CARD32 pad6 B32;
|
||
|
} xXagQueryVersionReply;
|
||
|
#define sz_xXagQueryVersionReply 32
|
||
|
|
||
|
/* Set AppGroup Attributes masks */
|
||
|
#define XagSingleScreenMask 1 << 0
|
||
|
#define XagDefaultRootMask 1 << XagNdefaultRoot
|
||
|
#define XagRootVisualMask 1 << XagNrootVisual
|
||
|
#define XagDefaultColormapMask 1 << XagNdefaultColormap
|
||
|
#define XagBlackPixelMask 1 << XagNblackPixel
|
||
|
#define XagWhitePixelMask 1 << XagNwhitePixel
|
||
|
#define XagAppGroupLeaderMask 1 << XagNappGroupLeader
|
||
|
|
||
|
typedef struct _XagCreate {
|
||
|
CARD8 reqType; /* always XagReqCode */
|
||
|
CARD8 xagReqType; /* always X_XagCreate */
|
||
|
CARD16 length B16;
|
||
|
XAppGroup app_group B32;
|
||
|
CARD32 attrib_mask B32; /* LISTofVALUE follows */
|
||
|
} xXagCreateReq;
|
||
|
#define sz_xXagCreateReq 12
|
||
|
|
||
|
typedef struct _XagDestroy {
|
||
|
CARD8 reqType; /* always XagReqCode */
|
||
|
CARD8 xagReqType; /* always X_XagDestroy */
|
||
|
CARD16 length B16;
|
||
|
XAppGroup app_group B32;
|
||
|
} xXagDestroyReq;
|
||
|
#define sz_xXagDestroyReq 8
|
||
|
|
||
|
typedef struct _XagGetAttr {
|
||
|
CARD8 reqType; /* always XagReqCode */
|
||
|
CARD8 xagReqType; /* always X_XagGetAttr */
|
||
|
CARD16 length B16;
|
||
|
XAppGroup app_group B32;
|
||
|
} xXagGetAttrReq;
|
||
|
#define sz_xXagGetAttrReq 8
|
||
|
|
||
|
typedef struct {
|
||
|
BYTE type; /* X_Reply */
|
||
|
BOOL pad1;
|
||
|
CARD16 sequence_number B16;
|
||
|
CARD32 length B32;
|
||
|
Window default_root B32;
|
||
|
VisualID root_visual B32;
|
||
|
Colormap default_colormap B32;
|
||
|
CARD32 black_pixel B32;
|
||
|
CARD32 white_pixel B32;
|
||
|
BOOL single_screen;
|
||
|
BOOL app_group_leader;
|
||
|
CARD16 pad2 B16;
|
||
|
} xXagGetAttrReply;
|
||
|
#define sz_xXagGetAttrReply 32
|
||
|
|
||
|
typedef struct _XagQuery {
|
||
|
CARD8 reqType; /* always XagReqCode */
|
||
|
CARD8 xagReqType; /* always X_XagQuery */
|
||
|
CARD16 length B16;
|
||
|
CARD32 resource B32;
|
||
|
} xXagQueryReq;
|
||
|
#define sz_xXagQueryReq 8
|
||
|
|
||
|
typedef struct {
|
||
|
BYTE type; /* X_Reply */
|
||
|
BOOL pad1;
|
||
|
CARD16 sequence_number B16;
|
||
|
CARD32 length B32;
|
||
|
XAppGroup app_group B32;
|
||
|
CARD32 pad2 B32;
|
||
|
CARD32 pad3 B32;
|
||
|
CARD32 pad4 B32;
|
||
|
CARD32 pad5 B32;
|
||
|
CARD32 pad6 B32;
|
||
|
} xXagQueryReply;
|
||
|
#define sz_xXagQueryReply 32
|
||
|
|
||
|
typedef struct _XagCreateAssoc {
|
||
|
CARD8 reqType; /* always XagReqCode */
|
||
|
CARD8 xagReqType; /* always X_XagCreateAssoc */
|
||
|
CARD16 length B16;
|
||
|
Window window B32;
|
||
|
CARD16 window_type B16;
|
||
|
CARD16 system_window_len B16; /* LISTofCARD8 follows */
|
||
|
} xXagCreateAssocReq;
|
||
|
#define sz_xXagCreateAssocReq 12
|
||
|
|
||
|
typedef struct _XagDestroyAssoc {
|
||
|
CARD8 reqType; /* always XagReqCode */
|
||
|
CARD8 xagReqType; /* always X_XagDestroyAssoc */
|
||
|
CARD16 length B16;
|
||
|
Window window B32;
|
||
|
} xXagDestroyAssocReq;
|
||
|
#define sz_xXagDestroyAssocReq 8
|
||
|
|
||
|
#undef XAppGroup
|
||
|
/*
|
||
|
* Cancel the previous redefinition of the basic types, thus restoring their
|
||
|
* X.h definitions.
|
||
|
*/
|
||
|
|
||
|
#undef Window
|
||
|
#undef Colormap
|
||
|
#undef VisualID
|
||
|
|
||
|
#endif /* } _AGPROTO_H_ */
|
||
|
|