From 2005a18abf5b9496d2049512ea27ef31222cb78b Mon Sep 17 00:00:00 2001 From: peter Date: Tue, 5 Oct 2004 19:37:57 +0000 Subject: [PATCH] * xi header conversion donated by ik_5 --- packages/extra/x11/Makefile | 6 +- packages/extra/x11/Makefile.fpc | 2 +- packages/extra/x11/xi.pp | 321 ++++++++++++++++++++++++++++++++ 3 files changed, 325 insertions(+), 4 deletions(-) create mode 100644 packages/extra/x11/xi.pp diff --git a/packages/extra/x11/Makefile b/packages/extra/x11/Makefile index 11de262c15..8554281d45 100644 --- a/packages/extra/x11/Makefile +++ b/packages/extra/x11/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 1.1 [2004/09/04] +# Don't edit, this file is generated by FPCMake Version 1.1 [2004/09/27] # default: all MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom morphos netwlibc @@ -215,7 +215,7 @@ endif PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra) override PACKAGE_NAME=x11 override PACKAGE_VERSION=1.9.4 -override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym +override TARGET_UNITS+=x xlib xutil xresource xcms xshm xrender keysym xi override INSTALL_FPCPACKAGE=y ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) @@ -813,7 +813,7 @@ ifndef COPY COPY:=$(CPPROG) -fp endif ifndef COPYTREE -COPYTREE:=$(CPPROG) -rfp +COPYTREE:=$(CPPROG) -Rfp endif ifndef MOVE MOVE:=$(MVPROG) -f diff --git a/packages/extra/x11/Makefile.fpc b/packages/extra/x11/Makefile.fpc index 19b4bb89a8..1abccd3e53 100644 --- a/packages/extra/x11/Makefile.fpc +++ b/packages/extra/x11/Makefile.fpc @@ -7,7 +7,7 @@ name=x11 version=1.9.4 [target] -units=x xlib xutil xresource xcms xshm xrender keysym +units=x xlib xutil xresource xcms xshm xrender keysym xi [require] libc=y diff --git a/packages/extra/x11/xi.pp b/packages/extra/x11/xi.pp new file mode 100644 index 0000000000..eabc4c5862 --- /dev/null +++ b/packages/extra/x11/xi.pp @@ -0,0 +1,321 @@ +{ + $Xorg: XI.h,v 1.4 2001/02/09 02:03:23 xorgcvs Exp $ + +************************************************************ + +Copyright 1989, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +Copyright 1989 by Hewlett-Packard Company, Palo Alto, California. + + All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the name of Hewlett-Packard not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission. + +HEWLETT-PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +HEWLETT-PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +********************************************************/ + $XFree86: xc/include/extensions/XI.h,v 1.5 2001/12/14 19:53:28 dawes Exp $ + + Definitions used by the server, library and client + + Pascal Convertion was made by Ido Kannner. + +Histroy: + 2004/10/03 - Conversion from C header to Pascal unit. +} +{$PACKRECORDS C} {$MACRO ON} {$DEFINE MACROS} +{$MODE OBJFPC} +unit xi; +interface +uses X; + +const + sz_xGetExtensionVersionReq = 8; + sz_xGetExtensionVersionReply = 32; + sz_xListInputDevicesReq = 4; + sz_xListInputDevicesReply = 32; + sz_xOpenDeviceReq = 8; + sz_xOpenDeviceReply = 32; + sz_xCloseDeviceReq = 8; + sz_xSetDeviceModeReq = 8; + sz_xSetDeviceModeReply = 32; + sz_xSelectExtensionEventReq = 12; + sz_xGetSelectedExtensionEventsReq = 8; + sz_xGetSelectedExtensionEventsReply = 32; + sz_xChangeDeviceDontPropagateListReq = 12; + sz_xGetDeviceDontPropagateListReq = 8; + sz_xGetDeviceDontPropagateListReply = 32; + sz_xGetDeviceMotionEventsReq = 16; + sz_xGetDeviceMotionEventsReply = 32; + sz_xChangeKeyboardDeviceReq = 8; + sz_xChangeKeyboardDeviceReply = 32; + sz_xChangePointerDeviceReq = 8; + sz_xChangePointerDeviceReply = 32; + sz_xGrabDeviceReq = 20; + sz_xGrabDeviceReply = 32; + sz_xUngrabDeviceReq = 12; + sz_xGrabDeviceKeyReq = 20; + sz_xGrabDeviceKeyReply = 32; + sz_xUngrabDeviceKeyReq = 16; + sz_xGrabDeviceButtonReq = 20; + sz_xGrabDeviceButtonReply = 32; + sz_xUngrabDeviceButtonReq = 16; + sz_xAllowDeviceEventsReq = 12; + sz_xGetDeviceFocusReq = 8; + sz_xGetDeviceFocusReply = 32; + sz_xSetDeviceFocusReq = 16; + sz_xGetFeedbackControlReq = 8; + sz_xGetFeedbackControlReply = 32; + sz_xChangeFeedbackControlReq = 12; + sz_xGetDeviceKeyMappingReq = 8; + sz_xGetDeviceKeyMappingReply = 32; + sz_xChangeDeviceKeyMappingReq = 8; + sz_xGetDeviceModifierMappingReq = 8; + sz_xSetDeviceModifierMappingReq = 8; + sz_xSetDeviceModifierMappingReply = 32; + sz_xGetDeviceButtonMappingReq = 8; + sz_xGetDeviceButtonMappingReply = 32; + sz_xSetDeviceButtonMappingReq = 8; + sz_xSetDeviceButtonMappingReply = 32; + sz_xQueryDeviceStateReq = 8; + sz_xQueryDeviceStateReply = 32; + sz_xSendExtensionEventReq = 16; + sz_xDeviceBellReq = 8; + sz_xSetDeviceValuatorsReq = 8; + sz_xSetDeviceValuatorsReply = 32; + sz_xGetDeviceControlReq = 8; + sz_xGetDeviceControlReply = 32; + sz_xChangeDeviceControlReq = 8; + sz_xChangeDeviceControlReply = 32; + +const + INAME = 'XInputExtension'; + +const + XI_KEYBOARD = 'KEYBOARD'; + XI_MOUSE = 'MOUSE'; + XI_TABLET = 'TABLET'; + XI_TOUCHSCREEN = 'TOUCHSCREEN'; + XI_TOUCHPAD = 'TOUCHPAD'; + XI_BARCODE = 'BARCODE'; + XI_BUTTONBOX = 'BUTTONBOX'; + XI_KNOB_BOX = 'KNOB_BOX'; + XI_ONE_KNOB = 'ONE_KNOB'; + XI_NINE_KNOB = 'NINE_KNOB'; + XI_TRACKBALL = 'TRACKBALL'; + XI_QUADRATURE = 'QUADRATURE'; + XI_ID_MODULE = 'ID_MODULE'; + XI_SPACEBALL = 'SPACEBALL'; + XI_DATAGLOVE = 'DATAGLOVE'; + XI_EYETRACKER = 'EYETRACKER'; + XI_CURSORKEYS = 'CURSORKEYS'; + XI_FOOTMOUSE = 'FOOTMOUSE'; + +const + Dont_Check = 0; + XInput_Initial_Release = 1; + XInput_Add_XDeviceBell = 2; + XInput_Add_XSetDeviceValuators = 3; + XInput_Add_XChangeDeviceControl = 4; + +const + XI_Absent = 0; + XI_Present = 1; + +const + XI_Initial_Release_Major = 1; + XI_Initial_Release_Minor = 0; + +const + XI_Add_XDeviceBell_Major = 1; + XI_Add_XDeviceBell_Minor = 1; + +const + XI_Add_XSetDeviceValuators_Major = 1; + XI_Add_XSetDeviceValuators_Minor = 2; + +const + XI_Add_XChangeDeviceControl_Major = 1; + XI_Add_XChangeDeviceControl_Minor = 3; + +const + DEVICE_RESOLUTION = 1; + +const + NoSuchExtension = 1; + +const + COUNT = 0; + CREATE = 1; + +const + NewPointer = 0; + NewKeyboard = 1; + +const + XPOINTER = 0; + XKEYBOARD = 1; + +const + UseXKeyboard = $FF; + +const + IsXPointer = 0; + IsXKeyboard = 1; + IsXExtensionDevice = 2; + +const + AsyncThisDevice = 0; + SyncThisDevice = 1; + ReplayThisDevice = 2; + AsyncOtherDevices = 3; + AsyncAll = 4; + SyncAll = 5; + +const + FollowKeyboard = 3; +{$ifndef RevertToFollowKeyboard} + {$IFDEF MACROS} + {$define RevertToFollowKeyboard := 3} + {$ELSE} + RevertToFollowKeyboard = 3; + {$ENDIF} +{$ENDIF} + +const + DvAccelNum = Cardinal(1) shl 0; + DvAccelDenom = Cardinal(1) shl 1; + DvThreshold = Cardinal(1) shl 2; + +const + DvKeyClickPercent = Cardinal(1) shl 0; + DvPercent = Cardinal(1) shl 1; + DvPitch = Cardinal(1) shl 2; + DvDuration = Cardinal(1) shl 3; + DvLed = Cardinal(1) shl 4; + DvLedMode = Cardinal(1) shl 5; + DvKey = Cardinal(1) shl 6; + DvAutoRepeatMode = Cardinal(1) shl 7; + +const + DvString = Cardinal(1) shl 0; + +const + DvInteger = Cardinal(1) shl 0; + +const + DeviceMode = Cardinal(1) shl 0; + Relative = 0; + Absolute = 1; +{ Merged from Metrolink tree for XINPUT stuff } + TS_Raw = 57; + TS_Scaled = 58; + SendCoreEvents = 59; + DontSendCoreEvents = 60; +{ End of merged section } + +const + ProximityState = Cardinal(1) shl 1; + InProximity = Cardinal(0) shl 1; + OutOfProximity = Cardinal(1) shl 1; + +const + AddToList = 0; + DeleteFromList = 1; + +const + KeyClass = 0; + ButtonClass = 1; + ValuatorClass = 2; + FeedbackClass = 3; + ProximityClass = 4; + FocusClass = 5; + OtherClass = 6; + +const + KbdFeedbackClass = 0; + PtrFeedbackClass = 1; + StringFeedbackClass = 2; + IntegerFeedbackClass = 3; + LedFeedbackClass = 4; + BellFeedbackClass = 5; + +const + _devicePointerMotionHint = 0; + _deviceButton1Motion = 1; + _deviceButton2Motion = 2; + _deviceButton3Motion = 3; + _deviceButton4Motion = 4; + _deviceButton5Motion = 5; + _deviceButtonMotion = 6; + _deviceButtonGrab = 7; + _deviceOwnerGrabButton = 8; + _noExtensionEvent = 9; + +const + XI_BadDevice = 0; + XI_BadEvent = 1; + XI_BadMode = 2; + XI_DeviceBusy = 3; + XI_BadClass = 4; + +{ Make XEventClass be a CARD32 for 64 bit servers. Don't affect client + definition of XEventClass since that would be a library interface change. + See the top of X.h for more _XSERVER64 magic. +} +type +{$ifdef _XSERVER64} + XEventClass = CARD32; +{$ELSE} + XEventClass = Longword; +{$ENDIF} + +(******************************************************************* + * + * Extension version structure. + * + *) + +type + PXExtensionVersion = ^TXExtensionVersion; + TXExtensionVersion = packed record + present : Smallint; + major_version : Smallint; + minor_version : Smallint; + end; + +implementation + +end.