瀏覽代碼

* xi header conversion donated by ik_5

peter 21 年之前
父節點
當前提交
2005a18abf
共有 3 個文件被更改,包括 325 次插入4 次删除
  1. 3 3
      packages/extra/x11/Makefile
  2. 1 1
      packages/extra/x11/Makefile.fpc
  3. 321 0
      packages/extra/x11/xi.pp

+ 3 - 3
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

+ 1 - 1
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

+ 321 - 0
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.