|
|
1.1 ! root 1: #include "copyright.h" ! 2: ! 3: /* $Header: XSetPntMap.c,v 11.3 87/09/11 08:10:00 toddb Exp $ */ ! 4: /* Copyright Massachusetts Institute of Technology 1986 */ ! 5: ! 6: #define NEED_REPLIES ! 7: ! 8: #include "Xlibint.h" ! 9: /* returns either DeviceMappingSuccess or DeviceMappingBusy */ ! 10: ! 11: int XSetPointerMapping (dpy, map, nmaps) ! 12: register Display *dpy; ! 13: unsigned char map[]; ! 14: int nmaps; ! 15: { ! 16: register xSetPointerMappingReq *req; ! 17: xSetPointerMappingReply rep; ! 18: ! 19: LockDisplay(dpy); ! 20: GetReq (SetPointerMapping, req); ! 21: req->nElts = nmaps; ! 22: req->length += (nmaps + 3)>>2; ! 23: Data (dpy, (char *)map, (long) nmaps); ! 24: if (_XReply (dpy, (xReply *)&rep, 0, xFalse) == 0) ! 25: rep.success = MappingSuccess; ! 26: UnlockDisplay(dpy); ! 27: SyncHandle(); ! 28: return ((int) rep.success); ! 29: } ! 30: ! 31: XChangeKeyboardMapping (dpy, first_keycode, keysyms_per_keycode, ! 32: keysyms, nkeycodes) ! 33: register Display *dpy; ! 34: int first_keycode; ! 35: int keysyms_per_keycode; ! 36: KeySym *keysyms; ! 37: int nkeycodes; ! 38: { ! 39: register int nbytes; ! 40: register xChangeKeyboardMappingReq *req; ! 41: ! 42: LockDisplay(dpy); ! 43: GetReq (ChangeKeyboardMapping, req); ! 44: req->firstKeyCode = first_keycode; ! 45: req->keyCodes = nkeycodes; ! 46: req->keySymsPerKeyCode = keysyms_per_keycode; ! 47: req->firstKeyCode = first_keycode; ! 48: req->length += nkeycodes * keysyms_per_keycode; ! 49: nbytes = keysyms_per_keycode * nkeycodes * sizeof (CARD32); ! 50: Data (dpy, (char *)keysyms, nbytes); ! 51: UnlockDisplay(dpy); ! 52: SyncHandle(); ! 53: return; ! 54: } ! 55:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.