exevents.h revision 05b261ec
1/************************************************************ 2 3Copyright 1996 by Thomas E. Dickey <dickey@clark.net> 4 5 All Rights Reserved 6 7Permission to use, copy, modify, and distribute this software and its 8documentation for any purpose and without fee is hereby granted, 9provided that the above copyright notice appear in all copies and that 10both that copyright notice and this permission notice appear in 11supporting documentation, and that the name of the above listed 12copyright holder(s) not be used in advertising or publicity pertaining 13to distribution of the software without specific, written prior 14permission. 15 16THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD 17TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 18AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE 19LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 20WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 21ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 22OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 23 24********************************************************/ 25 26/******************************************************************** 27 * Interface of 'exevents.c' 28 */ 29 30#ifndef EXEVENTS_H 31#define EXEVENTS_H 32 33#include <X11/extensions/XIproto.h> 34 35extern void RegisterOtherDevice ( 36 DeviceIntPtr /* device */); 37 38extern void ProcessOtherEvent ( 39 xEventPtr /* FIXME deviceKeyButtonPointer * xE */, 40 DeviceIntPtr /* other */, 41 int /* count */); 42 43extern int InitProximityClassDeviceStruct( 44 DeviceIntPtr /* dev */); 45 46extern void InitValuatorAxisStruct( 47 DeviceIntPtr /* dev */, 48 int /* axnum */, 49 int /* minval */, 50 int /* maxval */, 51 int /* resolution */, 52 int /* min_res */, 53 int /* max_res */); 54 55extern void DeviceFocusEvent( 56 DeviceIntPtr /* dev */, 57 int /* type */, 58 int /* mode */, 59 int /* detail */, 60 WindowPtr /* pWin */); 61 62extern int GrabButton( 63 ClientPtr /* client */, 64 DeviceIntPtr /* dev */, 65 BYTE /* this_device_mode */, 66 BYTE /* other_devices_mode */, 67 CARD16 /* modifiers */, 68 DeviceIntPtr /* modifier_device */, 69 CARD8 /* button */, 70 Window /* grabWindow */, 71 BOOL /* ownerEvents */, 72 Cursor /* rcursor */, 73 Window /* rconfineTo */, 74 Mask /* eventMask */); 75 76extern int GrabKey( 77 ClientPtr /* client */, 78 DeviceIntPtr /* dev */, 79 BYTE /* this_device_mode */, 80 BYTE /* other_devices_mode */, 81 CARD16 /* modifiers */, 82 DeviceIntPtr /* modifier_device */, 83 CARD8 /* key */, 84 Window /* grabWindow */, 85 BOOL /* ownerEvents */, 86 Mask /* mask */); 87 88extern int SelectForWindow( 89 DeviceIntPtr /* dev */, 90 WindowPtr /* pWin */, 91 ClientPtr /* client */, 92 Mask /* mask */, 93 Mask /* exclusivemasks */, 94 Mask /* validmasks */); 95 96extern int AddExtensionClient ( 97 WindowPtr /* pWin */, 98 ClientPtr /* client */, 99 Mask /* mask */, 100 int /* mskidx */); 101 102extern void RecalculateDeviceDeliverableEvents( 103 WindowPtr /* pWin */); 104 105extern int InputClientGone( 106 WindowPtr /* pWin */, 107 XID /* id */); 108 109extern int SendEvent ( 110 ClientPtr /* client */, 111 DeviceIntPtr /* d */, 112 Window /* dest */, 113 Bool /* propagate */, 114 xEvent * /* ev */, 115 Mask /* mask */, 116 int /* count */); 117 118extern int SetButtonMapping ( 119 ClientPtr /* client */, 120 DeviceIntPtr /* dev */, 121 int /* nElts */, 122 BYTE * /* map */); 123 124extern int SetModifierMapping( 125 ClientPtr /* client */, 126 DeviceIntPtr /* dev */, 127 int /* len */, 128 int /* rlen */, 129 int /* numKeyPerModifier */, 130 KeyCode * /* inputMap */, 131 KeyClassPtr * /* k */); 132 133extern void SendDeviceMappingNotify( 134 ClientPtr /* client, */, 135 CARD8 /* request, */, 136 KeyCode /* firstKeyCode */, 137 CARD8 /* count */, 138 DeviceIntPtr /* dev */); 139 140extern int ChangeKeyMapping( 141 ClientPtr /* client */, 142 DeviceIntPtr /* dev */, 143 unsigned /* len */, 144 int /* type */, 145 KeyCode /* firstKeyCode */, 146 CARD8 /* keyCodes */, 147 CARD8 /* keySymsPerKeyCode */, 148 KeySym * /* map */); 149 150extern void DeleteWindowFromAnyExtEvents( 151 WindowPtr /* pWin */, 152 Bool /* freeResources */); 153 154extern int MaybeSendDeviceMotionNotifyHint ( 155 deviceKeyButtonPointer * /* pEvents */, 156 Mask /* mask */); 157 158extern void CheckDeviceGrabAndHintWindow ( 159 WindowPtr /* pWin */, 160 int /* type */, 161 deviceKeyButtonPointer * /* xE */, 162 GrabPtr /* grab */, 163 ClientPtr /* client */, 164 Mask /* deliveryMask */); 165 166extern void MaybeStopDeviceHint( 167 DeviceIntPtr /* dev */, 168 ClientPtr /* client */); 169 170extern int DeviceEventSuppressForWindow( 171 WindowPtr /* pWin */, 172 ClientPtr /* client */, 173 Mask /* mask */, 174 int /* maskndx */); 175 176void SendEventToAllWindows( 177 DeviceIntPtr /* dev */, 178 Mask /* mask */, 179 xEvent * /* ev */, 180 int /* count */); 181 182#endif /* EXEVENTS_H */ 183