Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=xorg74.git;a=commitdiff;h=3b8226ec89b2985e10620387a3c43adcbe3a943d

commit 3b8226ec89b2985e10620387a3c43adcbe3a943d
Author: Krisztian VASAS <[email protected]>
Date:   Thu Jan 1 00:28:59 2009 +0100

xf86-input-mouse-1.3.0-1-i686
- added missing header file

diff --git a/source/x11/xf86-input-mouse/xf86OSmouse.h 
b/source/x11/xf86-input-mouse/xf86OSmouse.h
new file mode 100644
index 0000000..09b8525
--- /dev/null
+++ b/source/x11/xf86-input-mouse/xf86OSmouse.h
@@ -0,0 +1,277 @@
+/*
+ * Copyright (c) 1999-2003 by The XFree86 Project, Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * 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 COPYRIGHT HOLDER(S) OR AUTHOR(S) 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 copyright holder(s)
+ * and author(s) 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 copyright holder(s) and author(s).
+ */
+
+/* Public interface to OS-specific mouse support. */
+
+#ifndef _XF86OSMOUSE_H_
+#define _XF86OSMOUSE_H_
+
+#include "xf86Xinput.h"
+
+/* Mouse interface classes */
+#define MSE_NONE       0x00
+#define MSE_SERIAL     0x01            /* serial port */
+#define MSE_BUS                0x02            /* old bus mouse */
+#define MSE_PS2                0x04            /* standard read-only PS/2 */
+#define MSE_XPS2       0x08            /* extended PS/2 */
+#define MSE_AUTO       0x10            /* auto-detect (PnP) */
+#define MSE_MISC       0x20            /* The OS layer will identify the
+                                        * specific protocol names that are
+                                        * supported for this class. */
+
+/* Mouse Protocol IDs. */
+typedef enum {
+    PROT_UNKNOWN = -2,
+    PROT_UNSUP = -1,           /* protocol is not supported */
+    PROT_MS = 0,
+    PROT_MSC,
+    PROT_MM,
+    PROT_LOGI,
+    PROT_LOGIMAN,
+    PROT_MMHIT,
+    PROT_GLIDE,
+    PROT_IMSERIAL,
+    PROT_THINKING,
+    PROT_ACECAD,
+    PROT_VALUMOUSESCROLL,
+    PROT_PS2,
+    PROT_GENPS2,
+    PROT_IMPS2,
+    PROT_EXPPS2,
+    PROT_THINKPS2,
+    PROT_MMPS2,
+    PROT_GLIDEPS2,
+    PROT_NETPS2,
+    PROT_NETSCPS2,
+    PROT_BM,
+    PROT_AUTO,
+    PROT_SYSMOUSE,
+    PROT_NUMPROTOS     /* This must always be last. */
+} MouseProtocolID;
+
+struct _MouseDevRec;
+
+typedef int (*GetInterfaceTypesProc)(void);
+typedef const char **(*BuiltinNamesProc)(void);
+typedef Bool (*CheckProtocolProc)(const char *protocol);
+typedef Bool (*BuiltinPreInitProc)(InputInfoPtr pInfo, const char *protocol,
+                                  int flags);
+typedef const char *(*DefaultProtocolProc)(void);
+typedef const char *(*SetupAutoProc)(InputInfoPtr pInfo, int *protoPara);
+typedef void (*SetResProc)(InputInfoPtr pInfo, const char* protocol, int rate,
+                          int res);
+typedef const char *(*FindDeviceProc)(InputInfoPtr pInfo, const char *protocol,
+                                     int flags);
+typedef const char *(*GuessProtocolProc)(InputInfoPtr pInfo, int flags);
+
+/*
+ * OSMouseInfoRec is used to pass information from the OSMouse layer to the
+ * OS-independent mouse driver.
+ */
+typedef struct {
+       GetInterfaceTypesProc   SupportedInterfaces;
+       BuiltinNamesProc        BuiltinNames;
+       CheckProtocolProc       CheckProtocol;
+       BuiltinPreInitProc      PreInit;
+       DefaultProtocolProc     DefaultProtocol;
+       SetupAutoProc           SetupAuto;
+       SetResProc              SetPS2Res;
+       SetResProc              SetBMRes;
+       SetResProc              SetMiscRes;
+       FindDeviceProc          FindDevice;
+       GuessProtocolProc       GuessProtocol;
+} OSMouseInfoRec, *OSMouseInfoPtr;
+
+/*
+ * SupportedInterfaces: Returns the mouse interface types that the OS support.
+ *             If MSE_MISC is returned, then the BuiltinNames and
+ *             CheckProtocol should be set.
+ *
+ * BuiltinNames: Returns the names of the protocols that are fully handled
+ *             in the OS-specific code.  These are names that don't appear
+ *             directly in the main "mouse" driver.
+ *
+ * CheckProtocol: Checks if the protocol name given is supported by the
+ *             OS.  It should return TRUE for both "builtin" protocols and
+ *             protocols of type MSE_MISC that are supported by the OS.
+ *
+ * PreInit:    The PreInit function for protocols that are builtin.  This
+ *             function is passed the protocol name.
+ *
+ * DefaultProtocol: Returns the name of a default protocol that should be used
+ *             for the OS when none has been supplied in the config file.
+ *             This should only be set when there is a reasonable default.
+ *
+ * SetupAuto:  This function can be used to do OS-specific protocol
+ *             auto-detection.  It returns the name of the detected protocol,
+ *             or NULL when detection fails.  It may also adjust one or more
+ *             of the "protoPara" values for the detected protocol by setting
+ *             then to something other than -1.  SetupAuto gets called in two
+ *             ways.  The first is before any devices have been opened.  This
+ *             can be used when the protocol "Auto" always maps to a single
+ *             protocol type.  The second is with the device open, allowing
+ *             OS-specific probing to be done.
+ *
+ * SetPS2Res:  Set the resolution and sample rate for MSE_PS2 and MSE_XPS2
+ *             protocol types.
+ *
+ * SetBMRes:   Set the resolution and sample rate for MSE_BM protocol types.
+ *
+ * SetMiscRes: Set the resolution and sample rate for MSE_MISC protocol types.
+ *
+ * FindDevice: This function gets called when no Device has been specified
+ *             in the config file.  OS-specific methods may be used to guess
+ *             which input device to use.  This function is called after the
+ *             pre-open attempts at protocol discovery are done, but before
+ *             the device is open.  I.e., after the first SetupAuto() call,
+ *             after the DefaultProtocol() call, but before the PreInit()
+ *             call.  Available protocol information may be used in locating
+ *             the default input device.
+ *
+ * GuessProtocol: A last resort attempt at guessing the mouse protocol by
+ *             whatever OS-specific means might be available.  OS-independent
+ *             things should be in the mouse driver.  This function gets
+ *             called after the mouse driver's OS-independent methods have
+ *             failed.
+ */
+
+extern OSMouseInfoPtr xf86OSMouseInit(int flags);
+
+/* Adjust this when the mouse interface changes. */
+
+/*
+ * History:
+ *
+ *  1.0.0 - Everything up to when versioning was started.
+ *  1.1.0 - FindDevice and GuessProtocol added to OSMouseInfoRec
+ *  1.2.0 - xisbscale added to MouseDevRec
+ *
+ */
+
+/* Z axis mapping */
+#define MSE_NOZMAP     0
+#define MSE_MAPTOX     -1
+#define MSE_MAPTOY     -2
+#define MSE_MAPTOZ     -3
+#define MSE_MAPTOW     -4
+
+/* Generalize for other axes. */
+#define MSE_NOAXISMAP  MSE_NOZMAP
+
+#define MSE_MAXBUTTONS 24
+#define MSE_DFLTBUTTONS         3
+
+/*
+ * Mouse device record.  This is shared by the mouse driver and the OSMouse
+ * layer.
+ */
+
+typedef void (*checkMovementsProc)(InputInfoPtr,int, int);
+typedef void (*autoProbeProc)(InputInfoPtr, Bool, Bool);
+typedef Bool (*collectDataProc)(struct _MouseDevRec *, unsigned char);
+typedef Bool (*dataGoodProc)(struct _MouseDevRec *);
+
+typedef void (*PostMseEventProc)(InputInfoPtr pInfo, int buttons,
+                             int dx, int dy, int dz, int dw);
+typedef void (*MouseCommonOptProc)(InputInfoPtr pInfo);
+
+typedef struct _MouseDevRec {
+    PtrCtrlProcPtr     Ctrl;
+    PostMseEventProc   PostEvent;
+    MouseCommonOptProc CommonOptions;
+    DeviceIntPtr       device;
+    const char *       mseDevice;
+    const char *       protocol;
+    MouseProtocolID    protocolID;
+    MouseProtocolID    oldProtocolID; /* hack */
+    int                        class;
+    int                        mseModel;
+    int                        baudRate;
+    int                        oldBaudRate;
+    int                        sampleRate;
+    int                        lastButtons;
+    int                        threshold;      /* acceleration */
+    int                        num;
+    int                        den;
+    int                        buttons;        /* # of buttons */
+    int                        emulateState;   /* automata state for 2 button 
mode */
+    Bool               emulate3Buttons;
+    Bool               emulate3ButtonsSoft;
+    int                        emulate3Timeout;/* Timeout for 3 button 
emulation */
+    Bool               chordMiddle;
+    Bool                flipXY;
+    int                 invX;
+    int                 invY;
+    int                        mouseFlags;     /* Flags to Clear after opening
+                                        * mouse dev */
+    int                        truebuttons;    /* (not used)
+                                        * Arg to maintain before
+                                        * emulate3buttons timer callback */
+    int                        resolution;
+    int                        negativeZ;      /* button mask */
+    int                        positiveZ;      /* button mask */
+    int                        negativeW;      /* button mask */
+    int                        positiveW;      /* button mask */
+    pointer            buffer;         /* usually an XISBuffer* */
+    int                        protoBufTail;
+    unsigned char      protoBuf[8];
+    unsigned char      protoPara[8];
+    unsigned char      inSync;         /* driver in sync with datastream */
+    pointer            mousePriv;      /* private area */
+    InputInfoPtr       pInfo;
+    int                        origProtocolID;
+    const char *       origProtocol;
+    Bool               emulate3Pending;/* timer waiting */
+    CARD32             emulate3Expires;/* time to fire emulation code */
+    Bool               emulateWheel;
+    int                        wheelInertia;
+    int                        wheelButton;
+    int                        negativeX;      /* Button values.  Unlike the Z 
and */
+    int                        positiveX;      /* W equivalents, these are 
button  */
+    int                        negativeY;      /* values rather than button 
masks. */
+    int                        positiveY;
+    int                        wheelYDistance;
+    int                        wheelXDistance;
+    Bool               autoProbe;
+    checkMovementsProc  checkMovements;
+    autoProbeProc      autoProbeMouse;
+    collectDataProc    collectData;
+    dataGoodProc       dataGood;
+    int                        angleOffset;
+    pointer            pDragLock;      /* drag lock area */
+    int                        xisbscale;      /* buffer size for 1 event */
+    int                        wheelButtonTimeout;/* Timeout for the wheel 
button emulation */
+    CARD32             wheelButtonExpires;
+    int                        doubleClickSourceButtonMask;
+    int                        doubleClickTargetButton;
+    int                        doubleClickTargetButtonMask;
+    int                        doubleClickOldSourceState;
+    int                        lastMappedButtons;
+    int                        buttonMap[MSE_MAXBUTTONS];
+} MouseDevRec, *MouseDevPtr;
+
+#endif /* _XF86OSMOUSE_H_ */
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to