2 .\" Title: xgetdevicecontrol
3 .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
4 .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
6 .\" Manual: [FIXME: manual]
7 .\" Source: [FIXME: source]
10 .TH "XGETDEVICECONTROL" "libmansuffix" "09/23/2011" "[FIXME: source]" "[FIXME: manual]"
11 .\" -----------------------------------------------------------------
12 .\" * Define some portability stuff
13 .\" -----------------------------------------------------------------
14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 .\" http://bugs.debian.org/507673
16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
20 .\" -----------------------------------------------------------------
21 .\" * set default formatting
22 .\" -----------------------------------------------------------------
23 .\" disable hyphenation
25 .\" disable justification (adjust text to left margin only)
27 .\" -----------------------------------------------------------------
28 .\" * MAIN CONTENT STARTS HERE *
29 .\" -----------------------------------------------------------------
31 XGetDeviceControl, XChangeDeviceControl \- query and change input device controls
35 #include <X11/extensions/XInput\&.h>
39 XDeviceControl *XGetDeviceControl( Display *display,
45 int XChangeDeviceControl( Display *display,
48 XDeviceControl *control);
53 Specifies the connection to the X server\&.
58 Specifies the device whose control is to be interrogated
64 Specifies the type of control to be interrogated or
70 Specifies the address of an XDeviceControl structure
71 that contains the new values for the Device\&.
79 These requests are provided to manipulate those input devices
80 that support device control\&. A BadMatch error will be generated
81 if the requested device does not support any device controls\&.
91 Valid device control types that can be used with these requests
92 include the following:
102 DEVICE_RESOLUTION Queries or changes the resolution of
103 valuators on input devices\&.
113 The XGetDeviceControl request returns a pointer to an
114 XDeviceControl structure\&.
124 XGetDeviceControl can generate a BadDevice or BadMatch error\&.
134 The XChangeDeviceControl request modifies the values of one
135 control on the specified device\&. The control is identified by
136 the id field of the XDeviceControl structure that is passed
147 XChangeDeviceControl can generate a BadDevice, BadMatch, or
148 BadValue error\&.\&.SH STRUCTURES Each control is described by a
149 structure specific to that control\&. These structures are
150 defined in the file XInput\&.h\&.
160 XDeviceControl is a generic structure that contains two fields
161 that are at the beginning of each class of control:
184 The XDeviceResolutionState structure defines the information
185 that is returned for device resolution for devices with
201 int* min_resolutions;
202 int* max_resolutions;
203 } XDeviceResolutionState;
213 The XDeviceResolutionControl structure defines the attributes
214 that can be controlled for keyboard Devices\&.
230 } XDeviceResolutionControl;
242 An invalid device was specified\&. The specified device
243 does not exist or has not been opened by this client via
244 XOpenInputDevice\&. This error may also occur if some
245 other client has caused the specified device to become
246 the X keyboard or X pointer device via the
247 XChangeKeyboardDevice or XChangePointerDevice requests\&.
258 This error may occur if an XGetDeviceControl request was
259 made specifying a device that has no controls or an
260 XChangeDeviceControl request was made with an
261 XDeviceControl structure that contains an invalid Device
262 type\&. It may also occur if an invalid combination of
263 mask bits is specified ( DvKey but no DvAutoRepeatMode
264 for keyboard Devices), or if an invalid KeySym is
265 specified for a string Device\&.
276 Some numeric value falls outside the range of values
277 accepted by the XChangeDeviceControl request\&. Unless a
278 specific range is specified for an argument, the full
279 range defined by the argument\*(Aqs type is accepted\&. Any
280 argument defined as a set of alternatives can generate