exevents.h revision 05b261ec
105b261ecSmrg/************************************************************ 205b261ecSmrg 305b261ecSmrgCopyright 1996 by Thomas E. Dickey <dickey@clark.net> 405b261ecSmrg 505b261ecSmrg All Rights Reserved 605b261ecSmrg 705b261ecSmrgPermission to use, copy, modify, and distribute this software and its 805b261ecSmrgdocumentation for any purpose and without fee is hereby granted, 905b261ecSmrgprovided that the above copyright notice appear in all copies and that 1005b261ecSmrgboth that copyright notice and this permission notice appear in 1105b261ecSmrgsupporting documentation, and that the name of the above listed 1205b261ecSmrgcopyright holder(s) not be used in advertising or publicity pertaining 1305b261ecSmrgto distribution of the software without specific, written prior 1405b261ecSmrgpermission. 1505b261ecSmrg 1605b261ecSmrgTHE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD 1705b261ecSmrgTO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 1805b261ecSmrgAND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE 1905b261ecSmrgLIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 2005b261ecSmrgWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 2105b261ecSmrgACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 2205b261ecSmrgOR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 2305b261ecSmrg 2405b261ecSmrg********************************************************/ 2505b261ecSmrg 2605b261ecSmrg/******************************************************************** 2705b261ecSmrg * Interface of 'exevents.c' 2805b261ecSmrg */ 2905b261ecSmrg 3005b261ecSmrg#ifndef EXEVENTS_H 3105b261ecSmrg#define EXEVENTS_H 3205b261ecSmrg 3305b261ecSmrg#include <X11/extensions/XIproto.h> 3405b261ecSmrg 3505b261ecSmrgextern void RegisterOtherDevice ( 3605b261ecSmrg DeviceIntPtr /* device */); 3705b261ecSmrg 3805b261ecSmrgextern void ProcessOtherEvent ( 3905b261ecSmrg xEventPtr /* FIXME deviceKeyButtonPointer * xE */, 4005b261ecSmrg DeviceIntPtr /* other */, 4105b261ecSmrg int /* count */); 4205b261ecSmrg 4305b261ecSmrgextern int InitProximityClassDeviceStruct( 4405b261ecSmrg DeviceIntPtr /* dev */); 4505b261ecSmrg 4605b261ecSmrgextern void InitValuatorAxisStruct( 4705b261ecSmrg DeviceIntPtr /* dev */, 4805b261ecSmrg int /* axnum */, 4905b261ecSmrg int /* minval */, 5005b261ecSmrg int /* maxval */, 5105b261ecSmrg int /* resolution */, 5205b261ecSmrg int /* min_res */, 5305b261ecSmrg int /* max_res */); 5405b261ecSmrg 5505b261ecSmrgextern void DeviceFocusEvent( 5605b261ecSmrg DeviceIntPtr /* dev */, 5705b261ecSmrg int /* type */, 5805b261ecSmrg int /* mode */, 5905b261ecSmrg int /* detail */, 6005b261ecSmrg WindowPtr /* pWin */); 6105b261ecSmrg 6205b261ecSmrgextern int GrabButton( 6305b261ecSmrg ClientPtr /* client */, 6405b261ecSmrg DeviceIntPtr /* dev */, 6505b261ecSmrg BYTE /* this_device_mode */, 6605b261ecSmrg BYTE /* other_devices_mode */, 6705b261ecSmrg CARD16 /* modifiers */, 6805b261ecSmrg DeviceIntPtr /* modifier_device */, 6905b261ecSmrg CARD8 /* button */, 7005b261ecSmrg Window /* grabWindow */, 7105b261ecSmrg BOOL /* ownerEvents */, 7205b261ecSmrg Cursor /* rcursor */, 7305b261ecSmrg Window /* rconfineTo */, 7405b261ecSmrg Mask /* eventMask */); 7505b261ecSmrg 7605b261ecSmrgextern int GrabKey( 7705b261ecSmrg ClientPtr /* client */, 7805b261ecSmrg DeviceIntPtr /* dev */, 7905b261ecSmrg BYTE /* this_device_mode */, 8005b261ecSmrg BYTE /* other_devices_mode */, 8105b261ecSmrg CARD16 /* modifiers */, 8205b261ecSmrg DeviceIntPtr /* modifier_device */, 8305b261ecSmrg CARD8 /* key */, 8405b261ecSmrg Window /* grabWindow */, 8505b261ecSmrg BOOL /* ownerEvents */, 8605b261ecSmrg Mask /* mask */); 8705b261ecSmrg 8805b261ecSmrgextern int SelectForWindow( 8905b261ecSmrg DeviceIntPtr /* dev */, 9005b261ecSmrg WindowPtr /* pWin */, 9105b261ecSmrg ClientPtr /* client */, 9205b261ecSmrg Mask /* mask */, 9305b261ecSmrg Mask /* exclusivemasks */, 9405b261ecSmrg Mask /* validmasks */); 9505b261ecSmrg 9605b261ecSmrgextern int AddExtensionClient ( 9705b261ecSmrg WindowPtr /* pWin */, 9805b261ecSmrg ClientPtr /* client */, 9905b261ecSmrg Mask /* mask */, 10005b261ecSmrg int /* mskidx */); 10105b261ecSmrg 10205b261ecSmrgextern void RecalculateDeviceDeliverableEvents( 10305b261ecSmrg WindowPtr /* pWin */); 10405b261ecSmrg 10505b261ecSmrgextern int InputClientGone( 10605b261ecSmrg WindowPtr /* pWin */, 10705b261ecSmrg XID /* id */); 10805b261ecSmrg 10905b261ecSmrgextern int SendEvent ( 11005b261ecSmrg ClientPtr /* client */, 11105b261ecSmrg DeviceIntPtr /* d */, 11205b261ecSmrg Window /* dest */, 11305b261ecSmrg Bool /* propagate */, 11405b261ecSmrg xEvent * /* ev */, 11505b261ecSmrg Mask /* mask */, 11605b261ecSmrg int /* count */); 11705b261ecSmrg 11805b261ecSmrgextern int SetButtonMapping ( 11905b261ecSmrg ClientPtr /* client */, 12005b261ecSmrg DeviceIntPtr /* dev */, 12105b261ecSmrg int /* nElts */, 12205b261ecSmrg BYTE * /* map */); 12305b261ecSmrg 12405b261ecSmrgextern int SetModifierMapping( 12505b261ecSmrg ClientPtr /* client */, 12605b261ecSmrg DeviceIntPtr /* dev */, 12705b261ecSmrg int /* len */, 12805b261ecSmrg int /* rlen */, 12905b261ecSmrg int /* numKeyPerModifier */, 13005b261ecSmrg KeyCode * /* inputMap */, 13105b261ecSmrg KeyClassPtr * /* k */); 13205b261ecSmrg 13305b261ecSmrgextern void SendDeviceMappingNotify( 13405b261ecSmrg ClientPtr /* client, */, 13505b261ecSmrg CARD8 /* request, */, 13605b261ecSmrg KeyCode /* firstKeyCode */, 13705b261ecSmrg CARD8 /* count */, 13805b261ecSmrg DeviceIntPtr /* dev */); 13905b261ecSmrg 14005b261ecSmrgextern int ChangeKeyMapping( 14105b261ecSmrg ClientPtr /* client */, 14205b261ecSmrg DeviceIntPtr /* dev */, 14305b261ecSmrg unsigned /* len */, 14405b261ecSmrg int /* type */, 14505b261ecSmrg KeyCode /* firstKeyCode */, 14605b261ecSmrg CARD8 /* keyCodes */, 14705b261ecSmrg CARD8 /* keySymsPerKeyCode */, 14805b261ecSmrg KeySym * /* map */); 14905b261ecSmrg 15005b261ecSmrgextern void DeleteWindowFromAnyExtEvents( 15105b261ecSmrg WindowPtr /* pWin */, 15205b261ecSmrg Bool /* freeResources */); 15305b261ecSmrg 15405b261ecSmrgextern int MaybeSendDeviceMotionNotifyHint ( 15505b261ecSmrg deviceKeyButtonPointer * /* pEvents */, 15605b261ecSmrg Mask /* mask */); 15705b261ecSmrg 15805b261ecSmrgextern void CheckDeviceGrabAndHintWindow ( 15905b261ecSmrg WindowPtr /* pWin */, 16005b261ecSmrg int /* type */, 16105b261ecSmrg deviceKeyButtonPointer * /* xE */, 16205b261ecSmrg GrabPtr /* grab */, 16305b261ecSmrg ClientPtr /* client */, 16405b261ecSmrg Mask /* deliveryMask */); 16505b261ecSmrg 16605b261ecSmrgextern void MaybeStopDeviceHint( 16705b261ecSmrg DeviceIntPtr /* dev */, 16805b261ecSmrg ClientPtr /* client */); 16905b261ecSmrg 17005b261ecSmrgextern int DeviceEventSuppressForWindow( 17105b261ecSmrg WindowPtr /* pWin */, 17205b261ecSmrg ClientPtr /* client */, 17305b261ecSmrg Mask /* mask */, 17405b261ecSmrg int /* maskndx */); 17505b261ecSmrg 17605b261ecSmrgvoid SendEventToAllWindows( 17705b261ecSmrg DeviceIntPtr /* dev */, 17805b261ecSmrg Mask /* mask */, 17905b261ecSmrg xEvent * /* ev */, 18005b261ecSmrg int /* count */); 18105b261ecSmrg 18205b261ecSmrg#endif /* EXEVENTS_H */ 183