MirBSD manpage: XGetDeviceButtonMapping(3), XSetDeviceButtonMapping(3)



     XSetDeviceButtonMapping, XGetDeviceButtonMapping - query or
     change device button mappings


     int XSetDeviceButtonMapping(Display *display, XDevice *dev-
          ice, unsigned char map[], int nmap);

     int XGetDeviceButtonMapping(Display *display, XDevice *dev-
          ice, unsigned char map_return[], int nmap);


     display     Specifies the connection to the X server.

     device      Specifies the device whose button mapping is to
                 be queried or changed.

     map         Specifies the mapping list.

     map_return  Returns the mapping list.

     nmap        Specifies the number of items in the mapping


     The XSetDeviceButtonMapping request sets the mapping of the
     specified device. If it succeeds, the X server generates a
     DeviceMappingNotify event, and XSetDeviceButtonMapping
     returns MappingSuccess. Element map[i] defines the logical
     button number for the physical button i+1. The length of the
     list must be the same as XGetDeviceButtonMapping would
     return, or a BadValue error results. A zero element disables
     a button, and elements are not restricted in value by the
     number of physical buttons. However, no two elements can
     have the same nonzero value, or a BadValue error results. If
     any of the buttons to be altered are logically in the down
     state, XSetDeviceButtonMapping returns MappingBusy, and the
     mapping is not changed.

     XSetDeviceButtonMapping can generate BadDevice, BadMatch,
     and  BadValue errors.

     The XGetDeviceButtonMapping request returns the current map-
     ping of the specified device. Buttons are numbered starting
     from one. XGetDeviceButtonMapping returns the number of phy-
     sical buttons actually on the device. The nominal mapping
     for a device is map[i]=i+1. The nmap argument specifies the
     length of the array where the device mapping is returned,
     and only the first nmap elements are returned in map_return.

     XGetDeviceButtonMapping can generate BadDevice or BadMatch

XFree86                   Version 4.5.0                         1



     BadDevice   An invalid device was specified.  The specified
                 device does not exist or has not been opened by
                 this client via XOpenInputDevice.  This error
                 may also occur if the specified device is the X
                 keyboard or X pointer device.

     BadMatch    This error may occur if an XGetDeviceButtonMap-
                 ping or XSetDeviceButtonMapping request was made
                 specifying a device that has no buttons.

     BadValue    Some numeric value falls outside the range of
                 values accepted by the request. Unless a
                 specific range is specified for an argument, the
                 full range defined by the argument's type is
                 accepted.  Any argument defined as a set of
                 alternatives can generate this error.


     Programming With Xlib

XFree86                   Version 4.5.0                         2

Generated on 2021-12-07 11:07:08 by $MirOS: src/scripts/roff2htm,v 1.103 2021/01/23 20:24:35 tg Exp $ — This product includes material provided by mirabilos.

These manual pages and other documentation are copyrighted by their respective writers; their sources are available at the project’s CVSweb, AnonCVS and other mirrors. The rest is Copyright © 2002–2021 MirBSD.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.