2 * $XConsortium: saverproto.h,v 1.5 94/04/17 20:59:33 keith Exp $
4 Copyright (c) 1992 X Consortium
6 Permission is hereby granted, free of charge, to any person obtaining a copy
7 of this software and associated documentation files (the "Software"), to deal
8 in the Software without restriction, including without limitation the rights
9 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 copies of the Software, and to permit persons to whom the Software is
11 furnished to do so, subject to the following conditions:
13 The above copyright notice and this permission notice shall be included in
14 all copies or substantial portions of the Software.
16 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
20 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
21 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 Except as contained in this notice, the name of the X Consortium shall not be
24 used in advertising or otherwise to promote the sale, use or other dealings
25 in this Software without prior written authorization from the X Consortium.
27 * Author: Keith Packard, MIT X Consortium
30 #ifndef _SAVERPROTO_H_
31 #define _SAVERPROTO_H_
34 #define X_ScreenSaverQueryVersion 0
36 typedef struct _ScreenSaverQueryVersion {
37 CARD8 reqType; /* always ScreenSaverReqCode */
38 CARD8 saverReqType; /* always X_ScreenSaverQueryVersion */
43 } xScreenSaverQueryVersionReq;
44 #define sz_xScreenSaverQueryVersionReq 8
47 CARD8 type; /* X_Reply */
48 CARD8 unused; /* not used */
49 CARD16 sequenceNumber B16;
51 CARD16 majorVersion B16; /* major version of protocol */
52 CARD16 minorVersion B16; /* minor version of protocol */
58 } xScreenSaverQueryVersionReply;
59 #define sz_xScreenSaverQueryVersionReply 32
61 #define X_ScreenSaverQueryInfo 1
63 typedef struct _ScreenSaverQueryInfo {
64 CARD8 reqType; /* always ScreenSaverReqCode */
65 CARD8 saverReqType; /* always X_ScreenSaverQueryInfo */
67 Drawable drawable B32;
68 } xScreenSaverQueryInfoReq;
69 #define sz_xScreenSaverQueryInfoReq 8
72 CARD8 type; /* X_Reply */
73 BYTE state; /* Off, On */
74 CARD16 sequenceNumber B16;
77 CARD32 tilOrSince B32;
80 BYTE kind; /* Blanked, Internal, External */
84 } xScreenSaverQueryInfoReply;
85 #define sz_xScreenSaverQueryInfoReply 32
87 #define X_ScreenSaverSelectInput 2
89 typedef struct _ScreenSaverSelectInput {
90 CARD8 reqType; /* always ScreenSaverReqCode */
91 CARD8 saverReqType; /* always X_ScreenSaverSelectInput */
93 Drawable drawable B32;
95 } xScreenSaverSelectInputReq;
96 #define sz_xScreenSaverSelectInputReq 12
98 #define X_ScreenSaverSetAttributes 3
100 typedef struct _ScreenSaverSetAttributes {
101 CARD8 reqType; /* always ScreenSaverReqCode */
102 CARD8 saverReqType; /* always X_ScreenSaverSetAttributes */
104 Drawable drawable B32;
106 CARD16 width B16, height B16, borderWidth B16;
109 VisualID visualID B32;
111 } xScreenSaverSetAttributesReq;
112 #define sz_xScreenSaverSetAttributesReq 28
114 #define X_ScreenSaverUnsetAttributes 4
116 typedef struct _ScreenSaverUnsetAttributes {
117 CARD8 reqType; /* always ScreenSaverReqCode */
118 CARD8 saverReqType; /* always X_ScreenSaverUnsetAttributes */
120 Drawable drawable B32;
121 } xScreenSaverUnsetAttributesReq;
122 #define sz_xScreenSaverUnsetAttributesReq 8
124 typedef struct _ScreenSaverNotify {
125 CARD8 type; /* always eventBase + ScreenSaverNotify */
126 BYTE state; /* off, on, cycle */
127 CARD16 sequenceNumber B16;
130 Window window B32; /* screen saver window */
131 BYTE kind; /* blanked, internal, external */
137 } xScreenSaverNotifyEvent;
138 #define sz_xScreenSaverNotifyEvent 32
140 #endif /* _SAVERPROTO_H_ */