summaryrefslogtreecommitdiff
path: root/proto/xf86miscproto/xf86misc.h
blob: f5d7a5664d63e2e482dccb3e5c6a36b68e7808ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
/* $XFree86: xc/include/extensions/xf86misc.h,v 3.16 2002/11/20 04:04:56 dawes Exp $ */

/*
 * Copyright (c) 1995, 1996  The XFree86 Project, Inc
 */

/* THIS IS NOT AN X CONSORTIUM STANDARD */

#ifndef _XF86MISC_H_
#define _XF86MISC_H_

#include <X11/Xfuncproto.h>

#define X_XF86MiscQueryVersion		0
#ifdef _XF86MISC_SAVER_COMPAT_
#define X_XF86MiscGetSaver		1
#define X_XF86MiscSetSaver		2
#endif
#define X_XF86MiscGetMouseSettings	3
#define X_XF86MiscGetKbdSettings	4
#define X_XF86MiscSetMouseSettings	5
#define X_XF86MiscSetKbdSettings	6
#define X_XF86MiscSetGrabKeysState	7
#define X_XF86MiscSetClientVersion      8
#define X_XF86MiscGetFilePaths		9
#define X_XF86MiscPassMessage		10

#define XF86MiscNumberEvents		0

#define XF86MiscBadMouseProtocol	0
#define XF86MiscBadMouseBaudRate	1
#define XF86MiscBadMouseFlags		2
#define XF86MiscBadMouseCombo		3
#define XF86MiscBadKbdType		4
#define XF86MiscModInDevDisabled	5
#define XF86MiscModInDevClientNotLocal	6
#define XF86MiscNoModule                7
#define XF86MiscNumberErrors		(XF86MiscNoModule + 1)

/* Never renumber these */
#define MTYPE_MICROSOFT		0
#define MTYPE_MOUSESYS		1
#define MTYPE_MMSERIES		2
#define MTYPE_LOGITECH		3
#define MTYPE_BUSMOUSE		4
#define MTYPE_LOGIMAN		5
#define MTYPE_PS_2		6
#define MTYPE_MMHIT		7
#define MTYPE_GLIDEPOINT	8
#define MTYPE_IMSERIAL		9
#define MTYPE_THINKING		10
#define MTYPE_IMPS2		11
#define MTYPE_THINKINGPS2	12
#define MTYPE_MMANPLUSPS2	13
#define MTYPE_GLIDEPOINTPS2	14
#define MTYPE_NETPS2		15
#define MTYPE_NETSCROLLPS2	16
#define MTYPE_SYSMOUSE		17
#define MTYPE_AUTOMOUSE		18
#define MTYPE_ACECAD		19
#define MTYPE_EXPPS2            20

#define MTYPE_XQUEUE		127
#define MTYPE_OSMOUSE		126
#define MTYPE_UNKNOWN		125

#define KTYPE_UNKNOWN		0
#define KTYPE_84KEY		1
#define KTYPE_101KEY		2
#define KTYPE_OTHER		3
#define KTYPE_XQUEUE		4

#define MF_CLEAR_DTR		1
#define MF_CLEAR_RTS		2
#define MF_REOPEN		128

#ifndef _XF86MISC_SERVER_

/* return values for XF86MiscSetGrabKeysState */
#define MiscExtGrabStateSuccess	0	/* No errors */
#define MiscExtGrabStateLocked	1	/* A client already requested that
					 * grabs cannot be removed/killed */
#define MiscExtGrabStateAlready	2	/* Request for enabling/disabling
					 * grab removeal/kill already done */

_XFUNCPROTOBEGIN

typedef struct {
    char*	device;
    int		type;
    int		baudrate;
    int		samplerate;
    int		resolution;
    int		buttons;
    Bool	emulate3buttons;
    int		emulate3timeout;
    Bool	chordmiddle;
    int		flags;
} XF86MiscMouseSettings;

typedef struct {
    int		type;
    int		rate;
    int		delay;
    Bool	servnumlock;
} XF86MiscKbdSettings;

typedef struct {
    char*	configfile;
    char*	modulepath;
    char*	logfile;
} XF86MiscFilePaths;

Bool XF86MiscQueryVersion(
    Display*		/* dpy */,
    int*		/* majorVersion */,
    int*		/* minorVersion */
);

Bool XF86MiscQueryExtension(
    Display*		/* dpy */,
    int*		/* event_base */,
    int*		/* error_base */
);

Bool XF86MiscSetClientVersion(
    Display *dpy	/* dpy */
);

Status XF86MiscGetMouseSettings(
    Display*			/* dpy */,
    XF86MiscMouseSettings*	/* mouse info */
);

Status XF86MiscGetKbdSettings(
    Display*			/* dpy */,
    XF86MiscKbdSettings*	/* keyboard info */
);

Status XF86MiscSetMouseSettings(
    Display*			/* dpy */,
    XF86MiscMouseSettings*	/* mouse info */
);

Status XF86MiscSetKbdSettings(
    Display*			/* dpy */,
    XF86MiscKbdSettings*	/* keyboard info */
);

int XF86MiscSetGrabKeysState(
    Display*			/* dpy */,
    Bool			/* enabled */
);

Status XF86MiscGetFilePaths(
    Display*			/* dpy */,
    XF86MiscFilePaths*		/* file paths/locations */
);

Status XF86MiscPassMessage(
    Display*			/* dpy */,
    int				/* screen */,
    const char*			/* message name/type */,
    const char*			/* message contents/value */,
    char **			/* returned message */
);

_XFUNCPROTOEND

#endif

#endif