Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

NAME

XSetPointerMapping − set the pointer button mapping. 

Synopsis

int XSetPointerMapping(display, map, nmap)
Display *display;
unsigned char map[];
int nmap;

Arguments

displaySpecifies a connection to an X server; returned from XOpenDisplay(). 

mapSpecifies the mapping list. 

nmapSpecifies the number of items in the mapping list. 

Description

XSetPointerMapping() sets the mapping of the pointer buttons.  Elements of the map list are indexed starting from 1.  The length of the list nmap must be the same as XGetPointerMapping() returns (you must call that first).  The index is a physical button number, and the element of the list defines the effective button number.  In other words, if map[2] is set to 1, when the second physical button is pressed, a ButtonPress event will be generated if Button1Mask was selected but not if Button2Mask was selected.  The button member in the event will read Button1.  No two elements can have the same nonzero value (else a BadValue error).  A value of zero for an element of map disables a button, and values for elements are not restricted in value by the number of physical buttons.  If any of the buttons to be altered are currently in the down state, the returned value is MappingBusy and the mapping is not changed.  This function returns either MappingSuccess or MappingBusy.  XSetPointerMapping() generates a MappingNotify event when it returns MappingSuccess. 

Errors

BadValueTwo elements of map[] have same nonzero value.  nmap not equal to XGetPointerMapping() return value. 

See Also

XChangeActivePointerGrab(), XChangePointerControl(), XGetPointerControl(), XGetPointerMapping(), XGrabPointer(), XQueryPointer(), XUngrabPointer(), XWarpPointer(). 

Copyright O’Reilly & Assoc.  —  

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026