af062818b47340eef15700d2f0211576ba3506eevboxsync/*
af062818b47340eef15700d2f0211576ba3506eevboxsync * Copyright (C) 1991-1998 by LCS/Telegraphics
af062818b47340eef15700d2f0211576ba3506eevboxsync * Copyright (C) 2002 Patrik Stridvall
af062818b47340eef15700d2f0211576ba3506eevboxsync *
af062818b47340eef15700d2f0211576ba3506eevboxsync * This library is free software; you can redistribute it and/or
af062818b47340eef15700d2f0211576ba3506eevboxsync * modify it under the terms of the GNU Lesser General Public
af062818b47340eef15700d2f0211576ba3506eevboxsync * License as published by the Free Software Foundation; either
af062818b47340eef15700d2f0211576ba3506eevboxsync * version 2.1 of the License, or (at your option) any later version.
af062818b47340eef15700d2f0211576ba3506eevboxsync *
af062818b47340eef15700d2f0211576ba3506eevboxsync * This library is distributed in the hope that it will be useful,
af062818b47340eef15700d2f0211576ba3506eevboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
af062818b47340eef15700d2f0211576ba3506eevboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
af062818b47340eef15700d2f0211576ba3506eevboxsync * Lesser General Public License for more details.
af062818b47340eef15700d2f0211576ba3506eevboxsync *
af062818b47340eef15700d2f0211576ba3506eevboxsync * You should have received a copy of the GNU Lesser General Public
af062818b47340eef15700d2f0211576ba3506eevboxsync * License along with this library; if not, write to the Free Software
af062818b47340eef15700d2f0211576ba3506eevboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync/*
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * a choice of LGPL license versions is made available with the language indicating
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * of the LGPL is applied is otherwise unspecified.
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync */
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef __WINE_WINTAB_H
af062818b47340eef15700d2f0211576ba3506eevboxsync#define __WINE_WINTAB_H
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifdef __cplusplus
af062818b47340eef15700d2f0211576ba3506eevboxsyncextern "C" {
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif /* defined(__cplusplus) */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * Messages
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMESSAGES
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_DEFBASE 0x7FF0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_MAXOFFSET 0xF
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_PACKET(b) ((b)+0)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_CTXOPEN(b) ((b)+1)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_CTXCLOSE(b) ((b)+2)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_CTXUPDATE(b) ((b)+3)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_CTXOVERLAP(b) ((b)+4)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_PROXIMITY(b) ((b)+5)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_INFOCHANGE(b) ((b)+6)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_CSRCHANGE(b) ((b)+7) /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define _WT_MAX(b) ((b)+WT_MAXOFFSET)
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_PACKET _WT_PACKET(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_CTXOPEN _WT_CTXOPEN(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_CTXCLOSE _WT_CTXCLOSE(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_CTXUPDATE _WT_CTXUPDATE(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_CTXOVERLAP _WT_CTXOVERLAP(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_PROXIMITY _WT_PROXIMITY(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_INFOCHANGE _WT_INFOCHANGE(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_CSRCHANGE _WT_CSRCHANGE(WT_DEFBASE) /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WT_MAX _WT_MAX(WT_DEFBASE)
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * COMMON DATA DEFS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncDECLARE_HANDLE(HMGR); /* manager handle */
af062818b47340eef15700d2f0211576ba3506eevboxsyncDECLARE_HANDLE(HCTX); /* context handle */
af062818b47340eef15700d2f0211576ba3506eevboxsyncDECLARE_HANDLE(HWTHOOK); /* hook handle */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef DWORD WTPKT; /* packet mask */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTPKT
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* WTPKT bits */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_CONTEXT 0x0001 /* reporting context */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_STATUS 0x0002 /* status bits */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_TIME 0x0004 /* time stamp */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_CHANGED 0x0008 /* change bit vector */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_SERIAL_NUMBER 0x0010 /* packet serial number */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_CURSOR 0x0020 /* reporting cursor */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_BUTTONS 0x0040 /* button information */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_X 0x0080 /* x axis */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_Y 0x0100 /* y axis */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_Z 0x0200 /* z axis */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_NORMAL_PRESSURE 0x0400 /* normal or tip pressure */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_TANGENT_PRESSURE 0x0800 /* tangential or barrel pressure */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_ORIENTATION 0x1000 /* orientation info: tilts */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PK_ROTATION 0x2000 /* rotation info; 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef DWORD FIX32; /* fixed-point arithmetic type */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOFIX32
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define INT(x) HIWORD(x)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define FRAC(x) LOWORD(x)
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CASTFIX32(x) ((FIX32)((x)*65536L))
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ROUND(x) (INT(x) + (FRAC(x) > (WORD)0x8000))
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define FIX_MUL(c, a, b) \
af062818b47340eef15700d2f0211576ba3506eevboxsync (c = (((DWORD)FRAC(a) * FRAC(b)) >> 16) + \
af062818b47340eef15700d2f0211576ba3506eevboxsync (DWORD)INT(a) * FRAC(b) + \
af062818b47340eef15700d2f0211576ba3506eevboxsync (DWORD)INT(b) * FRAC(a) + \
af062818b47340eef15700d2f0211576ba3506eevboxsync ((DWORD)INT(a) * INT(b) << 16))
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifdef _WINDLL
af062818b47340eef15700d2f0211576ba3506eevboxsync# define FIX_DIV_SC static
af062818b47340eef15700d2f0211576ba3506eevboxsync#else
af062818b47340eef15700d2f0211576ba3506eevboxsync# define FIX_DIV_SC
af062818b47340eef15700d2f0211576ba3506eevboxsync# endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define FIX_DIV(c, a, b) \
af062818b47340eef15700d2f0211576ba3506eevboxsync { \
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX_DIV_SC DWORD temp, rem, btemp; \
af062818b47340eef15700d2f0211576ba3506eevboxsync \
af062818b47340eef15700d2f0211576ba3506eevboxsync /* fraction done bytewise */ \
af062818b47340eef15700d2f0211576ba3506eevboxsync temp = ((a / b) << 16); \
af062818b47340eef15700d2f0211576ba3506eevboxsync rem = a % b; \
af062818b47340eef15700d2f0211576ba3506eevboxsync btemp = b; \
af062818b47340eef15700d2f0211576ba3506eevboxsync if (INT(btemp) < 256) { \
af062818b47340eef15700d2f0211576ba3506eevboxsync rem <<= 8; \
af062818b47340eef15700d2f0211576ba3506eevboxsync } else { \
af062818b47340eef15700d2f0211576ba3506eevboxsync btemp >>= 8; \
af062818b47340eef15700d2f0211576ba3506eevboxsync } \
af062818b47340eef15700d2f0211576ba3506eevboxsync temp += ((rem / btemp) << 8); \
af062818b47340eef15700d2f0211576ba3506eevboxsync rem %= btemp; \
af062818b47340eef15700d2f0211576ba3506eevboxsync rem <<= 8; \
af062818b47340eef15700d2f0211576ba3506eevboxsync temp += rem / btemp; \
af062818b47340eef15700d2f0211576ba3506eevboxsync c = temp; \
af062818b47340eef15700d2f0211576ba3506eevboxsync }
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * INFO DATA DEFS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTINFO
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTAXIS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct tagAXIS {
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG axMin;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG axMax;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT axUnits;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 axResolution;
af062818b47340eef15700d2f0211576ba3506eevboxsync} AXIS, *PAXIS, *NPAXIS, *LPAXIS;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* unit specifiers */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TU_NONE 0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TU_INCHES 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TU_CENTIMETERS 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TU_CIRCLE 3
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTSYSBUTTONS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* system button assignment values */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_NONE 0x00
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_LCLICK 0x01
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_LDBLCLICK 0x02
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_LDRAG 0x03
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_RCLICK 0x04
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_RDBLCLICK 0x05
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_RDRAG 0x06
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_MCLICK 0x07
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_MDBLCLICK 0x08
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_MDRAG 0x09
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* for Pen Windows */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_PTCLICK 0x10
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_PTDBLCLICK 0x20
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_PTDRAG 0x30
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_PNCLICK 0x40
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_PNDBLCLICK 0x50
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_PNDRAG 0x60
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P1CLICK 0x70
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P1DBLCLICK 0x80
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P1DRAG 0x90
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P2CLICK 0xA0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P2DBLCLICK 0xB0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P2DRAG 0xC0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P3CLICK 0xD0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P3DBLCLICK 0xE0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define SBN_P3DRAG 0xF0
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTCAPABILITIES
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* hardware capabilities */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define HWC_INTEGRATED 0x0001
af062818b47340eef15700d2f0211576ba3506eevboxsync#define HWC_TOUCH 0x0002
af062818b47340eef15700d2f0211576ba3506eevboxsync#define HWC_HARDPROX 0x0004
af062818b47340eef15700d2f0211576ba3506eevboxsync#define HWC_PHYSID_CURSORS 0x0008 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTIFC
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTCURSORS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* cursor capabilities */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CRC_MULTIMODE 0x0001 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CRC_AGGREGATE 0x0002 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CRC_INVERT 0x0004 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* info categories */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_INTERFACE 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_WINTABID 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_SPECVERSION 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_IMPLVERSION 3
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_NDEVICES 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_NCURSORS 5
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_NCONTEXTS 6
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_CTXOPTIONS 7
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_CTXSAVESIZE 8
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_NEXTENSIONS 9
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_NMANAGERS 10
af062818b47340eef15700d2f0211576ba3506eevboxsync#define IFC_MAX 10
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTSTATUS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_STATUS 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_CONTEXTS 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_SYSCTXS 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_PKTRATE 3
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_PKTDATA 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_MANAGERS 5
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_SYSTEM 6
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_BUTTONUSE 7
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_SYSBTNUSE 8
af062818b47340eef15700d2f0211576ba3506eevboxsync#define STA_MAX 8
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTDEFCONTEXT
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_DEFCONTEXT 3
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_DEFSYSCTX 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_DDCTXS 400 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_DSCTXS 500 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_NAME 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_OPTIONS 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_STATUS 3
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_LOCKS 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_MSGBASE 5
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_DEVICE 6
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_PKTRATE 7
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_PKTDATA 8
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_PKTMODE 9
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_MOVEMASK 10
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_BTNDNMASK 11
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_BTNUPMASK 12
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_INORGX 13
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_INORGY 14
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_INORGZ 15
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_INEXTX 16
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_INEXTY 17
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_INEXTZ 18
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_OUTORGX 19
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_OUTORGY 20
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_OUTORGZ 21
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_OUTEXTX 22
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_OUTEXTY 23
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_OUTEXTZ 24
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SENSX 25
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SENSY 26
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SENSZ 27
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SYSMODE 28
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SYSORGX 29
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SYSORGY 30
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SYSEXTX 31
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SYSEXTY 32
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SYSSENSX 33
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_SYSSENSY 34
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CTX_MAX 34
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTDEVICES
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_DEVICES 100
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_NAME 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_HARDWARE 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_NCSRTYPES 3
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_FIRSTCSR 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_PKTRATE 5
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_PKTDATA 6
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_PKTMODE 7
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_CSRDATA 8
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_XMARGIN 9
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_YMARGIN 10
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_ZMARGIN 11
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_X 12
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_Y 13
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_Z 14
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_NPRESSURE 15
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_TPRESSURE 16
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_ORIENTATION 17
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_ROTATION 18 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_PNPID 19 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define DVC_MAX 19
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTCURSORS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_CURSORS 200
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_NAME 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_ACTIVE 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_PKTDATA 3
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_BUTTONS 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_BUTTONBITS 5
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_BTNNAMES 6
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_BUTTONMAP 7
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_SYSBTNMAP 8
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_NPBUTTON 9
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_NPBTNMARKS 10
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_NPRESPONSE 11
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_TPBUTTON 12
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_TPBTNMARKS 13
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_TPRESPONSE 14
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_PHYSID 15 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_MODE 16 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_MINPKTDATA 17 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_MINBUTTONS 18 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_CAPABILITIES 19 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync/* from http://www.wacomeng.com/devsupport/ibmpc/wacomwindevfaq.html */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_TYPE 20
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CSR_MAX 20
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTEXTENSIONS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTI_EXTENSIONS 300
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_NAME 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_TAG 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_MASK 3
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_SIZE 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_AXES 5
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_DEFAULT 6
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_DEFCONTEXT 7
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_DEFSYSCTX 8
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_CURSORS 9
af062818b47340eef15700d2f0211576ba3506eevboxsync#define EXT_MAX 109 /* Allow 100 cursors */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * CONTEXT DATA DEFS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define LCNAMELEN 40
af062818b47340eef15700d2f0211576ba3506eevboxsync#define LC_NAMELEN 40
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct tagLOGCONTEXTA {
af062818b47340eef15700d2f0211576ba3506eevboxsync char lcName[LCNAMELEN];
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcOptions;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcStatus;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcLocks;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcMsgBase;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcDevice;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcPktRate;
af062818b47340eef15700d2f0211576ba3506eevboxsync WTPKT lcPktData;
af062818b47340eef15700d2f0211576ba3506eevboxsync WTPKT lcPktMode;
af062818b47340eef15700d2f0211576ba3506eevboxsync WTPKT lcMoveMask;
af062818b47340eef15700d2f0211576ba3506eevboxsync DWORD lcBtnDnMask;
af062818b47340eef15700d2f0211576ba3506eevboxsync DWORD lcBtnUpMask;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInOrgX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInOrgY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInOrgZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInExtX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInExtY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInExtZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutOrgX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutOrgY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutOrgZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutExtX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutExtY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutExtZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSensX;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSensY;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSensZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync BOOL lcSysMode;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysOrgX;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysOrgY;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysExtX;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysExtY;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSysSensX;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSysSensY;
af062818b47340eef15700d2f0211576ba3506eevboxsync} LOGCONTEXTA, *PLOGCONTEXTA, *NPLOGCONTEXTA, *LPLOGCONTEXTA;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct tagLOGCONTEXTW {
af062818b47340eef15700d2f0211576ba3506eevboxsync WCHAR lcName[LCNAMELEN];
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcOptions;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcStatus;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcLocks;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcMsgBase;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcDevice;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT lcPktRate;
af062818b47340eef15700d2f0211576ba3506eevboxsync WTPKT lcPktData;
af062818b47340eef15700d2f0211576ba3506eevboxsync WTPKT lcPktMode;
af062818b47340eef15700d2f0211576ba3506eevboxsync WTPKT lcMoveMask;
af062818b47340eef15700d2f0211576ba3506eevboxsync DWORD lcBtnDnMask;
af062818b47340eef15700d2f0211576ba3506eevboxsync DWORD lcBtnUpMask;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInOrgX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInOrgY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInOrgZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInExtX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInExtY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcInExtZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutOrgX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutOrgY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutOrgZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutExtX;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutExtY;
af062818b47340eef15700d2f0211576ba3506eevboxsync LONG lcOutExtZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSensX;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSensY;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSensZ;
af062818b47340eef15700d2f0211576ba3506eevboxsync BOOL lcSysMode;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysOrgX;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysOrgY;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysExtX;
af062818b47340eef15700d2f0211576ba3506eevboxsync int lcSysExtY;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSysSensX;
af062818b47340eef15700d2f0211576ba3506eevboxsync FIX32 lcSysSensY;
af062818b47340eef15700d2f0211576ba3506eevboxsync} LOGCONTEXTW, *PLOGCONTEXTW, *NPLOGCONTEXTW, *LPLOGCONTEXTW;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncDECL_WINELIB_TYPE_AW(LOGCONTEXT)
af062818b47340eef15700d2f0211576ba3506eevboxsyncDECL_WINELIB_TYPE_AW(PLOGCONTEXT)
af062818b47340eef15700d2f0211576ba3506eevboxsyncDECL_WINELIB_TYPE_AW(NPLOGCONTEXT)
af062818b47340eef15700d2f0211576ba3506eevboxsyncDECL_WINELIB_TYPE_AW(LPLOGCONTEXT)
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* context option values */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXO_SYSTEM 0x0001
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXO_PEN 0x0002
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXO_MESSAGES 0x0004
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXO_MARGIN 0x8000
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXO_MGNINSIDE 0x4000
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXO_CSRMESSAGES 0x0008 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* context status values */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXS_DISABLED 0x0001
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXS_OBSCURED 0x0002
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXS_ONTOP 0x0004
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* context lock values */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXL_INSIZE 0x0001
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXL_INASPECT 0x0002
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXL_SENSITIVITY 0x0004
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXL_MARGIN 0x0008
af062818b47340eef15700d2f0211576ba3506eevboxsync#define CXL_SYSOUT 0x0010
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * EVENT DATA DEFS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* For packet structure definition, see pktdef.h */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* packet status values */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TPS_PROXIMITY 0x0001
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TPS_QUEUE_ERR 0x0002
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TPS_MARGIN 0x0004
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TPS_GRAB 0x0008
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TPS_INVERT 0x0010 /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct tagORIENTATION {
af062818b47340eef15700d2f0211576ba3506eevboxsync int orAzimuth;
af062818b47340eef15700d2f0211576ba3506eevboxsync int orAltitude;
af062818b47340eef15700d2f0211576ba3506eevboxsync int orTwist;
af062818b47340eef15700d2f0211576ba3506eevboxsync} ORIENTATION, *PORIENTATION, *NPORIENTATION, *LPORIENTATION;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct tagROTATION { /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync int roPitch;
af062818b47340eef15700d2f0211576ba3506eevboxsync int roRoll;
af062818b47340eef15700d2f0211576ba3506eevboxsync int roYaw;
af062818b47340eef15700d2f0211576ba3506eevboxsync} ROTATION, *PROTATION, *NPROTATION, *LPROTATION;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* grandfather in obsolete member names. */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define rotPitch roPitch
af062818b47340eef15700d2f0211576ba3506eevboxsync#define rotRoll roRoll
af062818b47340eef15700d2f0211576ba3506eevboxsync#define rotYaw roYaw
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* relative buttons */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TBN_NONE 0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TBN_UP 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define TBN_DOWN 2
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * DEVICE CONFIG CONSTANTS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTDEVCFG
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTDC_NONE 0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTDC_CANCEL 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTDC_OK 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTDC_RESTART 3
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * HOOK CONSTANTS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTHOOKS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTH_PLAYBACK 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTH_RECORD 2
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTHC_GETLPLPFN (-3)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTHC_LPLPFNNEXT (-2)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTHC_LPFNNEXT (-1)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTHC_ACTION 0
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTHC_GETNEXT 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTHC_SKIP 2
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * PREFERENCE FUNCTION CONSTANTS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTPREF
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTP_LPDEFAULT ((LPVOID)-1L)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTP_DWDEFAULT ((DWORD)-1L)
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * EXTENSION TAGS AND CONSTANTS
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTEXTENSIONS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* constants for use with pktdef.h */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PKEXT_ABSOLUTE 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PKEXT_RELATIVE 2
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* Extension tags. */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTX_OBT 0 /* Out of bounds tracking */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTX_FKEYS 1 /* Function keys */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTX_TILT 2 /* Raw Cartesian tilt; 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTX_CSRMASK 3 /* select input by cursor type; 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTX_XBTNMASK 4 /* Extended button mask; 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct tagXBTNMASK {
af062818b47340eef15700d2f0211576ba3506eevboxsync BYTE xBtnDnMask[32];
af062818b47340eef15700d2f0211576ba3506eevboxsync BYTE xBtnUpMask[32];
af062818b47340eef15700d2f0211576ba3506eevboxsync} XBTNMASK;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct tagTILT { /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync int tiltX;
af062818b47340eef15700d2f0211576ba3506eevboxsync int tiltY;
af062818b47340eef15700d2f0211576ba3506eevboxsync} TILT;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * Functions
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTCALLBACKS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMANAGERFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* callback function types */
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef BOOL (WINAPI * WTENUMPROC)(HCTX, LPARAM); /* changed CALLBACK->WINAPI, 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef BOOL (WINAPI * WTCONFIGPROC)(HCTX, HWND);
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef LRESULT (WINAPI * WTHOOKPROC)(int, WPARAM, LPARAM);
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef WTHOOKPROC *LPWTHOOKPROC;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTFUNCTIONS
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTBASICFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* BASIC FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTInfoA 20
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTInfoW 1020
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTInfo WINELIB_NAME_AW(ORD_WTInfo)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTOpenA 21
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTOpenW 1021
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTOpen WINELIB_NAME_AW(ORD_WTOpen)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTClose 22
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTPacketsGet 23
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTPacket 24
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncUINT WINAPI WTInfoA(UINT, UINT, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsyncUINT WINAPI WTInfoW(UINT, UINT, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTInfo WINELIB_NAME_AW(WTInfo)
af062818b47340eef15700d2f0211576ba3506eevboxsyncHCTX WINAPI WTOpenA(HWND, LPLOGCONTEXTA, BOOL);
af062818b47340eef15700d2f0211576ba3506eevboxsyncHCTX WINAPI WTOpenW(HWND, LPLOGCONTEXTW, BOOL);
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTOpen WINELIB_NAME_AW(WTOpen)
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTClose(HCTX);
af062818b47340eef15700d2f0211576ba3506eevboxsyncint WINAPI WTPacketsGet(HCTX, int, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTPacket(HCTX, UINT, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTVISIBILITYFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* VISIBILITY FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTEnable 40
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTOverlap 41
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTEnable(HCTX, BOOL);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTOverlap(HCTX, BOOL);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTCTXEDITFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* CONTEXT EDITING FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTConfig 60
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTGetA 61
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTGetW 1061
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTGet WINELIB_NAME_AW(ORD_WTGet)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTSetA 62
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTSetW 1062
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTSet WINELIB_NAME_AW(ORD_WTSet)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTExtGet 63
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTExtSet 64
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTSave 65
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTRestore 66
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTConfig(HCTX, HWND);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTGetA(HCTX, LPLOGCONTEXTA);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTGetW(HCTX, LPLOGCONTEXTW);
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTGet WINELIB_NAME_AW(WTGet)
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTSetA(HCTX, LPLOGCONTEXTA);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTSetW(HCTX, LPLOGCONTEXTW);
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTSet WINELIB_NAME_AW(WTSet)
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTExtGet(HCTX, UINT, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTExtSet(HCTX, UINT, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTSave(HCTX, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsyncHCTX WINAPI WTRestore(HWND, LPVOID, BOOL);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTQUEUEFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* ADVANCED PACKET AND QUEUE FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTPacketsPeek 80
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTDataGet 81
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTDataPeek 82
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTQueueSizeGet 84
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTQueueSizeSet 85
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncint WINAPI WTPacketsPeek(HCTX, int, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsyncint WINAPI WTDataGet(HCTX, UINT, UINT, int, LPVOID, LPINT);
af062818b47340eef15700d2f0211576ba3506eevboxsyncint WINAPI WTDataPeek(HCTX, UINT, UINT, int, LPVOID, LPINT);
af062818b47340eef15700d2f0211576ba3506eevboxsyncint WINAPI WTQueueSizeGet(HCTX);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTQueueSizeSet(HCTX, int);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTHMGRFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER HANDLE FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrOpen 100
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrClose 101
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncHMGR WINAPI WTMgrOpen(HWND, UINT);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrClose(HMGR);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMGRCTXFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER CONTEXT FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrContextEnum 120
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrContextOwner 121
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrDefContext 122
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrDefContextEx 206
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrContextEnum(HMGR, WTENUMPROC, LPARAM);
af062818b47340eef15700d2f0211576ba3506eevboxsyncHWND WINAPI WTMgrContextOwner(HMGR, HCTX);
af062818b47340eef15700d2f0211576ba3506eevboxsyncHCTX WINAPI WTMgrDefContext(HMGR, BOOL);
af062818b47340eef15700d2f0211576ba3506eevboxsyncHCTX WINAPI WTMgrDefContextEx(HMGR, UINT, BOOL); /* 1.1 */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMGRCONFIGFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER CONFIG BOX FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrDeviceConfig 140
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncUINT WINAPI WTMgrDeviceConfig(HMGR, UINT, HWND);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMGRHOOKFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER PACKET HOOK FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/* OBSOLETE IN WIN32! */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMGRPREFFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER PREFERENCE DATA FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrExt 180
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrCsrEnable 181
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrCsrButtonMap 182
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrCsrPressureBtnMarks 183
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrCsrPressureResponse 184
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrCsrExt 185
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrExt(HMGR, UINT, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrCsrEnable(HMGR, UINT, BOOL);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrCsrButtonMap(HMGR, UINT, LPBYTE, LPBYTE);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrCsrPressureBtnMarks(HMGR, UINT, DWORD, DWORD);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrCsrPressureResponse(HMGR, UINT, UINT *, UINT *);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrCsrExt(HMGR, UINT, UINT, LPVOID);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync/***********************************************************************
af062818b47340eef15700d2f0211576ba3506eevboxsync * Win32 replacements for non-portable functions.
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTQUEUEFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* ADVANCED PACKET AND QUEUE FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTQueuePacketsEx 200
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTQueuePacketsEx(HCTX, UINT *, UINT *);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMGRCONFIGFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER CONFIG BOX FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrConfigReplaceExA 202
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrConfigReplaceExW 1202
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrConfigReplaceEx WINELIB_NAME_AW(ORD_WTMgrConfigReplaceEx)
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrConfigReplaceExA(HMGR, BOOL, LPSTR, LPSTR);
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrConfigReplaceExW(HMGR, BOOL, LPWSTR, LPSTR);
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTMgrConfigReplaceEx WINELIB_NAME_AW(WTMgrConfigReplaceEx)
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMGRHOOKFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER PACKET HOOK FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrPacketHookExA 203
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrPacketHookExW 1203
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrPacketHookEx WINELIB_NAME_AW(ORD_WTMgrPacketHookEx)
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrPacketUnhook 204
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrPacketHookNext 205
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncHWTHOOK WINAPI WTMgrPacketHookExA(HMGR, int, LPSTR, LPSTR);
af062818b47340eef15700d2f0211576ba3506eevboxsyncHWTHOOK WINAPI WTMgrPacketHookExW(HMGR, int, LPWSTR, LPSTR);
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WTMgrPacketHookEx WINELIB_NAME_AW(WTMgrPacketHookEx)
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrPacketUnhook(HWTHOOK);
af062818b47340eef15700d2f0211576ba3506eevboxsyncLRESULT WINAPI WTMgrPacketHookNext(HWTHOOK, int, WPARAM, LPARAM);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef NOWTMGRPREFFXNS
af062818b47340eef15700d2f0211576ba3506eevboxsync/* MANAGER PREFERENCE DATA FUNCTIONS */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define ORD_WTMgrCsrPressureBtnMarksEx 201
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsyncBOOL WINAPI WTMgrCsrPressureBtnMarksEx(HMGR, UINT, UINT *, UINT *);
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifdef __cplusplus
af062818b47340eef15700d2f0211576ba3506eevboxsync} /* extern "C" */
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif /* defined(__cplusplus) */
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif /* defined(__WINE_WINTAB_H */