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
 

