diff options
author | pingc <pingc> | 2007-06-25 21:25:11 +0000 |
---|---|---|
committer | pingc <pingc> | 2007-06-25 21:25:11 +0000 |
commit | 61d5330adc39ea26a2c56904bc87dc73ea87d484 (patch) | |
tree | aca32eedb27cade27349eae2bb64e7f96ddd2c5e | |
parent | 5c84d506a3602bbddc98eef1a2562ee5979d3dcc (diff) | |
download | xf86-input-wacom-61d5330adc39ea26a2c56904bc87dc73ea87d484.tar.gz |
Added xsetwacom RawSample option and updated keystroke for absolute wheel and menu strip
-rw-r--r-- | ChangeLog | 11 | ||||
-rwxr-xr-x | src/include/Xwacom.h | 27 | ||||
-rw-r--r-- | src/wacom.4x | 17 | ||||
-rwxr-xr-x | src/xdrv/Makefile.am | 6 | ||||
-rwxr-xr-x | src/xdrv/wcmCommon.c | 66 | ||||
-rwxr-xr-x | src/xdrv/wcmCompat.c | 29 | ||||
-rwxr-xr-x | src/xdrv/wcmConfig.c | 31 | ||||
-rwxr-xr-x | src/xdrv/wcmFilter.c | 21 | ||||
-rwxr-xr-x | src/xdrv/wcmFilter.h | 32 | ||||
-rwxr-xr-x | src/xdrv/wcmISDV4.c | 163 | ||||
-rwxr-xr-x | src/xdrv/wcmSerial.c | 33 | ||||
-rwxr-xr-x | src/xdrv/wcmSerial.h | 32 | ||||
-rwxr-xr-x | src/xdrv/wcmUSB.c | 29 | ||||
-rw-r--r-- | src/xdrv/wcmXCommand.c | 31 | ||||
-rwxr-xr-x | src/xdrv/xf86Wacom.c | 42 | ||||
-rwxr-xr-x | src/xdrv/xf86Wacom.h | 29 |
16 files changed, 321 insertions, 278 deletions
@@ -1,7 +1,18 @@ +2007-06-25 Ping Cheng <pingc@wacom.com> + * Merged patch 1689476 (Gregor Richards) + * Merged patch 1674472 (Magnus Vigerlöf) + * Updated new xsetwacom commands + * Updated wacom man page + * Updated webpages to make /PRE scalable + * Fixed an older UD pressure calculation error + (Pierre-Alain Tercier) + * Label 0.7.8 + 2007-06-14 Ping Cheng <pingc@wacom.com> * Added RawSample option to xsetwacom * Reset old data after each out-prox event * Change Bamboo ring from strip to absolute wheel + * Label 0.7.7-12 2007-06-05 Ping Cheng <pingc@wacom.com> * Updated xsetwacom suppress option diff --git a/src/include/Xwacom.h b/src/include/Xwacom.h index eb747b6..a479703 100755 --- a/src/include/Xwacom.h +++ b/src/include/Xwacom.h @@ -1,23 +1,20 @@ -/***************************************************************************** - * +/* * Copyright 2003 by John Joganic <john@joganic.com> * Copyright 2003 - 2007 by Ping Cheng <pingc@wacom.com> * - * 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. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * - * 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 - * JOHN JOGANIC 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. + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __XF86_XWACOM_H diff --git a/src/wacom.4x b/src/wacom.4x index 496ebe2..f21f1d8 100644 --- a/src/wacom.4x +++ b/src/wacom.4x @@ -37,11 +37,14 @@ supports the following entries: .RS 8 .TP 4 .B Option \fI"Type"\fP \fI"stylus"|"eraser"|"cursor"|"pad"\fP -sets the type of tool the device represents. This option is mandatory. The core options, such as "SendCoreEvents" or "AlwaysCore", are +sets the type of tool the device represents. This option is mandatory. +The core options, such as "SendCoreEvents" or "AlwaysCore", are unnecessary in Gimp if you don't need to move system cursor outside -of Gimp drawing area. "pad" is for Intuos 3, Cintiq 21UX, or -Graphire 4 ExpressKeys only. It is required for Intuos3, Cintiq 21UX, and Graphire 4 if your application supports ExpressKeys -features. "pad" is reported as a second tool in the driver. +of Gimp drawing area. "pad" is for Intuos 3 or Cintiq 21UX tablet +ExpressKeys/menu strips, and Graphire 4 or Bamboo tablet buttons, wheel, +and/or ring. It is required for Intuos3, Cintiq 21UX, Graphire 4, and +Bamboo if you want to use keystroke features. "pad" is reported as a +second tool in the driver. .TP 4 .B Option \fI"Device"\fP \fI"path"\fP sets the path to the special file which represents serial line where @@ -54,9 +57,9 @@ tells the driver to dialog with the tablet the USB way. This option is mandatory for USB tablets. .TP 4 .B Option \fI"ForceDevice"\fP \fI"ISDV4"\fP -tells the driver to dialog with the tablet the Tablet PC way. Tablet PC is a -serial tablet using a special Wacom IV protocol, called ISDV4 protocol. This -option is mandatory for Tablet PC. +tells the driver to dialog with the tablet the Tablet PC way. Right now +we only support serial Tablet PC. It is a special Wacom IV protocol, +called ISDV4 protocol. This option is mandatory for Tablet PC. .TP 4 .B Option \fI"Suppress"\fP \fI"Inumber"\fP sets the position increment under which not to transmit coordinates. diff --git a/src/xdrv/Makefile.am b/src/xdrv/Makefile.am index bca5f45..4427ec3 100755 --- a/src/xdrv/Makefile.am +++ b/src/xdrv/Makefile.am @@ -25,7 +25,7 @@ ARCHITECTURE =@WCM_ARCH@ XSERVER64 =@WCM_XSERVER64@ if WCM_ENV_XORGSDK -DRIVER_INCLUDES = -I$(XORGSDK_DIR) $(X_CFLAGS) +DRIVER_INCLUDES = -I$(XORGSDK_DIR) $(X_CFLAGS) -DWCM_XORG endif if WCM_ENV_XF86 @@ -38,7 +38,7 @@ DRIVER_INCLUDES = \ -I$(XF86_DIR)/exports/include/X11 \ -I$(XF86_DIR)/include/extensions \ -I$(XF86_DIR) \ - -I$(XF86_DIR)/exports/include + -I$(XF86_DIR)/exports/include -DWCM_XFREE86 endif NO_MERGE_CONSTANTS=@WCM_NO_MERGE_CONSTANTS@ @@ -49,7 +49,7 @@ if WCM_DLLOADER DLLOADER=-fPIC endif -CFLAGS += $(WCM_CFLAGS_STACK_PROTECTOR) +CFLAGS += $(WCM_CFLAGS_STACK_PROTECTOR) -Wno-variadic-macros XF86OBJS = xf86Wacom.o wcmSerial.o wcmUSB.o wcmISDV4.o \ wcmXCommand.o wcmCommon.o wcmCompat.o wcmConfig.o \ diff --git a/src/xdrv/wcmCommon.c b/src/xdrv/wcmCommon.c index 22fc8cd..bc93b2f 100755 --- a/src/xdrv/wcmCommon.c +++ b/src/xdrv/wcmCommon.c @@ -2,24 +2,19 @@ * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "xf86Wacom.h" @@ -83,7 +78,11 @@ static void xf86WcmSetScreen(LocalDevicePtr local, int *value0, int *value1) if (!(priv->flags & ABSOLUTE_FLAG)) { /* screenToSet lags by one event, but not that important */ +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 priv->currentScreen = miPointerCurrentScreen()->myNum; +#else + priv->currentScreen = miPointerGetScreen(local->dev)->myNum; +#endif for (i = 0; i < priv->numScreen; i++) totalWidth += screenInfo.screens[i]->width; @@ -136,8 +135,13 @@ static void xf86WcmSetScreen(LocalDevicePtr local, int *value0, int *value1) else { /* tool on the tablet when driver starts */ +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 if (miPointerCurrentScreen()) priv->currentScreen = miPointerCurrentScreen()->myNum; +#else + if (miPointerGetScreen(local->dev)) + priv->currentScreen = miPointerGetScreen(local->dev)->myNum; +#endif priv->factorX = screenInfo.screens[priv->currentScreen]->width / sizeX; priv->factorY = screenInfo.screens[priv->currentScreen]->height / sizeY; } @@ -418,7 +422,9 @@ static void sendAButton(LocalDevicePtr local, int button, int mask, WacomDevicePtr priv = (WacomDevicePtr) local->private; WacomCommonPtr common = priv->common; int is_absolute = priv->flags & ABSOLUTE_FLAG; +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 int is_core = local->flags & (XI86_ALWAYS_CORE | XI86_CORE_POINTER); +#endif int i, button_idx, naxes = priv->naxes; if (IsPad(priv)) @@ -436,10 +442,11 @@ static void sendAButton(LocalDevicePtr local, int button, int mask, if (!button) return; +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 /* Switch the device to core mode, if required */ if (!is_core && (button & AC_CORE)) xf86XInputSetSendCoreEvents (local, TRUE); - +#endif DBG(4, priv->debugLevel, ErrorF( "sendAButton TPCButton(%s) button=%d state=%d " "code=%08x, for %s coreEvent=%s \n", @@ -523,10 +530,12 @@ static void sendAButton(LocalDevicePtr local, int button, int mask, break; } +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 /* Switch the device out of the core mode, if required */ if (!is_core && (button & AC_CORE)) xf86XInputSetSendCoreEvents (local, FALSE); +#endif } /***************************************************************************** @@ -540,8 +549,9 @@ static void sendWheelStripEvents(LocalDevicePtr local, const WacomDeviceState* d int fakeButton = 0, i, value = 0, naxes = priv->naxes; unsigned *keyP = 0; int is_absolute = priv->flags & ABSOLUTE_FLAG; +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 int is_core = local->flags & (XI86_ALWAYS_CORE | XI86_CORE_POINTER); - +#endif DBG(10, priv->debugLevel, ErrorF("sendWheelStripEvents for %s \n", local->name)); /* emulate events for relative wheel */ @@ -636,10 +646,11 @@ static void sendWheelStripEvents(LocalDevicePtr local, const WacomDeviceState* d if (!fakeButton) return; +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 /* Switch the device to core mode, if required */ if (!is_core && (fakeButton & AC_CORE)) xf86XInputSetSendCoreEvents (local, TRUE); - +#endif switch (fakeButton & AC_TYPE) { case AC_BUTTON: @@ -676,10 +687,12 @@ static void sendWheelStripEvents(LocalDevicePtr local, const WacomDeviceState* d ErrorF ("WARNING: [%s] unsupported event %x \n", local->name, fakeButton); } +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 /* Switch the device out of the core mode, if required */ if (!is_core && (fakeButton & AC_CORE)) xf86XInputSetSendCoreEvents (local, FALSE); +#endif } /***************************************************************************** @@ -861,6 +874,14 @@ void xf86WcmSendEvents(LocalDevicePtr local, const WacomDeviceState* ds) y *= param > 20.00 ? 20.00 : param; } } + +#if defined WCM_XORG && GET_ABI_MAJOR(ABI_XINPUT_VERSION) > 0 + /* Ugly hack for Xorg 7.3, which doesn't call xf86WcmDevConvert + * for coordinate conversion at the moment */ + x = (int)((double)x * priv->factorX + 0.5); + y = (int)((double)y * priv->factorY + 0.5); +#endif + if (type != PAD_ID) { /* coordinates are ready we can send events */ @@ -1069,8 +1090,13 @@ void xf86WcmEvent(WacomCommonPtr common, unsigned int channel, DBG(10, common->debugLevel, ErrorF("xf86WcmEvent at channel = %d\n", channel)); - /* tool on the tablet when driver starts */ + /* Tool on the tablet when driver starts. This sometime causes + * access errors to the device */ +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 if (!miPointerCurrentScreen()) +#else + if (!miPointerGetScreen(pDev->dev)) +#endif { DBG(1, common->debugLevel, ErrorF("xf86WcmEvent: " "Wacom driver can not get Current Screen ID\n")); diff --git a/src/xdrv/wcmCompat.c b/src/xdrv/wcmCompat.c index b588a6a..dc3f1ce 100755 --- a/src/xdrv/wcmCompat.c +++ b/src/xdrv/wcmCompat.c @@ -1,24 +1,19 @@ /* * Copyright 1995-2004 by Frederic Lepied, France. <Lepied@XFree86.org> * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "xf86Wacom.h" diff --git a/src/xdrv/wcmConfig.c b/src/xdrv/wcmConfig.c index fbe15cf..c5726e3 100755 --- a/src/xdrv/wcmConfig.c +++ b/src/xdrv/wcmConfig.c @@ -2,24 +2,19 @@ * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom. <pingc@wacom.com> * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "xf86Wacom.h" @@ -90,7 +85,9 @@ LocalDevicePtr xf86WcmAllocate(char* name, int flag) local->dev = NULL; local->private = priv; local->private_flags = 0; +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 local->history_size = 0; +#endif local->old_x = -1; local->old_y = -1; diff --git a/src/xdrv/wcmFilter.c b/src/xdrv/wcmFilter.c index 131b87f..7e8d4fd 100755 --- a/src/xdrv/wcmFilter.c +++ b/src/xdrv/wcmFilter.c @@ -2,14 +2,19 @@ * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom. <pingc@wacom.com> * - * 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, and that the name of Frederic Lepied not be - * used in advertising or publicity pertaining to distribution of the - * software without specific, written prior permission. It is provided - * "as is" without express or implied warranty. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "wcmFilter.h" diff --git a/src/xdrv/wcmFilter.h b/src/xdrv/wcmFilter.h index 301bff9..d5995e4 100755 --- a/src/xdrv/wcmFilter.h +++ b/src/xdrv/wcmFilter.h @@ -1,24 +1,20 @@ /* * Copyright 1995-2003 by Frederic Lepied, France. <Lepied@XFree86.org> - * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * Copyright 2002-2007 by Ping Cheng, Wacom. <pingc@wacom.com> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __XF86_WCMFILTER_H diff --git a/src/xdrv/wcmISDV4.c b/src/xdrv/wcmISDV4.c index 56340b5..c60c108 100755 --- a/src/xdrv/wcmISDV4.c +++ b/src/xdrv/wcmISDV4.c @@ -1,25 +1,20 @@ /* * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> - * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "xf86Wacom.h" @@ -104,7 +99,9 @@ static void isdv4InitISDV4(WacomCommonPtr common, const char* id, float version) { /* set parameters */ common->wcmProtocolLevel = 4; - common->wcmPktLength = 9; /* length of a packet */ + common->wcmPktLength = 5; /* length of a packet + * device packets are 9 bytes long, + * multitouch are only 5 */ common->wcmResolX = 2540; /* tablet X resolution in points/inch */ common->wcmResolY = 2540; /* tablet Y resolution in points/inch */ common->wcmTPCButton = 1; /* Tablet PC buttons on by default */ @@ -209,13 +206,29 @@ static int isdv4Parse(LocalDevicePtr local, const unsigned char* data) WacomCommonPtr common = priv->common; WacomDeviceState* last = &common->wcmChannel[0].valid.state; WacomDeviceState* ds; - int n, cur_type; + int n, cur_type, ismt = 0; + static int lastismt = 0; DBG(10, common->debugLevel, ErrorF("isdv4Parse \n")); - if ((n = xf86WcmSerialValidate(common,data)) > 0) + + /* determine the type of message */ + if (data[0] & 0x10) { - return n; + ismt = 1; + common->wcmPktLength = 5; + } + else + { + common->wcmPktLength = 9; + if (common->buffer + common->bufpos - data < common->wcmPktLength) + { + /* we can't handle this yet */ + return 0; + } } + + if ((n = xf86WcmSerialValidate(common,data)) > 0) + return n; else { /* Coordinate data bit check */ @@ -226,58 +239,82 @@ static int isdv4Parse(LocalDevicePtr local, const unsigned char* data) ds = &common->wcmChannel[0].work; RESET_RELATIVE(*ds); - ds->proximity = (data[0] & 0x20); + if (ismt) + { + if (!lastismt && last->pressure) + { + /* pen sends both pen and MultiTouch input, + * since pressing it creates pressure. + * We only want the pen input though. + */ + return common->wcmPktLength; + } + lastismt = ismt; + + /* MultiTouch input is comparably simple */ + ds->proximity = 0; + ds->x = (((((int)data[1]) << 7) | ((int)data[2])) - 18) * common->wcmMaxX / 926; + ds->y = (((((int)data[3]) << 7) | ((int)data[4])) - 51) * common->wcmMaxY / 934; + ds->pressure = (data[0] & 0x01) * common->wcmMaxZ; + ds->buttons = 1; + ds->device_id = STYLUS_DEVICE_ID; + ds->device_type = 0; + DBG(8, priv->debugLevel, ErrorF("isdv4Parse MultiTouch\n")); + } + else + { + ds->proximity = (data[0] & 0x20); - /* x and y in "normal" orientetion (wide length is X) */ - ds->x = (((int)data[6] & 0x60) >> 5) | ((int)data[2] << 2) | - ((int)data[1] << 9); - ds->y = (((int)data[6] & 0x18) >> 3) | ((int)data[4] << 2) | - ((int)data[3] << 9); + /* x and y in "normal" orientetion (wide length is X) */ + ds->x = (((int)data[6] & 0x60) >> 5) | ((int)data[2] << 2) | + ((int)data[1] << 9); + ds->y = (((int)data[6] & 0x18) >> 3) | ((int)data[4] << 2) | + ((int)data[3] << 9); - /* pressure */ - ds->pressure = (((data[6] & 0x07) << 7) | data[5] ); + /* pressure */ + ds->pressure = (((data[6] & 0x07) << 7) | data[5] ); - /* buttons */ - ds->buttons = (data[0] & 0x07); + /* buttons */ + ds->buttons = (data[0] & 0x07); - /* check which device we have */ - cur_type = (ds->buttons & 4) ? ERASER_ID : STYLUS_ID; + /* check which device we have */ + cur_type = (ds->buttons & 4) ? ERASER_ID : STYLUS_ID; - /* first time into prox */ - if (!last->proximity && ds->proximity) - ds->device_type = cur_type; - /* check on previous proximity */ - else if (cur_type == STYLUS_ID && ds->proximity) - { - /* we were fooled by tip and second - * sideswitch when it came into prox */ - if ((ds->device_type != cur_type) && - (ds->device_type == ERASER_ID)) - { - /* send a prox-out for old device */ - WacomDeviceState out = { 0 }; - xf86WcmEvent(common, 0, &out); + /* first time into prox */ + if (!last->proximity && ds->proximity) ds->device_type = cur_type; + /* check on previous proximity */ + else if (cur_type == STYLUS_ID && ds->proximity) + { + /* we were fooled by tip and second + * sideswitch when it came into prox */ + if ((ds->device_type != cur_type) && + (ds->device_type == ERASER_ID)) + { + /* send a prox-out for old device */ + WacomDeviceState out = { 0 }; + xf86WcmEvent(common, 0, &out); + ds->device_type = cur_type; + } } - } - - ds->device_id = (ds->device_type == CURSOR_ID) ? CURSOR_DEVICE_ID : STYLUS_DEVICE_ID; - /* don't send button 3 event for eraser - * button 1 event will be sent by testing presure level - */ - if (ds->device_type == ERASER_ID && ds->buttons&4) - { - ds->buttons = 0; - ds->device_id = ERASER_DEVICE_ID; - } + ds->device_id = (ds->device_type == CURSOR_ID) ? + CURSOR_DEVICE_ID : STYLUS_DEVICE_ID; - DBG(8, common->debugLevel, ErrorF("isdv4Parse %s\n", - ds->device_type == ERASER_ID ? "ERASER " : - ds->device_type == STYLUS_ID ? "STYLUS" : "NONE")); + /* don't send button 3 event for eraser + * button 1 event will be sent by testing presure level + */ + if (ds->device_type == ERASER_ID && ds->buttons&4) + { + ds->buttons = 0; + ds->device_id = ERASER_DEVICE_ID; + } + DBG(8, priv->debugLevel, ErrorF("isdv4Parse %s\n", + ds->device_type == ERASER_ID ? "ERASER " : + ds->device_type == STYLUS_ID ? "STYLUS" : "NONE")); + } xf86WcmEvent(common,0,ds); - return common->wcmPktLength; } diff --git a/src/xdrv/wcmSerial.c b/src/xdrv/wcmSerial.c index 042c255..c24dc66 100755 --- a/src/xdrv/wcmSerial.c +++ b/src/xdrv/wcmSerial.c @@ -1,25 +1,20 @@ /* * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> - * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "xf86Wacom.h" @@ -691,7 +686,7 @@ static int serialParseProtocol4(LocalDevicePtr local, const unsigned char* data) else ds->pressure = (data[6] & ZAXIS_BITS) | - (data[6] & ZAXIS_SIGN_BIT) ? 0 : 0x40; + ((data[6] & ZAXIS_SIGN_BIT) ? 0 : 0x40); /* get button state */ ds->buttons = (data[3] & BUTTONS_BITS) >> 3; diff --git a/src/xdrv/wcmSerial.h b/src/xdrv/wcmSerial.h index 8ef3572..0d5f614 100755 --- a/src/xdrv/wcmSerial.h +++ b/src/xdrv/wcmSerial.h @@ -1,24 +1,20 @@ /* * Copyright 1995-2003 by Frederic Lepied, France. <Lepied@XFree86.org> - * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __XF86_WCMSERIAL_H diff --git a/src/xdrv/wcmUSB.c b/src/xdrv/wcmUSB.c index 668bdae..af6a6f4 100755 --- a/src/xdrv/wcmUSB.c +++ b/src/xdrv/wcmUSB.c @@ -2,24 +2,19 @@ * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "xf86Wacom.h" diff --git a/src/xdrv/wcmXCommand.c b/src/xdrv/wcmXCommand.c index e6e36a9..b7aab8e 100644 --- a/src/xdrv/wcmXCommand.c +++ b/src/xdrv/wcmXCommand.c @@ -1,24 +1,19 @@ -/* $XConsortium: wcmXCommon.c /main/20 1996/10/27 11:05:20 kaleb $ */ /* * Copyright 2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> * - * 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, and that the name of Ping Cheng not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Ping Cheng makes no - * representations about the suitability of this software for any purpose. - * It is provided "as is" without express or implied warranty. - - * PING CHENG DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* diff --git a/src/xdrv/xf86Wacom.c b/src/xdrv/xf86Wacom.c index a15ff18..a5a7a8e 100755 --- a/src/xdrv/xf86Wacom.c +++ b/src/xdrv/xf86Wacom.c @@ -1,30 +1,22 @@ -/* $XConsortium: xf86Wacom.c /main/20 1996/10/27 11:05:20 kaleb $ */ /* * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $XFree86: xc/programs/Xserver/hw/xfree86/input/wacom/xf86Wacom.c,v 1.26 2001/04/01 14:00:13 tsi Exp $ */ - /* * This driver is currently able to handle Wacom IV, V, and ISDV4 protocols. * @@ -63,9 +55,10 @@ * 2007-05-18 47-pc0.7.7-10 - support new xsetwacom commands * 2007-06-05 47-pc0.7.7-11 - Test Ron's patches * 2007-06-15 47-pc0.7.7-12 - enable changing number of raw data + * 2007-06-25 47-pc0.7.8 - new release */ -static const char identification[] = "$Identification: 47-0.7.7-12 $"; +static const char identification[] = "$Identification: 47-0.7.8 $"; /****************************************************************************/ @@ -463,8 +456,13 @@ static int xf86WcmRegisterX11Devices (LocalDevicePtr local) nbaxes = priv->naxes = 6; if (InitValuatorClassDeviceStruct(local->dev, nbaxes, +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 xf86GetMotionEvents, local->history_size, +#else + GetMotionHistory, + GetMotionHistorySize(), +#endif ((priv->flags & ABSOLUTE_FLAG) ? Absolute : Relative) | OutOfProximity ) == FALSE) @@ -511,8 +509,10 @@ static int xf86WcmRegisterX11Devices (LocalDevicePtr local) } } +#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 /* allocate motion history buffer if needed */ xf86MotionHistoryAllocate(local); +#endif /* initialize screen bounding rect */ if (priv->twinview != TV_NONE) diff --git a/src/xdrv/xf86Wacom.h b/src/xdrv/xf86Wacom.h index 001a532..8ab8128 100755 --- a/src/xdrv/xf86Wacom.h +++ b/src/xdrv/xf86Wacom.h @@ -2,24 +2,19 @@ * Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org> * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com> * - * 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, and that the name of Frederic Lepied not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Frederic Lepied makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL FREDERIC LEPIED 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. + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __XF86_XF86WACOM_H |