mirror of
https://github.com/reactos/reactos.git
synced 2025-04-25 16:10:29 +00:00
remove wine's wintab32 which relies on x11 drivers
svn path=/trunk/; revision=40661
This commit is contained in:
parent
1575ce4fe5
commit
8b70974475
9 changed files with 0 additions and 2535 deletions
|
@ -437,7 +437,6 @@ dll\win32\wininet\wininet.dll 1
|
|||
dll\win32\winmm\winmm.dll 1
|
||||
dll\win32\winspool\winspool.drv 1
|
||||
dll\win32\winsta\winsta.dll 1
|
||||
dll\win32\wintab32\wintab32.dll 1
|
||||
dll\win32\wlanapi\wlanapi.dll 1
|
||||
dll\win32\wintrust\wintrust.dll 1
|
||||
dll\win32\wldap32\wldap32.dll 1
|
||||
|
|
|
@ -589,9 +589,6 @@
|
|||
<directory name="winsta">
|
||||
<xi:include href="winsta/winsta.rbuild" />
|
||||
</directory>
|
||||
<directory name="wintab32">
|
||||
<xi:include href="wintab32/wintab32.rbuild" />
|
||||
</directory>
|
||||
<directory name="wintrust">
|
||||
<xi:include href="wintrust/wintrust.rbuild" />
|
||||
</directory>
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,291 +0,0 @@
|
|||
/*
|
||||
* Tablet Manager
|
||||
*
|
||||
* Copyright 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
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winerror.h"
|
||||
|
||||
#include "wintab.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(wintab32);
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrOpen (WINTAB32.100)
|
||||
*/
|
||||
HMGR WINAPI WTMgrOpen(HWND hWnd, UINT wMsgBase)
|
||||
{
|
||||
FIXME("(%p, %u): stub\n", hWnd, wMsgBase);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrClose (WINTAB32.101)
|
||||
*/
|
||||
BOOL WINAPI WTMgrClose(HMGR hMgr)
|
||||
{
|
||||
FIXME("(%p): stub\n", hMgr);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrContextEnum (WINTAB32.120)
|
||||
*/
|
||||
BOOL WINAPI WTMgrContextEnum(HMGR hMgr, WTENUMPROC lpEnumFunc, LPARAM lParam)
|
||||
{
|
||||
FIXME("(%p, %p, %ld): stub\n", hMgr, lpEnumFunc, lParam);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrContextOwner (WINTAB32.121)
|
||||
*/
|
||||
HWND WINAPI WTMgrContextOwner(HMGR hMgr, HCTX hCtx)
|
||||
{
|
||||
FIXME("(%p, %p): stub\n", hMgr, hCtx);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrDefContext (WINTAB32.122)
|
||||
*/
|
||||
HCTX WINAPI WTMgrDefContext(HMGR hMgr, BOOL fSystem)
|
||||
{
|
||||
FIXME("(%p, %u): stub\n", hMgr, fSystem);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrDefContextEx (WINTAB32.206)
|
||||
*
|
||||
* 1.1
|
||||
*/
|
||||
HCTX WINAPI WTMgrDefContextEx(HMGR hMgr, UINT wDevice, BOOL fSystem)
|
||||
{
|
||||
FIXME("(%p, %hu, %hu): stub\n", hMgr, wDevice, fSystem);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrDeviceConfig (WINTAB32.140)
|
||||
*/
|
||||
UINT WINAPI WTMgrDeviceConfig(HMGR hMgr, UINT wDevice, HWND hWnd)
|
||||
{
|
||||
FIXME("(%p, %u, %p): stub\n", hMgr, wDevice, hWnd);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrConfigReplaceExA (WINTAB32.202)
|
||||
*/
|
||||
BOOL WINAPI WTMgrConfigReplaceExA(HMGR hMgr, BOOL fInstall,
|
||||
LPSTR lpszModule, LPSTR lpszCfgProc)
|
||||
{
|
||||
FIXME("(%p, %u, %s, %s): stub\n", hMgr, fInstall,
|
||||
debugstr_a(lpszModule), debugstr_a(lpszCfgProc));
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrConfigReplaceExW (WINTAB32.1202)
|
||||
*/
|
||||
BOOL WINAPI WTMgrConfigReplaceExW(HMGR hMgr, BOOL fInstall,
|
||||
LPWSTR lpszModule, LPSTR lpszCfgProc)
|
||||
{
|
||||
FIXME("(%p, %u, %s, %s): stub\n", hMgr, fInstall,
|
||||
debugstr_w(lpszModule), debugstr_a(lpszCfgProc));
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrPacketHookExA (WINTAB32.203)
|
||||
*/
|
||||
HWTHOOK WINAPI WTMgrPacketHookExA(HMGR hMgr, int nType,
|
||||
LPSTR lpszModule, LPSTR lpszHookProc)
|
||||
{
|
||||
FIXME("(%p, %d, %s, %s): stub\n", hMgr, nType,
|
||||
debugstr_a(lpszModule), debugstr_a(lpszHookProc));
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrPacketHookExW (WINTAB32.1203)
|
||||
*/
|
||||
HWTHOOK WINAPI WTMgrPacketHookExW(HMGR hMgr, int nType,
|
||||
LPWSTR lpszModule, LPSTR lpszHookProc)
|
||||
{
|
||||
FIXME("(%p, %d, %s, %s): stub\n", hMgr, nType,
|
||||
debugstr_w(lpszModule), debugstr_a(lpszHookProc));
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrPacketUnhook (WINTAB32.204)
|
||||
*/
|
||||
BOOL WINAPI WTMgrPacketUnhook(HWTHOOK hHook)
|
||||
{
|
||||
FIXME("(%p): stub\n", hHook);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrPacketHookNext (WINTAB32.205)
|
||||
*/
|
||||
LRESULT WINAPI WTMgrPacketHookNext(HWTHOOK hHook, int nCode,
|
||||
WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
FIXME("(%p, %d, %lu, %lu): stub\n", hHook, nCode, wParam, lParam);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrExt (WINTAB32.180)
|
||||
*/
|
||||
BOOL WINAPI WTMgrExt(HMGR hMgr, UINT wExt, LPVOID lpData)
|
||||
{
|
||||
FIXME("(%p, %u, %p): stub\n", hMgr, wExt, lpData);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrCsrEnable (WINTAB32.181)
|
||||
*/
|
||||
BOOL WINAPI WTMgrCsrEnable(HMGR hMgr, UINT wCursor, BOOL fEnable)
|
||||
{
|
||||
FIXME("(%p, %u, %u): stub\n", hMgr, wCursor, fEnable);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrCsrButtonMap (WINTAB32.182)
|
||||
*/
|
||||
BOOL WINAPI WTMgrCsrButtonMap(HMGR hMgr, UINT wCursor,
|
||||
LPBYTE lpLogBtns, LPBYTE lpSysBtns)
|
||||
{
|
||||
FIXME("(%p, %u, %p, %p): stub\n", hMgr, wCursor, lpLogBtns, lpSysBtns);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrCsrPressureBtnMarks (WINTAB32.183)
|
||||
*
|
||||
* OBSOLETE IN WIN32! (But only according to documentation)
|
||||
*/
|
||||
BOOL WINAPI WTMgrCsrPressureBtnMarks(HMGR hMgr, UINT wCsr,
|
||||
DWORD dwNMarks, DWORD dwTMarks)
|
||||
{
|
||||
FIXME("(%p, %u, %u, %u): stub\n", hMgr, wCsr, dwNMarks, dwTMarks);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrCsrPressureBtnMarksEx (WINTAB32.201)
|
||||
*/
|
||||
BOOL WINAPI WTMgrCsrPressureBtnMarksEx(HMGR hMgr, UINT wCsr,
|
||||
UINT *lpNMarks, UINT *lpTMarks)
|
||||
{
|
||||
FIXME("(%p, %u, %p, %p): stub\n", hMgr, wCsr, lpNMarks, lpTMarks);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrCsrPressureResponse (WINTAB32.184)
|
||||
*/
|
||||
BOOL WINAPI WTMgrCsrPressureResponse(HMGR hMgr, UINT wCsr,
|
||||
UINT *lpNResp, UINT *lpTResp)
|
||||
{
|
||||
FIXME("(%p, %u, %p, %p): stub\n", hMgr, wCsr, lpNResp, lpTResp);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WTMgrCsrExt (WINTAB32.185)
|
||||
*/
|
||||
BOOL WINAPI WTMgrCsrExt(HMGR hMgr, UINT wCsr, UINT wExt, LPVOID lpData)
|
||||
{
|
||||
FIXME("(%p, %u, %u, %p): stub\n", hMgr, wCsr, wExt, lpData);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
|
||||
return FALSE;
|
||||
}
|
|
@ -1,788 +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_WINTAB_H
|
||||
#define __WINE_WINTAB_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* defined(__cplusplus) */
|
||||
|
||||
/***********************************************************************
|
||||
* Messages
|
||||
*/
|
||||
#ifndef NOWTMESSAGES
|
||||
|
||||
#define WT_DEFBASE 0x7FF0
|
||||
#define WT_MAXOFFSET 0xF
|
||||
|
||||
#define _WT_PACKET(b) ((b)+0)
|
||||
#define _WT_CTXOPEN(b) ((b)+1)
|
||||
#define _WT_CTXCLOSE(b) ((b)+2)
|
||||
#define _WT_CTXUPDATE(b) ((b)+3)
|
||||
#define _WT_CTXOVERLAP(b) ((b)+4)
|
||||
#define _WT_PROXIMITY(b) ((b)+5)
|
||||
#define _WT_INFOCHANGE(b) ((b)+6)
|
||||
#define _WT_CSRCHANGE(b) ((b)+7) /* 1.1 */
|
||||
#define _WT_MAX(b) ((b)+WT_MAXOFFSET)
|
||||
|
||||
#define WT_PACKET _WT_PACKET(WT_DEFBASE)
|
||||
#define WT_CTXOPEN _WT_CTXOPEN(WT_DEFBASE)
|
||||
#define WT_CTXCLOSE _WT_CTXCLOSE(WT_DEFBASE)
|
||||
#define WT_CTXUPDATE _WT_CTXUPDATE(WT_DEFBASE)
|
||||
#define WT_CTXOVERLAP _WT_CTXOVERLAP(WT_DEFBASE)
|
||||
#define WT_PROXIMITY _WT_PROXIMITY(WT_DEFBASE)
|
||||
#define WT_INFOCHANGE _WT_INFOCHANGE(WT_DEFBASE)
|
||||
#define WT_CSRCHANGE _WT_CSRCHANGE(WT_DEFBASE) /* 1.1 */
|
||||
#define WT_MAX _WT_MAX(WT_DEFBASE)
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* COMMON DATA DEFS
|
||||
*/
|
||||
|
||||
DECLARE_HANDLE(HMGR); /* manager handle */
|
||||
DECLARE_HANDLE(HCTX); /* context handle */
|
||||
DECLARE_HANDLE(HWTHOOK); /* hook handle */
|
||||
|
||||
typedef DWORD WTPKT; /* packet mask */
|
||||
|
||||
#ifndef NOWTPKT
|
||||
|
||||
/* WTPKT bits */
|
||||
#define PK_CONTEXT 0x0001 /* reporting context */
|
||||
#define PK_STATUS 0x0002 /* status bits */
|
||||
#define PK_TIME 0x0004 /* time stamp */
|
||||
#define PK_CHANGED 0x0008 /* change bit vector */
|
||||
#define PK_SERIAL_NUMBER 0x0010 /* packet serial number */
|
||||
#define PK_CURSOR 0x0020 /* reporting cursor */
|
||||
#define PK_BUTTONS 0x0040 /* button information */
|
||||
#define PK_X 0x0080 /* x axis */
|
||||
#define PK_Y 0x0100 /* y axis */
|
||||
#define PK_Z 0x0200 /* z axis */
|
||||
#define PK_NORMAL_PRESSURE 0x0400 /* normal or tip pressure */
|
||||
#define PK_TANGENT_PRESSURE 0x0800 /* tangential or barrel pressure */
|
||||
#define PK_ORIENTATION 0x1000 /* orientation info: tilts */
|
||||
#define PK_ROTATION 0x2000 /* rotation info; 1.1 */
|
||||
|
||||
#endif
|
||||
|
||||
typedef DWORD FIX32; /* fixed-point arithmetic type */
|
||||
|
||||
#ifndef NOFIX32
|
||||
|
||||
#define INT(x) HIWORD(x)
|
||||
#define FRAC(x) LOWORD(x)
|
||||
|
||||
#define CASTFIX32(x) ((FIX32)((x)*65536L))
|
||||
|
||||
#define ROUND(x) (INT(x) + (FRAC(x) > (WORD)0x8000))
|
||||
|
||||
#define FIX_MUL(c, a, b) \
|
||||
(c = (((DWORD)FRAC(a) * FRAC(b)) >> 16) + \
|
||||
(DWORD)INT(a) * FRAC(b) + \
|
||||
(DWORD)INT(b) * FRAC(a) + \
|
||||
((DWORD)INT(a) * INT(b) << 16))
|
||||
|
||||
#ifdef _WINDLL
|
||||
# define FIX_DIV_SC static
|
||||
#else
|
||||
# define FIX_DIV_SC
|
||||
# endif
|
||||
|
||||
#define FIX_DIV(c, a, b) \
|
||||
{ \
|
||||
FIX_DIV_SC DWORD temp, rem, btemp; \
|
||||
\
|
||||
/* fraction done bytewise */ \
|
||||
temp = ((a / b) << 16); \
|
||||
rem = a % b; \
|
||||
btemp = b; \
|
||||
if (INT(btemp) < 256) { \
|
||||
rem <<= 8; \
|
||||
} else { \
|
||||
btemp >>= 8; \
|
||||
} \
|
||||
temp += ((rem / btemp) << 8); \
|
||||
rem %= btemp; \
|
||||
rem <<= 8; \
|
||||
temp += rem / btemp; \
|
||||
c = temp; \
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* INFO DATA DEFS
|
||||
*/
|
||||
|
||||
#ifndef NOWTINFO
|
||||
|
||||
#ifndef NOWTAXIS
|
||||
|
||||
typedef struct tagAXIS {
|
||||
LONG axMin;
|
||||
LONG axMax;
|
||||
UINT axUnits;
|
||||
FIX32 axResolution;
|
||||
} AXIS, *PAXIS, *NPAXIS, *LPAXIS;
|
||||
|
||||
/* unit specifiers */
|
||||
#define TU_NONE 0
|
||||
#define TU_INCHES 1
|
||||
#define TU_CENTIMETERS 2
|
||||
#define TU_CIRCLE 3
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTSYSBUTTONS
|
||||
|
||||
/* system button assignment values */
|
||||
#define SBN_NONE 0x00
|
||||
#define SBN_LCLICK 0x01
|
||||
#define SBN_LDBLCLICK 0x02
|
||||
#define SBN_LDRAG 0x03
|
||||
#define SBN_RCLICK 0x04
|
||||
#define SBN_RDBLCLICK 0x05
|
||||
#define SBN_RDRAG 0x06
|
||||
#define SBN_MCLICK 0x07
|
||||
#define SBN_MDBLCLICK 0x08
|
||||
#define SBN_MDRAG 0x09
|
||||
|
||||
/* for Pen Windows */
|
||||
#define SBN_PTCLICK 0x10
|
||||
#define SBN_PTDBLCLICK 0x20
|
||||
#define SBN_PTDRAG 0x30
|
||||
#define SBN_PNCLICK 0x40
|
||||
#define SBN_PNDBLCLICK 0x50
|
||||
#define SBN_PNDRAG 0x60
|
||||
#define SBN_P1CLICK 0x70
|
||||
#define SBN_P1DBLCLICK 0x80
|
||||
#define SBN_P1DRAG 0x90
|
||||
#define SBN_P2CLICK 0xA0
|
||||
#define SBN_P2DBLCLICK 0xB0
|
||||
#define SBN_P2DRAG 0xC0
|
||||
#define SBN_P3CLICK 0xD0
|
||||
#define SBN_P3DBLCLICK 0xE0
|
||||
#define SBN_P3DRAG 0xF0
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTCAPABILITIES
|
||||
|
||||
/* hardware capabilities */
|
||||
#define HWC_INTEGRATED 0x0001
|
||||
#define HWC_TOUCH 0x0002
|
||||
#define HWC_HARDPROX 0x0004
|
||||
#define HWC_PHYSID_CURSORS 0x0008 /* 1.1 */
|
||||
#endif
|
||||
|
||||
#ifndef NOWTIFC
|
||||
|
||||
#ifndef NOWTCURSORS
|
||||
|
||||
/* cursor capabilities */
|
||||
#define CRC_MULTIMODE 0x0001 /* 1.1 */
|
||||
#define CRC_AGGREGATE 0x0002 /* 1.1 */
|
||||
#define CRC_INVERT 0x0004 /* 1.1 */
|
||||
|
||||
#endif
|
||||
|
||||
/* info categories */
|
||||
#define WTI_INTERFACE 1
|
||||
#define IFC_WINTABID 1
|
||||
#define IFC_SPECVERSION 2
|
||||
#define IFC_IMPLVERSION 3
|
||||
#define IFC_NDEVICES 4
|
||||
#define IFC_NCURSORS 5
|
||||
#define IFC_NCONTEXTS 6
|
||||
#define IFC_CTXOPTIONS 7
|
||||
#define IFC_CTXSAVESIZE 8
|
||||
#define IFC_NEXTENSIONS 9
|
||||
#define IFC_NMANAGERS 10
|
||||
#define IFC_MAX 10
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTSTATUS
|
||||
|
||||
#define WTI_STATUS 2
|
||||
#define STA_CONTEXTS 1
|
||||
#define STA_SYSCTXS 2
|
||||
#define STA_PKTRATE 3
|
||||
#define STA_PKTDATA 4
|
||||
#define STA_MANAGERS 5
|
||||
#define STA_SYSTEM 6
|
||||
#define STA_BUTTONUSE 7
|
||||
#define STA_SYSBTNUSE 8
|
||||
#define STA_MAX 8
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTDEFCONTEXT
|
||||
|
||||
#define WTI_DEFCONTEXT 3
|
||||
#define WTI_DEFSYSCTX 4
|
||||
#define WTI_DDCTXS 400 /* 1.1 */
|
||||
#define WTI_DSCTXS 500 /* 1.1 */
|
||||
#define CTX_NAME 1
|
||||
#define CTX_OPTIONS 2
|
||||
#define CTX_STATUS 3
|
||||
#define CTX_LOCKS 4
|
||||
#define CTX_MSGBASE 5
|
||||
#define CTX_DEVICE 6
|
||||
#define CTX_PKTRATE 7
|
||||
#define CTX_PKTDATA 8
|
||||
#define CTX_PKTMODE 9
|
||||
#define CTX_MOVEMASK 10
|
||||
#define CTX_BTNDNMASK 11
|
||||
#define CTX_BTNUPMASK 12
|
||||
#define CTX_INORGX 13
|
||||
#define CTX_INORGY 14
|
||||
#define CTX_INORGZ 15
|
||||
#define CTX_INEXTX 16
|
||||
#define CTX_INEXTY 17
|
||||
#define CTX_INEXTZ 18
|
||||
#define CTX_OUTORGX 19
|
||||
#define CTX_OUTORGY 20
|
||||
#define CTX_OUTORGZ 21
|
||||
#define CTX_OUTEXTX 22
|
||||
#define CTX_OUTEXTY 23
|
||||
#define CTX_OUTEXTZ 24
|
||||
#define CTX_SENSX 25
|
||||
#define CTX_SENSY 26
|
||||
#define CTX_SENSZ 27
|
||||
#define CTX_SYSMODE 28
|
||||
#define CTX_SYSORGX 29
|
||||
#define CTX_SYSORGY 30
|
||||
#define CTX_SYSEXTX 31
|
||||
#define CTX_SYSEXTY 32
|
||||
#define CTX_SYSSENSX 33
|
||||
#define CTX_SYSSENSY 34
|
||||
#define CTX_MAX 34
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTDEVICES
|
||||
|
||||
#define WTI_DEVICES 100
|
||||
#define DVC_NAME 1
|
||||
#define DVC_HARDWARE 2
|
||||
#define DVC_NCSRTYPES 3
|
||||
#define DVC_FIRSTCSR 4
|
||||
#define DVC_PKTRATE 5
|
||||
#define DVC_PKTDATA 6
|
||||
#define DVC_PKTMODE 7
|
||||
#define DVC_CSRDATA 8
|
||||
#define DVC_XMARGIN 9
|
||||
#define DVC_YMARGIN 10
|
||||
#define DVC_ZMARGIN 11
|
||||
#define DVC_X 12
|
||||
#define DVC_Y 13
|
||||
#define DVC_Z 14
|
||||
#define DVC_NPRESSURE 15
|
||||
#define DVC_TPRESSURE 16
|
||||
#define DVC_ORIENTATION 17
|
||||
#define DVC_ROTATION 18 /* 1.1 */
|
||||
#define DVC_PNPID 19 /* 1.1 */
|
||||
#define DVC_MAX 19
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTCURSORS
|
||||
|
||||
#define WTI_CURSORS 200
|
||||
#define CSR_NAME 1
|
||||
#define CSR_ACTIVE 2
|
||||
#define CSR_PKTDATA 3
|
||||
#define CSR_BUTTONS 4
|
||||
#define CSR_BUTTONBITS 5
|
||||
#define CSR_BTNNAMES 6
|
||||
#define CSR_BUTTONMAP 7
|
||||
#define CSR_SYSBTNMAP 8
|
||||
#define CSR_NPBUTTON 9
|
||||
#define CSR_NPBTNMARKS 10
|
||||
#define CSR_NPRESPONSE 11
|
||||
#define CSR_TPBUTTON 12
|
||||
#define CSR_TPBTNMARKS 13
|
||||
#define CSR_TPRESPONSE 14
|
||||
#define CSR_PHYSID 15 /* 1.1 */
|
||||
#define CSR_MODE 16 /* 1.1 */
|
||||
#define CSR_MINPKTDATA 17 /* 1.1 */
|
||||
#define CSR_MINBUTTONS 18 /* 1.1 */
|
||||
#define CSR_CAPABILITIES 19 /* 1.1 */
|
||||
/* from http://www.wacomeng.com/devsupport/ibmpc/wacomwindevfaq.html */
|
||||
#define CSR_TYPE 20
|
||||
#define CSR_MAX 20
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTEXTENSIONS
|
||||
|
||||
#define WTI_EXTENSIONS 300
|
||||
#define EXT_NAME 1
|
||||
#define EXT_TAG 2
|
||||
#define EXT_MASK 3
|
||||
#define EXT_SIZE 4
|
||||
#define EXT_AXES 5
|
||||
#define EXT_DEFAULT 6
|
||||
#define EXT_DEFCONTEXT 7
|
||||
#define EXT_DEFSYSCTX 8
|
||||
#define EXT_CURSORS 9
|
||||
#define EXT_MAX 109 /* Allow 100 cursors */
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* CONTEXT DATA DEFS
|
||||
*/
|
||||
|
||||
#define LCNAMELEN 40
|
||||
#define LC_NAMELEN 40
|
||||
|
||||
typedef struct tagLOGCONTEXTA {
|
||||
char lcName[LCNAMELEN];
|
||||
UINT lcOptions;
|
||||
UINT lcStatus;
|
||||
UINT lcLocks;
|
||||
UINT lcMsgBase;
|
||||
UINT lcDevice;
|
||||
UINT lcPktRate;
|
||||
WTPKT lcPktData;
|
||||
WTPKT lcPktMode;
|
||||
WTPKT lcMoveMask;
|
||||
DWORD lcBtnDnMask;
|
||||
DWORD lcBtnUpMask;
|
||||
LONG lcInOrgX;
|
||||
LONG lcInOrgY;
|
||||
LONG lcInOrgZ;
|
||||
LONG lcInExtX;
|
||||
LONG lcInExtY;
|
||||
LONG lcInExtZ;
|
||||
LONG lcOutOrgX;
|
||||
LONG lcOutOrgY;
|
||||
LONG lcOutOrgZ;
|
||||
LONG lcOutExtX;
|
||||
LONG lcOutExtY;
|
||||
LONG lcOutExtZ;
|
||||
FIX32 lcSensX;
|
||||
FIX32 lcSensY;
|
||||
FIX32 lcSensZ;
|
||||
BOOL lcSysMode;
|
||||
int lcSysOrgX;
|
||||
int lcSysOrgY;
|
||||
int lcSysExtX;
|
||||
int lcSysExtY;
|
||||
FIX32 lcSysSensX;
|
||||
FIX32 lcSysSensY;
|
||||
} LOGCONTEXTA, *PLOGCONTEXTA, *NPLOGCONTEXTA, *LPLOGCONTEXTA;
|
||||
|
||||
typedef struct tagLOGCONTEXTW {
|
||||
WCHAR lcName[LCNAMELEN];
|
||||
UINT lcOptions;
|
||||
UINT lcStatus;
|
||||
UINT lcLocks;
|
||||
UINT lcMsgBase;
|
||||
UINT lcDevice;
|
||||
UINT lcPktRate;
|
||||
WTPKT lcPktData;
|
||||
WTPKT lcPktMode;
|
||||
WTPKT lcMoveMask;
|
||||
DWORD lcBtnDnMask;
|
||||
DWORD lcBtnUpMask;
|
||||
LONG lcInOrgX;
|
||||
LONG lcInOrgY;
|
||||
LONG lcInOrgZ;
|
||||
LONG lcInExtX;
|
||||
LONG lcInExtY;
|
||||
LONG lcInExtZ;
|
||||
LONG lcOutOrgX;
|
||||
LONG lcOutOrgY;
|
||||
LONG lcOutOrgZ;
|
||||
LONG lcOutExtX;
|
||||
LONG lcOutExtY;
|
||||
LONG lcOutExtZ;
|
||||
FIX32 lcSensX;
|
||||
FIX32 lcSensY;
|
||||
FIX32 lcSensZ;
|
||||
BOOL lcSysMode;
|
||||
int lcSysOrgX;
|
||||
int lcSysOrgY;
|
||||
int lcSysExtX;
|
||||
int lcSysExtY;
|
||||
FIX32 lcSysSensX;
|
||||
FIX32 lcSysSensY;
|
||||
} LOGCONTEXTW, *PLOGCONTEXTW, *NPLOGCONTEXTW, *LPLOGCONTEXTW;
|
||||
|
||||
DECL_WINELIB_TYPE_AW(LOGCONTEXT)
|
||||
DECL_WINELIB_TYPE_AW(PLOGCONTEXT)
|
||||
DECL_WINELIB_TYPE_AW(NPLOGCONTEXT)
|
||||
DECL_WINELIB_TYPE_AW(LPLOGCONTEXT)
|
||||
|
||||
/* context option values */
|
||||
#define CXO_SYSTEM 0x0001
|
||||
#define CXO_PEN 0x0002
|
||||
#define CXO_MESSAGES 0x0004
|
||||
#define CXO_MARGIN 0x8000
|
||||
#define CXO_MGNINSIDE 0x4000
|
||||
#define CXO_CSRMESSAGES 0x0008 /* 1.1 */
|
||||
|
||||
/* context status values */
|
||||
#define CXS_DISABLED 0x0001
|
||||
#define CXS_OBSCURED 0x0002
|
||||
#define CXS_ONTOP 0x0004
|
||||
|
||||
/* context lock values */
|
||||
#define CXL_INSIZE 0x0001
|
||||
#define CXL_INASPECT 0x0002
|
||||
#define CXL_SENSITIVITY 0x0004
|
||||
#define CXL_MARGIN 0x0008
|
||||
#define CXL_SYSOUT 0x0010
|
||||
|
||||
/***********************************************************************
|
||||
* EVENT DATA DEFS
|
||||
*/
|
||||
|
||||
/* For packet structure definition, see pktdef.h */
|
||||
|
||||
/* packet status values */
|
||||
#define TPS_PROXIMITY 0x0001
|
||||
#define TPS_QUEUE_ERR 0x0002
|
||||
#define TPS_MARGIN 0x0004
|
||||
#define TPS_GRAB 0x0008
|
||||
#define TPS_INVERT 0x0010 /* 1.1 */
|
||||
|
||||
typedef struct tagORIENTATION {
|
||||
int orAzimuth;
|
||||
int orAltitude;
|
||||
int orTwist;
|
||||
} ORIENTATION, *PORIENTATION, *NPORIENTATION, *LPORIENTATION;
|
||||
|
||||
typedef struct tagROTATION { /* 1.1 */
|
||||
int roPitch;
|
||||
int roRoll;
|
||||
int roYaw;
|
||||
} ROTATION, *PROTATION, *NPROTATION, *LPROTATION;
|
||||
|
||||
/* grandfather in obsolete member names. */
|
||||
#define rotPitch roPitch
|
||||
#define rotRoll roRoll
|
||||
#define rotYaw roYaw
|
||||
|
||||
/* relative buttons */
|
||||
#define TBN_NONE 0
|
||||
#define TBN_UP 1
|
||||
#define TBN_DOWN 2
|
||||
|
||||
/***********************************************************************
|
||||
* DEVICE CONFIG CONSTANTS
|
||||
*/
|
||||
|
||||
#ifndef NOWTDEVCFG
|
||||
|
||||
#define WTDC_NONE 0
|
||||
#define WTDC_CANCEL 1
|
||||
#define WTDC_OK 2
|
||||
#define WTDC_RESTART 3
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* HOOK CONSTANTS
|
||||
*/
|
||||
|
||||
#ifndef NOWTHOOKS
|
||||
|
||||
#define WTH_PLAYBACK 1
|
||||
#define WTH_RECORD 2
|
||||
|
||||
#define WTHC_GETLPLPFN (-3)
|
||||
#define WTHC_LPLPFNNEXT (-2)
|
||||
#define WTHC_LPFNNEXT (-1)
|
||||
#define WTHC_ACTION 0
|
||||
#define WTHC_GETNEXT 1
|
||||
#define WTHC_SKIP 2
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* PREFERENCE FUNCTION CONSTANTS
|
||||
*/
|
||||
|
||||
#ifndef NOWTPREF
|
||||
|
||||
#define WTP_LPDEFAULT ((LPVOID)-1L)
|
||||
#define WTP_DWDEFAULT ((DWORD)-1L)
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* EXTENSION TAGS AND CONSTANTS
|
||||
*/
|
||||
|
||||
#ifndef NOWTEXTENSIONS
|
||||
|
||||
/* constants for use with pktdef.h */
|
||||
#define PKEXT_ABSOLUTE 1
|
||||
#define PKEXT_RELATIVE 2
|
||||
|
||||
/* Extension tags. */
|
||||
#define WTX_OBT 0 /* Out of bounds tracking */
|
||||
#define WTX_FKEYS 1 /* Function keys */
|
||||
#define WTX_TILT 2 /* Raw Cartesian tilt; 1.1 */
|
||||
#define WTX_CSRMASK 3 /* select input by cursor type; 1.1 */
|
||||
#define WTX_XBTNMASK 4 /* Extended button mask; 1.1 */
|
||||
|
||||
typedef struct tagXBTNMASK {
|
||||
BYTE xBtnDnMask[32];
|
||||
BYTE xBtnUpMask[32];
|
||||
} XBTNMASK;
|
||||
|
||||
typedef struct tagTILT { /* 1.1 */
|
||||
int tiltX;
|
||||
int tiltY;
|
||||
} TILT;
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* Functions
|
||||
*/
|
||||
|
||||
#ifndef NOWTCALLBACKS
|
||||
|
||||
#ifndef NOWTMANAGERFXNS
|
||||
|
||||
/* callback function types */
|
||||
typedef BOOL (WINAPI * WTENUMPROC)(HCTX, LPARAM); /* changed CALLBACK->WINAPI, 1.1 */
|
||||
typedef BOOL (WINAPI * WTCONFIGPROC)(HCTX, HWND);
|
||||
typedef LRESULT (WINAPI * WTHOOKPROC)(int, WPARAM, LPARAM);
|
||||
typedef WTHOOKPROC *LPWTHOOKPROC;
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTFUNCTIONS
|
||||
|
||||
#ifndef NOWTBASICFXNS
|
||||
/* BASIC FUNCTIONS */
|
||||
|
||||
#define ORD_WTInfoA 20
|
||||
#define ORD_WTInfoW 1020
|
||||
#define ORD_WTInfo WINELIB_NAME_AW(ORD_WTInfo)
|
||||
#define ORD_WTOpenA 21
|
||||
#define ORD_WTOpenW 1021
|
||||
#define ORD_WTOpen WINELIB_NAME_AW(ORD_WTOpen)
|
||||
#define ORD_WTClose 22
|
||||
#define ORD_WTPacketsGet 23
|
||||
#define ORD_WTPacket 24
|
||||
|
||||
UINT WINAPI WTInfoA(UINT, UINT, LPVOID);
|
||||
UINT WINAPI WTInfoW(UINT, UINT, LPVOID);
|
||||
#define WTInfo WINELIB_NAME_AW(WTInfo)
|
||||
HCTX WINAPI WTOpenA(HWND, LPLOGCONTEXTA, BOOL);
|
||||
HCTX WINAPI WTOpenW(HWND, LPLOGCONTEXTW, BOOL);
|
||||
#define WTOpen WINELIB_NAME_AW(WTOpen)
|
||||
BOOL WINAPI WTClose(HCTX);
|
||||
int WINAPI WTPacketsGet(HCTX, int, LPVOID);
|
||||
BOOL WINAPI WTPacket(HCTX, UINT, LPVOID);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTVISIBILITYFXNS
|
||||
/* VISIBILITY FUNCTIONS */
|
||||
|
||||
#define ORD_WTEnable 40
|
||||
#define ORD_WTOverlap 41
|
||||
|
||||
BOOL WINAPI WTEnable(HCTX, BOOL);
|
||||
BOOL WINAPI WTOverlap(HCTX, BOOL);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTCTXEDITFXNS
|
||||
/* CONTEXT EDITING FUNCTIONS */
|
||||
|
||||
#define ORD_WTConfig 60
|
||||
#define ORD_WTGetA 61
|
||||
#define ORD_WTGetW 1061
|
||||
#define ORD_WTGet WINELIB_NAME_AW(ORD_WTGet)
|
||||
#define ORD_WTSetA 62
|
||||
#define ORD_WTSetW 1062
|
||||
#define ORD_WTSet WINELIB_NAME_AW(ORD_WTSet)
|
||||
#define ORD_WTExtGet 63
|
||||
#define ORD_WTExtSet 64
|
||||
#define ORD_WTSave 65
|
||||
#define ORD_WTRestore 66
|
||||
|
||||
BOOL WINAPI WTConfig(HCTX, HWND);
|
||||
BOOL WINAPI WTGetA(HCTX, LPLOGCONTEXTA);
|
||||
BOOL WINAPI WTGetW(HCTX, LPLOGCONTEXTW);
|
||||
#define WTGet WINELIB_NAME_AW(WTGet)
|
||||
BOOL WINAPI WTSetA(HCTX, LPLOGCONTEXTA);
|
||||
BOOL WINAPI WTSetW(HCTX, LPLOGCONTEXTW);
|
||||
#define WTSet WINELIB_NAME_AW(WTSet)
|
||||
BOOL WINAPI WTExtGet(HCTX, UINT, LPVOID);
|
||||
BOOL WINAPI WTExtSet(HCTX, UINT, LPVOID);
|
||||
BOOL WINAPI WTSave(HCTX, LPVOID);
|
||||
HCTX WINAPI WTRestore(HWND, LPVOID, BOOL);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTQUEUEFXNS
|
||||
/* ADVANCED PACKET AND QUEUE FUNCTIONS */
|
||||
|
||||
#define ORD_WTPacketsPeek 80
|
||||
#define ORD_WTDataGet 81
|
||||
#define ORD_WTDataPeek 82
|
||||
#define ORD_WTQueueSizeGet 84
|
||||
#define ORD_WTQueueSizeSet 85
|
||||
|
||||
int WINAPI WTPacketsPeek(HCTX, int, LPVOID);
|
||||
int WINAPI WTDataGet(HCTX, UINT, UINT, int, LPVOID, LPINT);
|
||||
int WINAPI WTDataPeek(HCTX, UINT, UINT, int, LPVOID, LPINT);
|
||||
int WINAPI WTQueueSizeGet(HCTX);
|
||||
BOOL WINAPI WTQueueSizeSet(HCTX, int);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTHMGRFXNS
|
||||
/* MANAGER HANDLE FUNCTIONS */
|
||||
|
||||
#define ORD_WTMgrOpen 100
|
||||
#define ORD_WTMgrClose 101
|
||||
|
||||
HMGR WINAPI WTMgrOpen(HWND, UINT);
|
||||
BOOL WINAPI WTMgrClose(HMGR);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTMGRCTXFXNS
|
||||
/* MANAGER CONTEXT FUNCTIONS */
|
||||
|
||||
#define ORD_WTMgrContextEnum 120
|
||||
#define ORD_WTMgrContextOwner 121
|
||||
#define ORD_WTMgrDefContext 122
|
||||
#define ORD_WTMgrDefContextEx 206
|
||||
|
||||
BOOL WINAPI WTMgrContextEnum(HMGR, WTENUMPROC, LPARAM);
|
||||
HWND WINAPI WTMgrContextOwner(HMGR, HCTX);
|
||||
HCTX WINAPI WTMgrDefContext(HMGR, BOOL);
|
||||
HCTX WINAPI WTMgrDefContextEx(HMGR, UINT, BOOL); /* 1.1 */
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTMGRCONFIGFXNS
|
||||
/* MANAGER CONFIG BOX FUNCTIONS */
|
||||
|
||||
#define ORD_WTMgrDeviceConfig 140
|
||||
|
||||
UINT WINAPI WTMgrDeviceConfig(HMGR, UINT, HWND);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTMGRHOOKFXNS
|
||||
/* MANAGER PACKET HOOK FUNCTIONS */
|
||||
|
||||
/* OBSOLETE IN WIN32! */
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTMGRPREFFXNS
|
||||
/* MANAGER PREFERENCE DATA FUNCTIONS */
|
||||
|
||||
#define ORD_WTMgrExt 180
|
||||
#define ORD_WTMgrCsrEnable 181
|
||||
#define ORD_WTMgrCsrButtonMap 182
|
||||
#define ORD_WTMgrCsrPressureBtnMarks 183
|
||||
#define ORD_WTMgrCsrPressureResponse 184
|
||||
#define ORD_WTMgrCsrExt 185
|
||||
|
||||
BOOL WINAPI WTMgrExt(HMGR, UINT, LPVOID);
|
||||
BOOL WINAPI WTMgrCsrEnable(HMGR, UINT, BOOL);
|
||||
BOOL WINAPI WTMgrCsrButtonMap(HMGR, UINT, LPBYTE, LPBYTE);
|
||||
BOOL WINAPI WTMgrCsrPressureBtnMarks(HMGR, UINT, DWORD, DWORD);
|
||||
BOOL WINAPI WTMgrCsrPressureResponse(HMGR, UINT, UINT *, UINT *);
|
||||
BOOL WINAPI WTMgrCsrExt(HMGR, UINT, UINT, LPVOID);
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* Win32 replacements for non-portable functions.
|
||||
*/
|
||||
|
||||
#ifndef NOWTQUEUEFXNS
|
||||
/* ADVANCED PACKET AND QUEUE FUNCTIONS */
|
||||
|
||||
#define ORD_WTQueuePacketsEx 200
|
||||
|
||||
BOOL WINAPI WTQueuePacketsEx(HCTX, UINT *, UINT *);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTMGRCONFIGFXNS
|
||||
/* MANAGER CONFIG BOX FUNCTIONS */
|
||||
|
||||
#define ORD_WTMgrConfigReplaceExA 202
|
||||
#define ORD_WTMgrConfigReplaceExW 1202
|
||||
#define ORD_WTMgrConfigReplaceEx WINELIB_NAME_AW(ORD_WTMgrConfigReplaceEx)
|
||||
|
||||
BOOL WINAPI WTMgrConfigReplaceExA(HMGR, BOOL, LPSTR, LPSTR);
|
||||
BOOL WINAPI WTMgrConfigReplaceExW(HMGR, BOOL, LPWSTR, LPSTR);
|
||||
#define WTMgrConfigReplaceEx WINELIB_NAME_AW(WTMgrConfigReplaceEx)
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTMGRHOOKFXNS
|
||||
/* MANAGER PACKET HOOK FUNCTIONS */
|
||||
|
||||
#define ORD_WTMgrPacketHookExA 203
|
||||
#define ORD_WTMgrPacketHookExW 1203
|
||||
#define ORD_WTMgrPacketHookEx WINELIB_NAME_AW(ORD_WTMgrPacketHookEx)
|
||||
#define ORD_WTMgrPacketUnhook 204
|
||||
#define ORD_WTMgrPacketHookNext 205
|
||||
|
||||
HWTHOOK WINAPI WTMgrPacketHookExA(HMGR, int, LPSTR, LPSTR);
|
||||
HWTHOOK WINAPI WTMgrPacketHookExW(HMGR, int, LPWSTR, LPSTR);
|
||||
#define WTMgrPacketHookEx WINELIB_NAME_AW(WTMgrPacketHookEx)
|
||||
BOOL WINAPI WTMgrPacketUnhook(HWTHOOK);
|
||||
LRESULT WINAPI WTMgrPacketHookNext(HWTHOOK, int, WPARAM, LPARAM);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NOWTMGRPREFFXNS
|
||||
/* MANAGER PREFERENCE DATA FUNCTIONS */
|
||||
|
||||
#define ORD_WTMgrCsrPressureBtnMarksEx 201
|
||||
|
||||
BOOL WINAPI WTMgrCsrPressureBtnMarksEx(HMGR, UINT, UINT *, UINT *);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif /* defined(__cplusplus) */
|
||||
|
||||
#endif /* defined(__WINE_WINTAB_H */
|
|
@ -1,148 +0,0 @@
|
|||
/*
|
||||
* WinTab32 library
|
||||
*
|
||||
* Copyright 2003 CodeWeavers, Aric Stewart
|
||||
*
|
||||
* 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
|
||||
*/
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "wingdi.h"
|
||||
#include "winuser.h"
|
||||
#include "winerror.h"
|
||||
#include "wintab.h"
|
||||
#include "wintab_internal.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(wintab32);
|
||||
|
||||
HWND hwndDefault = NULL;
|
||||
static const WCHAR
|
||||
WC_TABLETCLASSNAME[] = {'W','i','n','e','T','a','b','l','e','t','C','l','a','s','s',0};
|
||||
CRITICAL_SECTION csTablet;
|
||||
|
||||
int (CDECL *pLoadTabletInfo)(HWND hwnddefault) = NULL;
|
||||
int (CDECL *pGetCurrentPacket)(LPWTPACKET packet) = NULL;
|
||||
int (CDECL *pAttachEventQueueToTablet)(HWND hOwner) = NULL;
|
||||
UINT (CDECL *pWTInfoW)(UINT wCategory, UINT nIndex, LPVOID lpOutput) = NULL;
|
||||
|
||||
static LRESULT WINAPI TABLET_WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam,
|
||||
LPARAM lParam);
|
||||
|
||||
static VOID TABLET_Register(void)
|
||||
{
|
||||
WNDCLASSW wndClass;
|
||||
ZeroMemory(&wndClass, sizeof(WNDCLASSW));
|
||||
wndClass.style = CS_GLOBALCLASS;
|
||||
wndClass.lpfnWndProc = TABLET_WindowProc;
|
||||
wndClass.cbClsExtra = 0;
|
||||
wndClass.cbWndExtra = 0;
|
||||
wndClass.hCursor = NULL;
|
||||
wndClass.hbrBackground = (HBRUSH)(COLOR_WINDOW +1);
|
||||
wndClass.lpszClassName = WC_TABLETCLASSNAME;
|
||||
RegisterClassW(&wndClass);
|
||||
}
|
||||
|
||||
static VOID TABLET_Unregister(void)
|
||||
{
|
||||
UnregisterClassW(WC_TABLETCLASSNAME, NULL);
|
||||
}
|
||||
|
||||
BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpReserved)
|
||||
{
|
||||
static const WCHAR name[] = {'T','a','b','l','e','t',0};
|
||||
HMODULE hx11drv;
|
||||
|
||||
TRACE("%p, %x, %p\n",hInstDLL,fdwReason,lpReserved);
|
||||
switch (fdwReason)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
TRACE("Initialization\n");
|
||||
DisableThreadLibraryCalls(hInstDLL);
|
||||
InitializeCriticalSection(&csTablet);
|
||||
csTablet.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": csTablet");
|
||||
hx11drv = GetModuleHandleA("winex11.drv");
|
||||
if (hx11drv)
|
||||
{
|
||||
pLoadTabletInfo = (void *)GetProcAddress(hx11drv, "LoadTabletInfo");
|
||||
pAttachEventQueueToTablet = (void *)GetProcAddress(hx11drv, "AttachEventQueueToTablet");
|
||||
pGetCurrentPacket = (void *)GetProcAddress(hx11drv, "GetCurrentPacket");
|
||||
pWTInfoW = (void *)GetProcAddress(hx11drv, "WTInfoW");
|
||||
TABLET_Register();
|
||||
hwndDefault = CreateWindowW(WC_TABLETCLASSNAME, name,
|
||||
WS_POPUPWINDOW,0,0,0,0,0,0,hInstDLL,0);
|
||||
}
|
||||
else
|
||||
return FALSE;
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
TRACE("Detaching\n");
|
||||
if (hwndDefault)
|
||||
{
|
||||
DestroyWindow(hwndDefault);
|
||||
hwndDefault = 0;
|
||||
}
|
||||
TABLET_Unregister();
|
||||
csTablet.DebugInfo->Spare[0] = 0;
|
||||
DeleteCriticalSection(&csTablet);
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* The window proc for the default TABLET window
|
||||
*/
|
||||
static LRESULT WINAPI TABLET_WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam,
|
||||
LPARAM lParam)
|
||||
{
|
||||
TRACE("Incoming Message 0x%x (0x%08x, 0x%08x)\n", uMsg, (UINT)wParam,
|
||||
(UINT)lParam);
|
||||
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_NCCREATE:
|
||||
return TRUE;
|
||||
|
||||
case WT_PACKET:
|
||||
{
|
||||
WTPACKET packet;
|
||||
LPOPENCONTEXT handler;
|
||||
pGetCurrentPacket(&packet);
|
||||
handler = AddPacketToContextQueue(&packet,(HWND)lParam);
|
||||
if (handler && handler->context.lcOptions & CXO_MESSAGES)
|
||||
TABLET_PostTabletMessage(handler, _WT_PACKET(handler->context.lcMsgBase),
|
||||
(WPARAM)packet.pkSerialNumber,
|
||||
(LPARAM)handler->handle, FALSE);
|
||||
break;
|
||||
}
|
||||
case WT_PROXIMITY:
|
||||
{
|
||||
WTPACKET packet;
|
||||
LPOPENCONTEXT handler;
|
||||
pGetCurrentPacket(&packet);
|
||||
handler = AddPacketToContextQueue(&packet,(HWND)wParam);
|
||||
if (handler)
|
||||
TABLET_PostTabletMessage(handler, WT_PROXIMITY,
|
||||
(WPARAM)handler->handle, lParam, TRUE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
|
@ -1,13 +0,0 @@
|
|||
<module name="wintab32" type="win32dll" installbase="system32" installname="wintab32.dll" allowwarnings="true">
|
||||
<importlibrary definition="wintab32.spec" />
|
||||
<include base="wintab32">.</include>
|
||||
<include base="ReactOS">include/reactos/wine</include>
|
||||
<define name="__WINESRC__" />
|
||||
<file>context.c</file>
|
||||
<file>manager.c</file>
|
||||
<file>wintab32.c</file>
|
||||
<library>wine</library>
|
||||
<library>user32</library>
|
||||
<library>kernel32</library>
|
||||
<library>ntdll</library>
|
||||
</module>
|
|
@ -1,44 +0,0 @@
|
|||
20 stdcall WTInfoA(long long ptr)
|
||||
21 stdcall WTOpenA(long ptr long)
|
||||
22 stdcall WTClose(long)
|
||||
23 stdcall WTPacketsGet(long long ptr)
|
||||
24 stdcall WTPacket(long long ptr)
|
||||
40 stdcall WTEnable(long long)
|
||||
41 stdcall WTOverlap(long long)
|
||||
60 stdcall WTConfig(long long)
|
||||
61 stdcall WTGetA(long ptr)
|
||||
62 stdcall WTSetA(long ptr)
|
||||
63 stdcall WTExtGet(long long ptr)
|
||||
64 stdcall WTExtSet(long long ptr)
|
||||
65 stdcall WTSave(long ptr)
|
||||
66 stdcall WTRestore(long ptr long)
|
||||
80 stdcall WTPacketsPeek(long long ptr)
|
||||
81 stdcall WTDataGet(long long long long ptr ptr)
|
||||
82 stdcall WTDataPeek(long long long long ptr ptr)
|
||||
84 stdcall WTQueueSizeGet(long)
|
||||
85 stdcall WTQueueSizeSet(long long)
|
||||
100 stdcall WTMgrOpen(long long)
|
||||
101 stdcall WTMgrClose(long)
|
||||
120 stdcall WTMgrContextEnum(long ptr long)
|
||||
121 stdcall WTMgrContextOwner(long long)
|
||||
122 stdcall WTMgrDefContext(long long)
|
||||
140 stdcall WTMgrDeviceConfig(long long long)
|
||||
180 stdcall WTMgrExt(long long ptr)
|
||||
181 stdcall WTMgrCsrEnable(long long long)
|
||||
182 stdcall WTMgrCsrButtonMap(long long ptr ptr)
|
||||
183 stdcall WTMgrCsrPressureBtnMarks(long long long long)
|
||||
184 stdcall WTMgrCsrPressureResponse(long long ptr ptr)
|
||||
185 stdcall WTMgrCsrExt(long long long ptr)
|
||||
200 stdcall WTQueuePacketsEx(long ptr ptr)
|
||||
201 stdcall WTMgrCsrPressureBtnMarksEx(long long ptr ptr)
|
||||
202 stdcall WTMgrConfigReplaceExA(long long str str)
|
||||
203 stdcall WTMgrPacketHookExA(long long str str)
|
||||
204 stdcall WTMgrPacketUnhook(long)
|
||||
205 stdcall WTMgrPacketHookNext(long long long long)
|
||||
206 stdcall WTMgrDefContextEx(long long long)
|
||||
1020 stdcall WTInfoW(long long ptr)
|
||||
1021 stdcall WTOpenW(long ptr long)
|
||||
1061 stdcall WTGetW(long ptr)
|
||||
1062 stdcall WTSetW(long ptr)
|
||||
1202 stdcall WTMgrConfigReplaceExW(long long wstr str)
|
||||
1203 stdcall WTMgrPacketHookExW(long long wstr str)
|
|
@ -1,162 +0,0 @@
|
|||
/*
|
||||
* Tablet header
|
||||
*
|
||||
* Copyright 2003 CodeWeavers (Aric Stewart)
|
||||
*
|
||||
* 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_WINTAB_INTERNAL_H
|
||||
#define __WINE_WINTAB_INTERNAL_H
|
||||
|
||||
typedef struct tagWTI_INTERFACE_INFO {
|
||||
CHAR WINTABID[1024];
|
||||
/* a copy of the null-terminated tablet hardware identification string
|
||||
* in the user buffer. This string should include make, model, and
|
||||
* revision information in user-readable format.
|
||||
*/
|
||||
WORD SPECVERSION;
|
||||
/* the specification version number. The high-order byte contains the
|
||||
* major version number; the low-order byte contains the minor version
|
||||
* number.
|
||||
*/
|
||||
WORD IMPLVERSION;
|
||||
/* the implementation version number. The high-order byte contains the
|
||||
* major version number; the low-order byte contains the minor version
|
||||
* number.
|
||||
*/
|
||||
UINT NDEVICES;
|
||||
/* the number of devices supported. */
|
||||
UINT NCURSORS;
|
||||
/* the total number of cursor types supported. */
|
||||
UINT NCONTEXTS;
|
||||
/* the number of contexts supported. */
|
||||
UINT CTXOPTIONS;
|
||||
/* flags indicating which context options are supported */
|
||||
UINT CTXSAVESIZE;
|
||||
/* the size of the save information returned from WTSave.*/
|
||||
UINT NEXTENSIONS;
|
||||
/* the number of extension data items supported.*/
|
||||
UINT NMANAGERS;
|
||||
/* the number of manager handles supported.*/
|
||||
}WTI_INTERFACE_INFO, *LPWTI_INTERFACE_INFO;
|
||||
|
||||
typedef struct tagWTI_STATUS_INFO{
|
||||
UINT CONTEXTS;
|
||||
/* the number of contexts currently open.*/
|
||||
UINT SYSCTXS;
|
||||
/* the number of system contexts currently open.*/
|
||||
UINT PKTRATE;
|
||||
/* the maximum packet report rate currently being received by any
|
||||
* context, in Hertz.
|
||||
*/
|
||||
WTPKT PKTDATA;
|
||||
/* a mask indicating which packet data items are requested by at
|
||||
* least one context.
|
||||
*/
|
||||
UINT MANAGERS;
|
||||
/* the number of manager handles currently open.*/
|
||||
BOOL SYSTEM;
|
||||
/* a non-zero value if system pointing is available to the whole
|
||||
* screen; zero otherwise.
|
||||
*/
|
||||
DWORD BUTTONUSE;
|
||||
/* a button mask indicating the logical buttons whose events are
|
||||
* requested by at least one context.
|
||||
*/
|
||||
DWORD SYSBTNUSE;
|
||||
/* a button mask indicating which logical buttons are assigned a system
|
||||
* button function by the current cursor's system button map.
|
||||
*/
|
||||
} WTI_STATUS_INFO, *LPWTI_STATUS_INFO;
|
||||
|
||||
typedef struct tagWTI_EXTENSIONS_INFO
|
||||
{
|
||||
CHAR NAME[256];
|
||||
/* a unique, null-terminated string describing the extension.*/
|
||||
UINT TAG;
|
||||
/* a unique identifier for the extension. */
|
||||
WTPKT MASK;
|
||||
/* a mask that can be bitwise OR'ed with WTPKT-type variables to select
|
||||
* the extension.
|
||||
*/
|
||||
UINT SIZE[2];
|
||||
/* an array of two UINTs specifying the extension's size within a packet
|
||||
* (in bytes). The first is for absolute mode; the second is for
|
||||
* relative mode.
|
||||
*/
|
||||
AXIS *AXES;
|
||||
/* an array of axis descriptions, as needed for the extension. */
|
||||
BYTE *DEFAULT;
|
||||
/* the current global default data, as needed for the extension. This
|
||||
* data is modified via the WTMgrExt function.
|
||||
*/
|
||||
BYTE *DEFCONTEXT;
|
||||
BYTE *DEFSYSCTX;
|
||||
/* the current default context-specific data, as needed for the
|
||||
* extension. The indices identify the digitizing- and system-context
|
||||
* defaults, respectively.
|
||||
*/
|
||||
BYTE *CURSORS;
|
||||
/* Is the first of one or more consecutive indices, one per cursor type.
|
||||
* Each returns the current default cursor-specific data, as need for
|
||||
* the extension. This data is modified via the WTMgrCsrExt function.
|
||||
*/
|
||||
} 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;
|
||||
LOGCONTEXTW context;
|
||||
HWND hwndOwner;
|
||||
BOOL enabled;
|
||||
INT ActiveCursor;
|
||||
INT QueueSize;
|
||||
INT PacketsQueued;
|
||||
LPWTPACKET PacketQueue;
|
||||
struct tagOPENCONTEXT *next;
|
||||
} OPENCONTEXT, *LPOPENCONTEXT;
|
||||
|
||||
int TABLET_PostTabletMessage(LPOPENCONTEXT newcontext, UINT msg, WPARAM wParam,
|
||||
LPARAM lParam, BOOL send_always);
|
||||
LPOPENCONTEXT AddPacketToContextQueue(LPWTPACKET packet, HWND hwnd);
|
||||
|
||||
/* X11drv functions */
|
||||
extern int (CDECL *pLoadTabletInfo)(HWND hwnddefault);
|
||||
extern int (CDECL *pGetCurrentPacket)(LPWTPACKET packet);
|
||||
extern int (CDECL *pAttachEventQueueToTablet)(HWND hOwner);
|
||||
extern UINT (CDECL *pWTInfoW)(UINT wCategory, UINT nIndex, LPVOID lpOutput);
|
||||
|
||||
extern HWND hwndDefault;
|
||||
extern CRITICAL_SECTION csTablet;
|
||||
|
||||
#endif /* __WINE_WINTAB_INTERNAL_H */
|
Loading…
Reference in a new issue