Signed-off-by: Elaine Lefler elaineclefler@gmail.com ---
v2: Splitting into smaller patches as per feedback.
This structure was being defined redundantly in multiple places. It has been moved to a public header where everyone can access it.
pktdef.h, which was never used at all, has been removed. --- dlls/winex11.drv/wintab.c | 17 --- dlls/wintab32/wintab_internal.h | 17 --- include/Makefile.in | 1 - include/pktdef.h | 248 -------------------------------- include/wintab.h | 19 ++- 5 files changed, 17 insertions(+), 285 deletions(-) delete mode 100644 include/pktdef.h
diff --git a/dlls/winex11.drv/wintab.c b/dlls/winex11.drv/wintab.c index 331601c3325..ef9bbc6be45 100644 --- a/dlls/winex11.drv/wintab.c +++ b/dlls/winex11.drv/wintab.c @@ -233,23 +233,6 @@ typedef struct tagWTI_DEVICES_INFO * linux wacom lists all the known values and this isn't one of them */ #define CSR_TYPE_OTHER 0x000
-typedef struct tagWTPACKET { - HCTX pkContext; - UINT pkStatus; - LONG pkTime; - WTPKT pkChanged; - UINT pkSerialNumber; - UINT pkCursor; - DWORD pkButtons; - DWORD pkX; - DWORD pkY; - DWORD pkZ; - UINT pkNormalPressure; - UINT pkTangentPressure; - ORIENTATION pkOrientation; - ROTATION pkRotation; /* 1.1 */ -} WTPACKET, *LPWTPACKET; -
#ifdef SONAME_LIBXI
diff --git a/dlls/wintab32/wintab_internal.h b/dlls/wintab32/wintab_internal.h index 18c64bfe700..3b31d021f66 100644 --- a/dlls/wintab32/wintab_internal.h +++ b/dlls/wintab32/wintab_internal.h @@ -116,23 +116,6 @@ typedef struct tagWTI_EXTENSIONS_INFO */ } WTI_EXTENSIONS_INFO, *LPWTI_EXTENSIONS_INFO;
-typedef struct tagWTPACKET { - HCTX pkContext; - UINT pkStatus; - LONG pkTime; - WTPKT pkChanged; - UINT pkSerialNumber; - UINT pkCursor; - DWORD pkButtons; - DWORD pkX; - DWORD pkY; - DWORD pkZ; - UINT pkNormalPressure; - UINT pkTangentPressure; - ORIENTATION pkOrientation; - ROTATION pkRotation; /* 1.1 */ -} WTPACKET, *LPWTPACKET; - typedef struct tagOPENCONTEXT { HCTX handle; diff --git a/include/Makefile.in b/include/Makefile.in index 9578c557af7..b9d2f8416fa 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -590,7 +590,6 @@ SOURCES = \ perflib.h \ perhist.idl \ physicalmonitorenumerationapi.h \ - pktdef.h \ poppack.h \ powrprof.h \ prntvpt.h \ diff --git a/include/pktdef.h b/include/pktdef.h deleted file mode 100644 index a1622062658..00000000000 --- a/include/pktdef.h +++ /dev/null @@ -1,248 +0,0 @@ -/* - * Copyright (C) 1991-1998 by LCS/Telegraphics - * Copyright (C) 2002 Patrik Stridvall - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library 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 Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -#ifndef __WINE_PKTDEF_H -#define __WINE_PKTDEF_H - -/*********************************************************************** - * How to use pktdef.h: - * - * 1. Include wintab.h - * 2. if using just one packet format: - * a. Define PACKETDATA and PACKETMODE as or'ed combinations of WTPKT bits - * (use the PK_* identifiers). - * b. Include pktdef.h. - * c. The generated structure typedef will be called PACKET. Use PACKETDATA - * and PACKETMODE to fill in the LOGCONTEXT structure. - * 3. If using multiple packet formats, for each one: - * a. Define PACKETNAME. Its text value will be a prefix for this packet's - * parameters and names. - * b. Define <PACKETNAME>PACKETDATA and <PACKETNAME>PACKETMODE similar to - * 2.a. above. - * c. Include pktdef.h. - * d. The generated structure typedef will be called - * <PACKETNAME>PACKET. Compare with 2.c. above and example #2 below. - * 4. If using extension packet data, do the following additional steps - * for each extension: - * a. Before including pktdef.h, define <PACKETNAME>PACKET<EXTENSION> - * as either PKEXT_ABSOLUTE or PKEXT_RELATIVE. - * b. The generated structure typedef will contain a field for the - * extension data. - * c. Scan the WTI_EXTENSION categories to find the extension's - * packet mask bit. - * d. OR the packet mask bit with <PACKETNAME>PACKETDATA and use the - * result in the lcPktData field of the LOGCONTEXT structure. - * e. If <PACKETNAME>PACKET<EXTENSION> was PKEXT_RELATIVE, OR the - * packet mask bit with <PACKETNAME>PACKETMODE and use the result - * in the lcPktMode field of the LOGCONTEXT structure. - * - * - * Example #1. -- single packet format - * - * #include <wintab.h> - * #define PACKETDATA PK_X | PK_Y | PK_BUTTONS /@ x, y, buttons @/ - * #define PACKETMODE PK_BUTTONS /@ buttons relative mode @/ - * #include <pktdef.h> - * ... - * lc.lcPktData = PACKETDATA; - * lc.lcPktMode = PACKETMODE; - * - * Example #2. -- multiple formats - * - * #include <wintab.h> - * #define PACKETNAME MOE - * #define MOEPACKETDATA PK_X | PK_Y | PK_BUTTONS /@ x, y, buttons @/ - * #define MOEPACKETMODE PK_BUTTONS /@ buttons relative mode @/ - * #include <pktdef.h> - * #define PACKETNAME LARRY - * #define LARRYPACKETDATA PK_Y | PK_Z | PK_BUTTONS /@ y, z, buttons @/ - * #define LARRYPACKETMODE PK_BUTTONS /@ buttons relative mode @/ - * #include <pktdef.h> - * #define PACKETNAME CURLY - * #define CURLYPACKETDATA PK_X | PK_Z | PK_BUTTONS /@ x, z, buttons @/ - * #define CURLYPACKETMODE PK_BUTTONS /@ buttons relative mode @/ - * #include <pktdef.h> - * ... - * lcMOE.lcPktData = MOEPACKETDATA; - * lcMOE.lcPktMode = MOEPACKETMODE; - * ... - * lcLARRY.lcPktData = LARRYPACKETDATA; - * lcLARRY.lcPktMode = LARRYPACKETMODE; - * ... - * lcCURLY.lcPktData = CURLYPACKETDATA; - * lcCURLY.lcPktMode = CURLYPACKETMODE; - * - * Example #3. -- extension packet data "XFOO". - * - * #include <wintab.h> - * #define PACKETDATA PK_X | PK_Y | PK_BUTTONS /@ x, y, buttons @/ - * #define PACKETMODE PK_BUTTONS /@ buttons relative mode @/ - * #define PACKETXFOO PKEXT_ABSOLUTE /@ XFOO absolute mode @/ - * #include <pktdef.h> - * ... - * UINT ScanExts(UINT wTag) - * { - * UINT i; - * UINT wScanTag; - * - * /@ scan for wTag's info category. @/ - * for (i = 0; WTInfo(WTI_EXTENSIONS + i, EXT_TAG, &wScanTag); i++) { - * if (wTag == wScanTag) { - * /@ return category offset from WTI_EXTENSIONS. @/ - * return i; - * } - * } - * /@ return error code. @/ - * return 0xFFFF; - * } - * ... - * lc.lcPktData = PACKETDATA; - * lc.lcPktMode = PACKETMODE; - * #ifdef PACKETXFOO - * categoryXFOO = ScanExts(WTX_XFOO); - * WTInfo(WTI_EXTENSIONS + categoryXFOO, EXT_MASK, &maskXFOO); - * lc.lcPktData |= maskXFOO; - * #if PACKETXFOO == PKEXT_RELATIVE - * lc.lcPktMode |= maskXFOO; - * #endif - * #endif - * WTOpen(hWnd, &lc, TRUE); - */ - -#ifdef __cplusplus -extern "C" { -#endif /* defined(__cplusplus) */ - -#ifndef PACKETNAME -/* if no packet name prefix */ -# define __PFX(x) x -# define __IFX(x,y) x ## y -#else -/* add prefixes and infixes to packet format names */ -# define __PFX(x) __PFX2(PACKETNAME,x) -# define __PFX2(p,x) __PFX3(p,x) -# define __PFX3(p,x) p ## x -# define __IFX(x,y) __IFX2(x,PACKETNAME,y) -# define __IFX2(x,i,y) __IFX3(x,i,y) -# define __IFX3(x,i,y) x ## i ## y -#endif - -#define __SFX2(x,s) __SFX3(x,s) -#define __SFX3(x,s) x ## s - -#define __TAG __IFX(tag,PACKET) -#define __TYPES \ - __PFX(PACKET), * __IFX(P,PACKET), \ - * __IFX(NP,PACKET), * __IFX(LP,PACKET) - -#define __DATA (__PFX(PACKETDATA)) -#define __MODE (__PFX(PACKETMODE)) -#define __EXT(x) __SFX2(__PFX(PACKET),x) - -typedef struct __TAG { -#if (__DATA & PK_CONTEXT) - HCTX pkContext; -#endif -#if (__DATA & PK_STATUS) - UINT pkStatus; -#endif -#if (__DATA & PK_TIME) - DWORD pkTime; -#endif -#if (__DATA & PK_CHANGED) - WTPKT pkChanged; -#endif -#if (__DATA & PK_SERIAL_NUMBER) - UINT pkSerialNumber; -#endif -#if (__DATA & PK_CURSOR) - UINT pkCursor; -#endif -#if (__DATA & PK_BUTTONS) - DWORD pkButtons; -#endif -#if (__DATA & PK_X) - LONG pkX; -#endif -#if (__DATA & PK_Y) - LONG pkY; -#endif -#if (__DATA & PK_Z) - LONG pkZ; -#endif -#if (__DATA & PK_NORMAL_PRESSURE) -# if (__MODE & PK_NORMAL_PRESSURE) - /* relative */ - int pkNormalPressure; -# else - /* absolute */ - UINT pkNormalPressure; -# endif -#endif -#if (__DATA & PK_TANGENT_PRESSURE) -# if (__MODE & PK_TANGENT_PRESSURE) - /* relative */ - int pkTangentPressure; -# else - /* absolute */ - UINT pkTangentPressure; -# endif -#endif -#if (__DATA & PK_ORIENTATION) - ORIENTATION pkOrientation; -#endif -#if (__DATA & PK_ROTATION) - ROTATION pkRotation; /* 1.1 */ -#endif - -#ifndef NOWTEXTENSIONS - /* extensions begin here. */ - -#if (__EXT(FKEYS) == PKEXT_RELATIVE) || (__EXT(FKEYS) == PKEXT_ABSOLUTE) - UINT pkFKeys; -#endif -#if (__EXT(TILT) == PKEXT_RELATIVE) || (__EXT(TILT) == PKEXT_ABSOLUTE) - TILT pkTilt; -#endif - -#endif - -} __TYPES; - -#undef PACKETNAME -#undef __TAG -#undef __TAG2 -#undef __TYPES -#undef __TYPES2 -#undef __DATA -#undef __MODE -#undef __PFX -#undef __PFX2 -#undef __PFX3 -#undef __IFX -#undef __IFX2 -#undef __IFX3 -#undef __SFX2 -#undef __SFX3 - -#ifdef __cplusplus -} /* extern "C" */ -#endif /* defined(__cplusplus) */ - -#endif /* defined(__WINE_PKTDEF_H */ diff --git a/include/wintab.h b/include/wintab.h index d10371b0217..9f607bbe7ef 100644 --- a/include/wintab.h +++ b/include/wintab.h @@ -462,8 +462,6 @@ DECL_WINELIB_TYPE_AW(LPLOGCONTEXT) * EVENT DATA DEFS */
-/* For packet structure definition, see pktdef.h */ - /* packet status values */ #define TPS_PROXIMITY 0x0001 #define TPS_QUEUE_ERR 0x0002 @@ -493,6 +491,23 @@ typedef struct tagROTATION { /* 1.1 */ #define TBN_UP 1 #define TBN_DOWN 2
+typedef struct tagWTPACKET { + HCTX pkContext; + UINT pkStatus; + LONG pkTime; + WTPKT pkChanged; + UINT pkSerialNumber; + UINT pkCursor; + DWORD pkButtons; + DWORD pkX; + DWORD pkY; + DWORD pkZ; + UINT pkNormalPressure; + UINT pkTangentPressure; + ORIENTATION pkOrientation; + ROTATION pkRotation; /* 1.1 */ +} WTPACKET, *LPWTPACKET; + /*********************************************************************** * DEVICE CONFIG CONSTANTS */