NAME
       XkbGetDeviceButtonActions - Query the button actions associated with an
       X Input Extension device
SYNOPSIS
       Status  XkbGetDeviceButtonActions   (Display   *dpy,   XkbDeviceInfoPtr
              device_info,   Bool   all_buttons,  unsigned  int  first_button,
              unsigned int num_buttons);
ARGUMENTS
       - dpy  connection to X server
       - device_info
              structure to update with results
       - all_buttons
              True => get information for all buttons
       - first_button
              number of first button for which info is desired
       - num_buttons
              number of buttons for which info is desired
DESCRIPTION
       XkbGetDeviceButtonActions queries the server  for  the  desired  button
       information  for  the  device  indicated  by  the  device_spec field of
       device_info    and    waits    for    a    reply.    If     successful,
       XkbGetDeviceButtonActions  backfills the button actions (btn_acts field
       of device_info) for only the requested buttons, updates the name, type,
       supported, and unsupported fields, and returns Success.
       all_buttons,  first_button  and  num_buttons specify the device buttons
       for which actions should  be  returned.  Setting  all_buttons  to  True
       requests  actions  for  all  device  buttons;  if all_buttons is False,
       first_button and num_buttons specify  a  range  of  buttons  for  which
       actions are requested.
       If  a  compatible  version of Xkb is not available in the server or the
       Xkb    extension     has     not     been     properly     initialized,
       XkbGetDeviceButtonActions   returns  BadAccess.  If  allocation  errors
       occur,  a  BadAlloc  status  is  returned.  If  the  specified   device
       (device_info->device_spec)   is   invalid,   a  BadKeyboard  status  is
       returned. If the device has no buttons, a BadMatch status is  returned.
       If  first_button  and  num_buttons  specify illegal buttons, a BadValue
       status is returned.
DIAGNOSTICS
       BadAccess      The Xkb extension has not been properly initialized
       BadAlloc       Unable to allocate storage
       BadKeyboard    The device specified was  not  a  valid  core  or  input
                      extension device
       BadMatch       A  compatible  version  of  Xkb was not available in the
                      server or an argument has correct type and range, but is
                      otherwise invalid
       BadValue       An argument is out of range