XQueryDeviceState(3X11) X FUNCTIONS XQueryDeviceState(3X11)
XQueryDeviceState - query the state of an extension input
device.
int XQueryDeviceState(Display *display, XDevice *device);
display Specifies the connection to the X server.
device Specifies the device whose state is to be
queried.
The XQueryDeviceState request queries the state of an input
device. The current state of keys and buttons (up or down),
and valuators (current value) on the device is reported by
this request. Each key or button is represented by a bit in
the XDeviceState structure that is returned. Valuators on
the device report 0 if they are reporting relative informa-
tion, and the current value if they are reporting absolute
information.
XQueryDeviceState can generate a BadDevice error.
The XDeviceState structure contains:
typedef struct {
XID device_id;
int num_classes;
XInputClass *data;
} XDeviceState;
The XValuatorState structure contains:
typedef struct {
unsigned char class;
unsigned char length;
unsigned char num_valuators;
unsigned char mode;
int *valuators;
} XValuatorState;
The XKeyState structure contains:
typedef struct {
unsigned char class;
unsigned char length;
short num_keys;
char keys[32];
} XKeyState;
XFree86 Version 4.5.0 1
XQueryDeviceState(3X11) X FUNCTIONS XQueryDeviceState(3X11)
The XButtonState structure contains:
typedef struct {
unsigned char class;
unsigned char length;
short num_buttons;
char buttons[32];
} XButtonState;
BadDevice An invalid device was specified. The specified
device does not exist or has not been opened by
this client via XOpenInputDevice. This error
may also occur if some other client has caused
the specified device to become the X keyboard or
X pointer device via the XChangeKeyboardDevice
or XChangePointerDevice requests.
Programming with Xlib
XFree86 Version 4.5.0 2
Generated on 2012-02-20 02:47:02 by $MirOS: src/scripts/roff2htm,v 1.70 2011/12/03 18:21:12 tg Exp $
These manual pages and other documentation are copyrighted by their respective writers;
their source is available at our CVSweb,
AnonCVS, and other mirrors. The rest is Copyright © 2002‒2011 The MirOS Project, Germany.
This product includes material
provided by Thorsten Glaser.
This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.