3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright (C) 1991-1998 by LCS/Telegraphics
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright (C) 2002 Patrik Stridvall
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is free software; you can redistribute it and/or
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * modify it under the terms of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License as published by the Free Software Foundation; either
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * version 2.1 of the License, or (at your option) any later version.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is distributed in the hope that it will be useful,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Lesser General Public License for more details.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * You should have received a copy of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License along with this library; if not, write to the Free Software
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * a choice of LGPL license versions is made available with the language indicating
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * of the LGPL is applied is otherwise unspecified.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern "C" {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif /* defined(__cplusplus) */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define WT_CSRCHANGE _WT_CSRCHANGE(WT_DEFBASE) /* 1.1 */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * COMMON DATA DEFS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* WTPKT bits */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define PK_SERIAL_NUMBER 0x0010 /* packet serial number */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define PK_NORMAL_PRESSURE 0x0400 /* normal or tip pressure */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define PK_TANGENT_PRESSURE 0x0800 /* tangential or barrel pressure */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define PK_ORIENTATION 0x1000 /* orientation info: tilts */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD FIX32; /* fixed-point arithmetic type */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define ROUND(x) (INT(x) + (FRAC(x) > (WORD)0x8000))
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /* fraction done bytewise */ \
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * INFO DATA DEFS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* unit specifiers */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* system button assignment values */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* for Pen Windows */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* hardware capabilities */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* cursor capabilities */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* info categories */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* from http://www.wacomeng.com/devsupport/ibmpc/wacomwindevfaq.html */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * CONTEXT DATA DEFS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync} LOGCONTEXTA, *PLOGCONTEXTA, *NPLOGCONTEXTA, *LPLOGCONTEXTA;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync} LOGCONTEXTW, *PLOGCONTEXTW, *NPLOGCONTEXTW, *LPLOGCONTEXTW;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* context option values */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* context status values */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* context lock values */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * EVENT DATA DEFS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* For packet structure definition, see pktdef.h */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* packet status values */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync} ORIENTATION, *PORIENTATION, *NPORIENTATION, *LPORIENTATION;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* grandfather in obsolete member names. */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* relative buttons */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * DEVICE CONFIG CONSTANTS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * HOOK CONSTANTS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * PREFERENCE FUNCTION CONSTANTS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * EXTENSION TAGS AND CONSTANTS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* constants for use with pktdef.h */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* Extension tags. */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define WTX_CSRMASK 3 /* select input by cursor type; 1.1 */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define WTX_XBTNMASK 4 /* Extended button mask; 1.1 */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Functions
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* callback function types */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef BOOL (WINAPI * WTENUMPROC)(HCTX, LPARAM); /* changed CALLBACK->WINAPI, 1.1 */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef LRESULT (WINAPI * WTHOOKPROC)(int, WPARAM, LPARAM);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* BASIC FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* VISIBILITY FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* CONTEXT EDITING FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* ADVANCED PACKET AND QUEUE FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncint WINAPI WTDataGet(HCTX, UINT, UINT, int, LPVOID, LPINT);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncint WINAPI WTDataPeek(HCTX, UINT, UINT, int, LPVOID, LPINT);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER HANDLE FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER CONTEXT FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncBOOL WINAPI WTMgrContextEnum(HMGR, WTENUMPROC, LPARAM);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncHCTX WINAPI WTMgrDefContextEx(HMGR, UINT, BOOL); /* 1.1 */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER CONFIG BOX FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER PACKET HOOK FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* OBSOLETE IN WIN32! */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER PREFERENCE DATA FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncBOOL WINAPI WTMgrCsrButtonMap(HMGR, UINT, LPBYTE, LPBYTE);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncBOOL WINAPI WTMgrCsrPressureBtnMarks(HMGR, UINT, DWORD, DWORD);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncBOOL WINAPI WTMgrCsrPressureResponse(HMGR, UINT, UINT *, UINT *);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Win32 replacements for non-portable functions.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* ADVANCED PACKET AND QUEUE FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER CONFIG BOX FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define ORD_WTMgrConfigReplaceEx WINELIB_NAME_AW(ORD_WTMgrConfigReplaceEx)
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncBOOL WINAPI WTMgrConfigReplaceExA(HMGR, BOOL, LPSTR, LPSTR);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncBOOL WINAPI WTMgrConfigReplaceExW(HMGR, BOOL, LPWSTR, LPSTR);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define WTMgrConfigReplaceEx WINELIB_NAME_AW(WTMgrConfigReplaceEx)
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER PACKET HOOK FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define ORD_WTMgrPacketHookEx WINELIB_NAME_AW(ORD_WTMgrPacketHookEx)
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncHWTHOOK WINAPI WTMgrPacketHookExA(HMGR, int, LPSTR, LPSTR);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncHWTHOOK WINAPI WTMgrPacketHookExW(HMGR, int, LPWSTR, LPSTR);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define WTMgrPacketHookEx WINELIB_NAME_AW(WTMgrPacketHookEx)
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncLRESULT WINAPI WTMgrPacketHookNext(HWTHOOK, int, WPARAM, LPARAM);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* MANAGER PREFERENCE DATA FUNCTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncBOOL WINAPI WTMgrCsrPressureBtnMarksEx(HMGR, UINT, UINT *, UINT *);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync} /* extern "C" */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif /* defined(__cplusplus) */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif /* defined(__WINE_WINTAB_H */