|  | /* | 
|  | * 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, %u, %u): 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; | 
|  | } |