XkbResizeDeviceButtonActions (3)
Leading comments
Copyright 1999 Oracle and/or its affiliates. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following condition...
NAME
XkbResizeDeviceButtonActions - Allocate additional space for button actions in an XkbDeviceInfoRec structureSYNOPSIS
-
Status XkbResizeDeviceButtonActions
(XkbDeviceInfoPtr device_info,
unsigned int new_total);
ARGUMENTS
- - device_info
-
- structure in which to allocate button actions
- - new_total
- new total number of button actions needed
DESCRIPTION
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.
STRUCTURES
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;
DIAGNOSTICS
- BadAlloc
- Unable to allocate storage
- BadValue
- An argument is out of range