1 /* $Xorg: XI.h,v 1.4 2001/02/09 02:03:23 xorgcvs Exp $ */ 2 3 /************************************************************ 4 5 Copyright 1989, 1998 The Open Group 6 7 Permission to use, copy, modify, distribute, and sell this software and its 8 documentation for any purpose is hereby granted without fee, provided that 9 the above copyright notice appear in all copies and that both that 10 copyright notice and this permission notice appear in supporting 11 documentation. 12 13 The above copyright notice and this permission notice shall be included in 14 all copies or substantial portions of the Software. 15 16 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 20 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 21 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 23 Except as contained in this notice, the name of The Open Group shall not be 24 used in advertising or otherwise to promote the sale, use or other dealings 25 in this Software without prior written authorization from The Open Group. 26 27 Copyright 1989 by Hewlett-Packard Company, Palo Alto, California. 28 29 All Rights Reserved 30 31 Permission to use, copy, modify, and distribute this software and its 32 documentation for any purpose and without fee is hereby granted, 33 provided that the above copyright notice appear in all copies and that 34 both that copyright notice and this permission notice appear in 35 supporting documentation, and that the name of Hewlett-Packard not be 36 used in advertising or publicity pertaining to distribution of the 37 software without specific, written prior permission. 38 39 HEWLETT-PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING 40 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL 41 HEWLETT-PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR 42 ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, 43 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, 44 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS 45 SOFTWARE. 46 47 ********************************************************/ 48 /* $XFree86: xc/include/extensions/XI.h,v 1.4 2001/01/17 17:53:16 dawes Exp $ */ 49 50 /* Definitions used by the server, library and client */ 51 52 #ifndef _XI_H_ 53 54 #define _XI_H_ 55 56 #define sz_xGetExtensionVersionReq 8 57 #define sz_xGetExtensionVersionReply 32 58 #define sz_xListInputDevicesReq 4 59 #define sz_xListInputDevicesReply 32 60 #define sz_xOpenDeviceReq 8 61 #define sz_xOpenDeviceReply 32 62 #define sz_xCloseDeviceReq 8 63 #define sz_xSetDeviceModeReq 8 64 #define sz_xSetDeviceModeReply 32 65 #define sz_xSelectExtensionEventReq 12 66 #define sz_xGetSelectedExtensionEventsReq 8 67 #define sz_xGetSelectedExtensionEventsReply 32 68 #define sz_xChangeDeviceDontPropagateListReq 12 69 #define sz_xGetDeviceDontPropagateListReq 8 70 #define sz_xGetDeviceDontPropagateListReply 32 71 #define sz_xGetDeviceMotionEventsReq 16 72 #define sz_xGetDeviceMotionEventsReply 32 73 #define sz_xChangeKeyboardDeviceReq 8 74 #define sz_xChangeKeyboardDeviceReply 32 75 #define sz_xChangePointerDeviceReq 8 76 #define sz_xChangePointerDeviceReply 32 77 #define sz_xGrabDeviceReq 20 78 #define sz_xGrabDeviceReply 32 79 #define sz_xUngrabDeviceReq 12 80 #define sz_xGrabDeviceKeyReq 20 81 #define sz_xGrabDeviceKeyReply 32 82 #define sz_xUngrabDeviceKeyReq 16 83 #define sz_xGrabDeviceButtonReq 20 84 #define sz_xGrabDeviceButtonReply 32 85 #define sz_xUngrabDeviceButtonReq 16 86 #define sz_xAllowDeviceEventsReq 12 87 #define sz_xGetDeviceFocusReq 8 88 #define sz_xGetDeviceFocusReply 32 89 #define sz_xSetDeviceFocusReq 16 90 #define sz_xGetFeedbackControlReq 8 91 #define sz_xGetFeedbackControlReply 32 92 #define sz_xChangeFeedbackControlReq 12 93 #define sz_xGetDeviceKeyMappingReq 8 94 #define sz_xGetDeviceKeyMappingReply 32 95 #define sz_xChangeDeviceKeyMappingReq 8 96 #define sz_xGetDeviceModifierMappingReq 8 97 #define sz_xSetDeviceModifierMappingReq 8 98 #define sz_xSetDeviceModifierMappingReply 32 99 #define sz_xGetDeviceButtonMappingReq 8 100 #define sz_xGetDeviceButtonMappingReply 32 101 #define sz_xSetDeviceButtonMappingReq 8 102 #define sz_xSetDeviceButtonMappingReply 32 103 #define sz_xQueryDeviceStateReq 8 104 #define sz_xQueryDeviceStateReply 32 105 #define sz_xSendExtensionEventReq 16 106 #define sz_xDeviceBellReq 8 107 #define sz_xSetDeviceValuatorsReq 8 108 #define sz_xSetDeviceValuatorsReply 32 109 #define sz_xGetDeviceControlReq 8 110 #define sz_xGetDeviceControlReply 32 111 #define sz_xChangeDeviceControlReq 8 112 #define sz_xChangeDeviceControlReply 32 113 114 #define INAME "XInputExtension" 115 116 #define XI_KEYBOARD "KEYBOARD" 117 #define XI_MOUSE "MOUSE" 118 #define XI_TABLET "TABLET" 119 #define XI_TOUCHSCREEN "TOUCHSCREEN" 120 #define XI_TOUCHPAD "TOUCHPAD" 121 #define XI_BARCODE "BARCODE" 122 #define XI_BUTTONBOX "BUTTONBOX" 123 #define XI_KNOB_BOX "KNOB_BOX" 124 #define XI_ONE_KNOB "ONE_KNOB" 125 #define XI_NINE_KNOB "NINE_KNOB" 126 #define XI_TRACKBALL "TRACKBALL" 127 #define XI_QUADRATURE "QUADRATURE" 128 #define XI_ID_MODULE "ID_MODULE" 129 #define XI_SPACEBALL "SPACEBALL" 130 #define XI_DATAGLOVE "DATAGLOVE" 131 #define XI_EYETRACKER "EYETRACKER" 132 #define XI_CURSORKEYS "CURSORKEYS" 133 #define XI_FOOTMOUSE "FOOTMOUSE" 134 135 #define Dont_Check 0 136 #define XInput_Initial_Release 1 137 #define XInput_Add_XDeviceBell 2 138 #define XInput_Add_XSetDeviceValuators 3 139 #define XInput_Add_XChangeDeviceControl 4 140 #define XInput_Add_DevicePresenceNotify 5 141 142 #define XI_Absent 0 143 #define XI_Present 1 144 145 #define XI_Initial_Release_Major 1 146 #define XI_Initial_Release_Minor 0 147 148 #define XI_Add_XDeviceBell_Major 1 149 #define XI_Add_XDeviceBell_Minor 1 150 151 #define XI_Add_XSetDeviceValuators_Major 1 152 #define XI_Add_XSetDeviceValuators_Minor 2 153 154 #define XI_Add_XChangeDeviceControl_Major 1 155 #define XI_Add_XChangeDeviceControl_Minor 3 156 157 #define XI_Add_DevicePresenceNotify_Major 1 158 #define XI_Add_DevicePresenceNotify_Minor 4 159 160 #define DEVICE_RESOLUTION 1 161 #define DEVICE_ABS_CALIB 2 162 #define DEVICE_CORE 3 163 #define DEVICE_ENABLE 4 164 #define DEVICE_ABS_AREA 5 165 166 #define NoSuchExtension 1 167 168 #define COUNT 0 169 #define CREATE 1 170 171 #define NewPointer 0 172 #define NewKeyboard 1 173 174 #define XPOINTER 0 175 #define XKEYBOARD 1 176 177 #define UseXKeyboard 0xFF 178 179 #define IsXPointer 0 180 #define IsXKeyboard 1 181 #define IsXExtensionDevice 2 182 #define IsXExtensionKeyboard 3 183 #define IsXExtensionPointer 4 184 185 #define AsyncThisDevice 0 186 #define SyncThisDevice 1 187 #define ReplayThisDevice 2 188 #define AsyncOtherDevices 3 189 #define AsyncAll 4 190 #define SyncAll 5 191 192 #define FollowKeyboard 3 193 #ifndef RevertToFollowKeyboard 194 #define RevertToFollowKeyboard 3 195 #endif 196 197 #define DvAccelNum (1L << 0) 198 #define DvAccelDenom (1L << 1) 199 #define DvThreshold (1L << 2) 200 201 #define DvKeyClickPercent (1L<<0) 202 #define DvPercent (1L<<1) 203 #define DvPitch (1L<<2) 204 #define DvDuration (1L<<3) 205 #define DvLed (1L<<4) 206 #define DvLedMode (1L<<5) 207 #define DvKey (1L<<6) 208 #define DvAutoRepeatMode (1L<<7) 209 210 #define DvString (1L << 0) 211 212 #define DvInteger (1L << 0) 213 214 #define DeviceMode (1L << 0) 215 #define Relative 0 216 #define Absolute 1 217 218 #define ProximityState (1L << 1) 219 #define InProximity (0L << 1) 220 #define OutOfProximity (1L << 1) 221 222 #define AddToList 0 223 #define DeleteFromList 1 224 225 #define KeyClass 0 226 #define ButtonClass 1 227 #define ValuatorClass 2 228 #define FeedbackClass 3 229 #define ProximityClass 4 230 #define FocusClass 5 231 #define OtherClass 6 232 233 #define KbdFeedbackClass 0 234 #define PtrFeedbackClass 1 235 #define StringFeedbackClass 2 236 #define IntegerFeedbackClass 3 237 #define LedFeedbackClass 4 238 #define BellFeedbackClass 5 239 240 #define _devicePointerMotionHint 0 241 #define _deviceButton1Motion 1 242 #define _deviceButton2Motion 2 243 #define _deviceButton3Motion 3 244 #define _deviceButton4Motion 4 245 #define _deviceButton5Motion 5 246 #define _deviceButtonMotion 6 247 #define _deviceButtonGrab 7 248 #define _deviceOwnerGrabButton 8 249 #define _noExtensionEvent 9 250 251 #define _devicePresence 0 252 253 #define DeviceAdded 0 254 #define DeviceRemoved 1 255 #define DeviceEnabled 2 256 #define DeviceDisabled 3 257 #define DeviceUnrecoverable 4 258 259 #define XI_BadDevice 0 260 #define XI_BadEvent 1 261 #define XI_BadMode 2 262 #define XI_DeviceBusy 3 263 #define XI_BadClass 4 264 265 /* Make XEventClass be a CARD32 for 64 bit servers. Don't affect client 266 * definition of XEventClass since that would be a library interface change. 267 * See the top of X.h for more _XSERVER64 magic. 268 */ 269 #ifdef _XSERVER64 270 typedef CARD32 XEventClass; 271 #else 272 typedef unsigned long XEventClass; 273 #endif 274 275 /******************************************************************* 276 * 277 * Extension version structure. 278 * 279 */ 280 281 typedef struct { 282 int present; 283 short major_version; 284 short minor_version; 285 } XExtensionVersion; 286 287 #endif /* _XI_H_ */ 288