Provided by: libx11-doc_1.8.7-1build1_all bug

NAME

       XkbResizeDeviceButtonActions  -  Allocate  additional  space  for  button  actions  in  an
       XkbDeviceInfoRec structure

SYNOPSIS

       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

SEE ALSO

       XkbFreeDeviceInfo(3)