]>
NAME
SYNOPSIS
ARGUMENTS
DESCRIPTION
STRUCTURES
DIAGNOSTICS
SEE ALSO
XkbResizeDeviceButtonActions − Allocate additional space for button actions in an XkbDeviceInfoRec structure
Status XkbResizeDeviceButtonActions |
(XkbDeviceInfoPtr device_info, |
unsigned int new_total);
− device_info
structure in which to allocate button actions
− new_total
new total number of button actions needed
XkbResizeDeviceButtonActions reallocates space, if necessary, to make sure there is room for a total of new_total button actions in the device_info structure. Any new entries allocated are zeroed. If successful, XkbResizeDeviceButtonActions returns Success. If new_total is zero, all button actions are deleted, device_info->num_btns is set to zero, and device_info->btn_acts is set to NULL. If device_info is invalid or new_total is greater than 255, BadValue is returned. If a memory allocation failure occurs, a BadAlloc is returned.
To free an XkbDeviceInfoRec structure, use XkbFreeDeviceInfo.
Information about X Input Extension devices is transferred between a client program and the Xkb extension in an XkbDeviceInfoRec structure:
typedef struct
{
char * name; /∗ name for device */
Atom type; /∗ name for class of devices */
unsigned short device_spec; /∗ device of interest */
Bool has_own_state; /∗ True=>this device has its
own state */
unsigned short supported; /∗ bits indicating
supported capabilities */
unsigned short unsupported; /∗ bits indicating
unsupported capabilities */
unsigned short num_btns; /∗ number of entries in
btn_acts */
XkbAction * btn_acts; /∗ button actions */
unsigned short sz_leds; /∗ total number of entries in
LEDs vector */
unsigned short num_leds; /∗ number of valid entries
in LEDs vector */
unsigned short dflt_kbd_fb; /∗ input extension ID of
default (core kbd) indicator */
unsigned short dflt_led_fb; /∗ input extension ID of
default indicator feedback */
XkbDeviceLedInfoPtr leds; /∗ LED descriptions */
} XkbDeviceInfoRec, *XkbDeviceInfoPtr;
BadAlloc |
Unable to allocate storage |
|||
BadValue |
An argument is out of range |