XQueryDeviceState(3XX1Version 11 (Release XQueryDeviceState(3X11)
NAME
XQueryDeviceState - query the state of an extension input
device.
SYNTAX
XQueryDeviceState(display, device)
Display *display;
XDevice *device;
ARGUMENTS
display Specifies the connection to the X server.
device Specifies the device whose state is to be
queried.
DESCRIPTION
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
information, and the current value if they are reporting
absolute information.
XQueryDeviceState can generate a BadDevice error.
STRUCTURES
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;
Page 1 (printed 7/20/06)
XQueryDeviceState(3XX1Version 11 (Release XQueryDeviceState(3X11)
char keys[32];
} XKeyState;
The XButtonState structure contains:
typedef struct {
unsigned char class;
unsigned char length;
short num_buttons;
char buttons[32];
} XButtonState;
DIAGNOSTICS
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.
SEE ALSO
Programming with Xlib
Page 2 (printed 7/20/06)