1 XGETFEEDBACKCONTROL(libmansuffix)
2 =================================
7 XGetFeedbackControl, XChangeFeedbackControl - query and change
13 #include <X11/extensions/XInput.h>
15 XFeedbackState *XGetFeedbackControl( Display *display,
19 int XChangeFeedbackControl( Display *display,
22 XFeedbackControl *control);
25 Specifies the connection to the X server.
28 Specifies the device whose feedbacks are to be queried
32 Specifies an address into which the number of feedbacks
33 supported by thedevice is to be returned.
36 Specifies a mask specific to each type of feedback that
37 describes howthe feedback is to be modified.
40 Specifies the address of an XFeedbackControl structure
41 that containsthe new values for the feedback.
46 These requests are provided to manipulate those input devices
47 that support feedbacks. A BadMatch error will be generated if
48 the requested device does not support feedbacks. Whether or not
49 a given device supports feedbacks can be determined by
50 examining the information returned by the XOpenDevice request.
51 For those devices that support feedbacks, XOpenDevice will
52 return an XInputClassInfo structure with the input_class field
53 equal to the constant FeedbackClass (defined in the file XI.h).
55 The XGetFeedbackControl request returns a pointer to a list of
56 XFeedbackState structures. Each item in this list describes one
57 of the feedbacks supported by the device. The items are
58 variable length, so each contains its length to allow traversal
59 to the next item in the list.
61 The feedback classes that are currently defined are:
62 KbdFeedbackClass, PtrFeedbackClass, StringFeedbackClass,
63 IntegerFeedbackClass, LedFeedbackClass, and BellFeedbackClass.
64 These constants are defined in the file XI.h. An input device
65 may support zero or more classes of feedback, and may support
66 multiple feedbacks of the same class. Each feedback contains a
67 class identifier and an id that is unique within that class for
68 that input device. The id is used to identify the feedback when
69 making an XChangeFeedbackControl request.
71 XGetFeedbackControl can generate a BadDevice or BadMatch error.
73 The XChangeFeedbackControl request modifies the values of one
74 feedback on the specified device. The feedback is identified by
75 the id field of the XFeedbackControl structure that is passed
76 with the request. The fields of the feedback that are to be
77 modified are identified by the bits of the mask that is passed
80 XChangeFeedbackControl can generate a BadDevice, BadMatch, or
86 Each class of feedback is described by a structure specific to
87 that class. These structures are defined in the file XInput.h.
88 XFeedbackState and XFeedbackControl are generic structures that
89 contain three fields that are at the beginning of each class of
96 } XFeedbackState, XFeedbackControl;
98 The XKbdFeedbackState structure defines the attributes that are
99 returned for feedbacks equivalent to those on the X keyboard.
110 int global_auto_repeat;
111 char auto_repeats[32];
114 The XPtrFeedbackState structure defines the attributes that are
115 returned for feedbacks equivalent to those on the the X
127 The XIntegerFeedbackState structure defines attributes that are
128 returned for integer feedbacks.
137 } XIntegerFeedbackState;
139 The XStringFeedbackState structure defines the attributes that
140 are returned for string feedbacks.
147 int num_syms_supported;
148 KeySym *syms_supported;
149 } XStringFeedbackState;
151 The XBellFeedbackState structure defines the attributes that
152 are returned for bell feedbacks.
161 } XBellFeedbackState;
163 The XLedFeedbackState structure defines the attributes that are
164 returned for LED feedbacks.
173 The XPrtFeedbackControl structure defines the attributes that
174 can be controlled for pointer feedbacks.
183 } XPtrFeedbackControl;
185 The XKbdFeedbackControl structure defines the attributes that
186 can be controlled for keyboard feedbacks.
199 int auto_repeat_mode;
200 } XKbdFeedbackControl;
202 The XStringFeedbackControl structure defines the attributes
203 that can be controlled for string feedbacks.
210 KeySym *syms_to_display;
211 } XStringFeedbackControl;
213 The XIntegerFeedbackControl structure defines the attributes
214 that can be controlled for integer feedbacks.
221 } XIntegerFeedbackControl;
223 The XBellFeedbackControl structure defines the attributes that
224 can be controlled for bell feedbacks.
233 } XBellFeedbackControl;
235 The XLedFeedbackControl structure defines the attributes that
236 can be controlled for LED feedbacks.
244 } XLedFeedbackControl;
250 An invalid device was specified. The specified device
251 does not exist or has not been opened by this client via
252 XOpenInputDevice. This error may also occur if some
253 other client has caused the specified device to become
254 the X keyboard or X pointer device via the
255 XChangeKeyboardDevice or XChangePointerDevice requests.
258 This error may occur if an XGetFeedbackControl request
259 was made specifying a device that has no feedbacks, or
260 an XChangeFeedbackControl request was made with an
261 XFeedbackControl structure that contains an invalid
262 feedback type. It may also occur if an invalid
263 combination of mask bits is specified ( DvKey but no
264 DvAutoRepeatMode for keyboard feedbacks), or if an
265 invalid KeySym is specified for a string feedback.
268 Some numeric value falls outside the range of values
269 accepted by the XChangeFeedbackControl request. Unless a
270 specific range is specified for an argument, the full
271 range defined by the argument's type is accepted. Any
272 argument defined as a set of alternatives can generate