Release 20030408.
[wine/gsoc-2012-control.git] / dlls / wintab32 / wintab16.c
blob68e7af741f5b0339cd13a2926c44136aa07dcffc
1 /*
2 * Tablet Win16
4 * Copyright 2002 Patrik Stridvall
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 #include "config.h"
23 #include "windef.h"
25 #include "wintab.h"
27 #include "wine/windef16.h"
28 #include "wine/debug.h"
30 WINE_DEFAULT_DEBUG_CHANNEL(wintab);
32 /**********************************************************************/
34 #define DECLARE_HANDLE16(a) \
35 typedef HANDLE16 a##16; \
36 typedef a##16 *P##a##16; \
37 typedef a##16 *NP##a##16; \
38 typedef a##16 *LP##a##16
40 DECLARE_HANDLE16(HMGR); /* manager handle */
41 DECLARE_HANDLE16(HCTX); /* context handle */
42 DECLARE_HANDLE16(HWTHOOK); /* hook handle */
44 /**********************************************************************/
46 typedef struct tagLOGCONTEXT16 {
47 char lcName[LCNAMELEN];
48 UINT16 lcOptions;
49 UINT16 lcStatus;
50 UINT16 lcLocks;
51 UINT16 lcMsgBase;
52 UINT16 lcDevice;
53 UINT16 lcPktRate;
54 WTPKT lcPktData;
55 WTPKT lcPktMode;
56 WTPKT lcMoveMask;
57 DWORD lcBtnDnMask;
58 DWORD lcBtnUpMask;
59 LONG lcInOrgX;
60 LONG lcInOrgY;
61 LONG lcInOrgZ;
62 LONG lcInExtX;
63 LONG lcInExtY;
64 LONG lcInExtZ;
65 LONG lcOutOrgX;
66 LONG lcOutOrgY;
67 LONG lcOutOrgZ;
68 LONG lcOutExtX;
69 LONG lcOutExtY;
70 LONG lcOutExtZ;
71 FIX32 lcSensX;
72 FIX32 lcSensY;
73 FIX32 lcSensZ;
74 BOOL16 lcSysMode;
75 INT16 lcSysOrgX;
76 INT16 lcSysOrgY;
77 INT16 lcSysExtX;
78 INT16 lcSysExtY;
79 FIX32 lcSysSensX;
80 FIX32 lcSysSensY;
81 } LOGCONTEXT16, *PLOGCONTEXT16, *NPLOGCONTEXT16, *LPLOGCONTEXT16;
83 /**********************************************************************/
85 typedef BOOL16 (WINAPI * WTENUMPROC16)(HCTX16, LPARAM); /* changed CALLBACK->WINAPI, 1.1 */
86 typedef BOOL16 (WINAPI * WTCONFIGPROC16)(HCTX16, HWND16);
87 typedef LRESULT (WINAPI * WTHOOKPROC16)(INT16, WPARAM16, LPARAM);
88 typedef WTHOOKPROC16 *LPWTHOOKPROC16;
90 /***********************************************************************
91 * WTInfo (WINTAB.20)
93 UINT16 WINAPI WTInfo16(UINT16 wCategory, UINT16 nIndex, LPVOID lpOutput)
95 FIXME("(%hu, %hu, %p): stub\n", wCategory, nIndex, lpOutput);
97 return 0;
100 /***********************************************************************
101 * WTOpen (WINTAB.21)
103 HCTX16 WINAPI WTOpen16(HWND16 hWnd, LPLOGCONTEXT16 lpLogCtx, BOOL16 fEnable)
105 FIXME("(0x%04hx, %p, %hu): stub\n", hWnd, lpLogCtx, fEnable);
107 return 0;
110 /***********************************************************************
111 * WTClose (WINTAB.22)
113 BOOL16 WINAPI WTClose16(HCTX16 hCtx)
115 FIXME("(0x%04hx): stub\n", hCtx);
117 return TRUE;
120 /***********************************************************************
121 * WTPacketsGet (WINTAB.23)
123 INT16 WINAPI WTPacketsGet16(HCTX16 hCtx, INT16 cMaxPkts, LPVOID lpPkts)
125 FIXME("(0x%04hx, %hd, %p): stub\n", hCtx, cMaxPkts, lpPkts);
127 return 0;
130 /***********************************************************************
131 * WTPacket (WINTAB.24)
133 BOOL16 WINAPI WTPacket16(HCTX16 hCtx, UINT16 wSerial, LPVOID lpPkt)
135 FIXME("(0x%04hx, %hd, %p): stub\n", hCtx, wSerial, lpPkt);
137 return FALSE;
140 /***********************************************************************
141 * WTEnable (WINTAB.40)
143 BOOL16 WINAPI WTEnable16(HCTX16 hCtx, BOOL16 fEnable)
145 FIXME("(0x%04hx, %hu): stub\n", hCtx, fEnable);
147 return FALSE;
150 /***********************************************************************
151 * WTOverlap (WINTAB.41)
153 BOOL16 WINAPI WTOverlap16(HCTX16 hCtx, BOOL16 fToTop)
155 FIXME("(0x%04hx, %hu): stub\n", hCtx, fToTop);
157 return FALSE;
160 /***********************************************************************
161 * WTConfig (WINTAB.60)
163 BOOL16 WINAPI WTConfig16(HCTX16 hCtx, HWND16 hWnd)
165 FIXME("(0x%04hx, 0x%04hx): stub\n", hCtx, hWnd);
167 return FALSE;
170 /***********************************************************************
171 * WTGet (WINTAB.61)
173 BOOL16 WINAPI WTGet16(HCTX16 hCtx, LPLOGCONTEXT16 lpLogCtx)
175 FIXME("(0x%04hx, %p): stub\n", hCtx, lpLogCtx);
177 return FALSE;
180 /***********************************************************************
181 * WTSet (WINTAB.62)
183 BOOL16 WINAPI WTSet16(HCTX16 hCtx, LPLOGCONTEXT16 lpLogCtx)
185 FIXME("(0x%04hx, %p): stub\n", hCtx, lpLogCtx);
187 return FALSE;
190 /***********************************************************************
191 * WTExtGet (WINTAB.63)
193 BOOL16 WINAPI WTExtGet16(HCTX16 hCtx, UINT16 wExt, LPVOID lpData)
195 FIXME("(0x%04hx, %hu, %p): stub\n", hCtx, wExt, lpData);
197 return FALSE;
200 /***********************************************************************
201 * WTExtSet (WINTAB.64)
203 BOOL16 WINAPI WTExtSet16(HCTX16 hCtx, UINT16 wExt, LPVOID lpData)
205 FIXME("(0x%04hx, %hu, %p): stub\n", hCtx, wExt, lpData);
207 return FALSE;
210 /***********************************************************************
211 * WTSave (WINTAB.65)
213 BOOL16 WINAPI WTSave16(HCTX16 hCtx, LPVOID lpSaveInfo)
215 FIXME("(0x%04hx, %p): stub\n", hCtx, lpSaveInfo);
217 return FALSE;
220 /***********************************************************************
221 * WTRestore (WINTAB.66)
223 HCTX16 WINAPI WTRestore16(HWND16 hWnd, LPVOID lpSaveInfo, BOOL16 fEnable)
225 FIXME("(0x%04hx, %p, %hu): stub\n", hWnd, lpSaveInfo, fEnable);
227 return 0;
230 /***********************************************************************
231 * WTPacketsPeek (WINTAB.80)
233 INT16 WINAPI WTPacketsPeek16(HCTX16 hCtx, INT16 cMaxPkts, LPVOID lpPkts)
235 FIXME("(0x%04hx, %hd, %p): stub\n", hCtx, cMaxPkts, lpPkts);
237 return 0;
240 /***********************************************************************
241 * WTDataGet (WINTAB.81)
243 INT16 WINAPI WTDataGet16(HCTX16 hCtx, UINT16 wBegin, UINT16 wEnd,
244 INT16 cMaxPkts, LPVOID lpPkts, LPINT16 lpNPkts)
246 FIXME("(0x%04hx, %hu, %hu, %hd, %p, %p): stub\n",
247 hCtx, wBegin, wEnd, cMaxPkts, lpPkts, lpNPkts);
249 return 0;
252 /***********************************************************************
253 * WTDataPeek (WINTAB.82)
255 INT16 WINAPI WTDataPeek16(HCTX16 hCtx, UINT16 wBegin, UINT16 wEnd,
256 INT16 cMaxPkts, LPVOID lpPkts, LPINT16 lpNPkts)
258 FIXME("(0x%04hx, %hu, %hu, %hd, %p, %p): stub\n",
259 hCtx, wBegin, wEnd, cMaxPkts, lpPkts, lpNPkts);
261 return 0;
264 /***********************************************************************
265 * WTQueuePackets (WINTAB.83)
267 * OBSOLETE IN WIN32!
269 DWORD WINAPI WTQueuePackets16(HCTX16 hCtx)
271 FIXME("(0x%04hx): stub\n", hCtx);
273 return 0;
276 /***********************************************************************
277 * WTQueuePacketsEx (WINTAB.200)
279 BOOL16 WINAPI WTQueuePacketsEx16(HCTX16 hCtx, UINT16 *lpOld, UINT16 *lpNew)
281 FIXME("(0x%04hx, %p, %p): stub\n", hCtx, lpOld, lpNew);
283 return TRUE;
286 /***********************************************************************
287 * WTQueueSizeGet (WINTAB.84)
289 INT16 WINAPI WTQueueSizeGet16(HCTX16 hCtx)
291 FIXME("(0x%04hx): stub\n", hCtx);
293 return 0;
296 /***********************************************************************
297 * WTQueueSizeSet (WINTAB.85)
299 BOOL16 WINAPI WTQueueSizeSet16(HCTX16 hCtx, INT16 nPkts)
301 FIXME("(0x%04hx, %hd): stub\n", hCtx, nPkts);
303 return FALSE;
306 /***********************************************************************
307 * WTMgrOpen (WINTAB.100)
309 HMGR16 WINAPI WTMgrOpen16(HWND16 hWnd, UINT16 wMsgBase)
311 FIXME("(0x%04hx, %hu): stub\n", hWnd, wMsgBase);
313 return 0;
316 /***********************************************************************
317 * WTMgrClose (WINTAB.101)
319 BOOL16 WINAPI WTMgrClose16(HMGR16 hMgr)
321 FIXME("(0x%04hx): stub\n", hMgr);
323 return FALSE;
326 /***********************************************************************
327 * WTMgrContextEnum (WINTAB.120)
329 BOOL16 WINAPI WTMgrContextEnum16(HMGR16 hMgr, WTENUMPROC16 lpEnumFunc, LPARAM lParam)
331 FIXME("(0x%04hx, %p, %ld): stub\n", hMgr, lpEnumFunc, lParam);
333 return FALSE;
336 /***********************************************************************
337 * WTMgrContextOwner (WINTAB.121)
339 HWND16 WINAPI WTMgrContextOwner16(HMGR16 hMgr, HCTX16 hCtx)
341 FIXME("(0x%04hx, 0x%04hx): stub\n", hMgr, hCtx);
343 return 0;
346 /***********************************************************************
347 * WTMgrDefContext (WINTAB.122)
349 HCTX16 WINAPI WTMgrDefContext16(HMGR16 hMgr, BOOL16 fSystem)
351 FIXME("(0x%04hx, %hu): stub\n", hMgr, fSystem);
353 return 0;
356 /***********************************************************************
357 * WTMgrDefContextEx (WINTAB.206)
359 * 1.1
361 HCTX16 WINAPI WTMgrDefContextEx16(HMGR16 hMgr, UINT16 wDevice, BOOL16 fSystem)
363 FIXME("(0x%04hx, %hu, %hu): stub\n", hMgr, wDevice, fSystem);
365 return 0;
368 /***********************************************************************
369 * WTMgrDeviceConfig (WINTAB.140)
371 UINT16 WINAPI WTMgrDeviceConfig16(HMGR16 hMgr, UINT16 wDevice, HWND16 hWnd)
373 FIXME("(0x%04hx, %hu, 0x%04hx): stub\n", hMgr, wDevice, hWnd);
375 return 0;
378 /***********************************************************************
379 * WTMgrConfigReplace (WINTAB.141)
381 * OBSOLETE IN WIN32!
383 BOOL16 WINAPI WTMgrConfigReplace16(HMGR16 hMgr, BOOL16 fInstall,
384 WTCONFIGPROC16 lpConfigProc)
386 FIXME("(0x%04hx, %hu, %p): stub\n", hMgr, fInstall, lpConfigProc);
388 return FALSE;
391 /***********************************************************************
392 * WTMgrConfigReplaceEx (WINTAB.202)
394 BOOL16 WINAPI WTMgrConfigReplaceEx16(HMGR16 hMgr, BOOL16 fInstall,
395 LPSTR lpszModule, LPSTR lpszCfgProc)
397 FIXME("(0x%04hx, %hu, %s, %s): stub\n", hMgr, fInstall,
398 debugstr_a(lpszModule), debugstr_a(lpszCfgProc));
400 return FALSE;
403 /***********************************************************************
404 * WTMgrPacketHook (WINTAB.160)
406 * OBSOLETE IN WIN32!
408 WTHOOKPROC16 WINAPI WTMgrPacketHook16(HMGR16 hMgr, BOOL16 fInstall,
409 INT16 nType, WTHOOKPROC16 lpFunc)
411 FIXME("(0x%04hx, %hu, %hd, %p): stub\n", hMgr, fInstall, nType, lpFunc);
413 return 0;
416 /***********************************************************************
417 * WTMgrPacketHookEx (WINTAB.203)
419 HWTHOOK16 WINAPI WTMgrPacketHookEx16(HMGR16 hMgr, INT16 nType,
420 LPSTR lpszModule, LPSTR lpszHookProc)
422 FIXME("(0x%04hx, %hd, %s, %s): stub\n", hMgr, nType,
423 debugstr_a(lpszModule), debugstr_a(lpszHookProc));
425 return 0;
428 /***********************************************************************
429 * WTMgrPacketUnhook (WINTAB.204)
431 BOOL16 WINAPI WTMgrPacketUnhook16(HWTHOOK16 hHook)
433 FIXME("(0x%04hx): stub\n", hHook);
435 return FALSE;
438 /***********************************************************************
439 * WTMgrPacketHookDefProc (WINTAB.161)
441 * OBSOLETE IN WIN32!
443 LRESULT WINAPI WTMgrPacketHookDefProc16(INT16 nCode, WPARAM16 wParam,
444 LPARAM lParam, LPWTHOOKPROC16 lplpFunc)
446 FIXME("(%hd, %hu, %lu, %p): stub\n", nCode, wParam, lParam, lplpFunc);
448 return 0;
451 /***********************************************************************
452 * WTMgrPacketHookNext (WINTAB.205)
454 LRESULT WINAPI WTMgrPacketHookNext16(HWTHOOK16 hHook, INT16 nCode,
455 WPARAM16 wParam, LPARAM lParam)
457 FIXME("(0x%04hx, %hd, %hu, %lu): stub\n", hHook, nCode, wParam, lParam);
459 return 0;
463 /***********************************************************************
464 * WTMgrExt (WINTAB.180)
466 BOOL16 WINAPI WTMgrExt16(HMGR16 hMgr, UINT16 wExt, LPVOID lpData)
468 FIXME("(0x%04hx, %hu, %p): stub\n", hMgr, wExt, lpData);
470 return FALSE;
473 /***********************************************************************
474 * WTMgrCsrEnable (WINTAB.181)
476 BOOL16 WINAPI WTMgrCsrEnable16(HMGR16 hMgr, UINT16 wCursor, BOOL16 fEnable)
478 FIXME("(0x%04hx, %hu, %hu): stub\n", hMgr, wCursor, fEnable);
480 return FALSE;
483 /***********************************************************************
484 * WTMgrCsrButtonMap (WINTAB.182)
486 BOOL16 WINAPI WTMgrCsrButtonMap16(HMGR16 hMgr, UINT16 wCursor,
487 LPBYTE lpLogBtns, LPBYTE lpSysBtns)
489 FIXME("(0x%04hx, %hu, %p, %p): stub\n", hMgr, wCursor, lpLogBtns, lpSysBtns);
491 return FALSE;
494 /***********************************************************************
495 * WTMgrCsrPressureBtnMarks (WINTAB.183)
497 * OBSOLETE IN WIN32! (But only according to documentation)
499 BOOL16 WINAPI WTMgrCsrPressureBtnMarks16(HMGR16 hMgr, UINT16 wCsr,
500 DWORD dwNMarks, DWORD dwTMarks)
502 FIXME("(0x%04hx, %hu, %lu, %lu): stub\n", hMgr, wCsr, dwNMarks, dwTMarks);
504 return FALSE;
507 /***********************************************************************
508 * WTMgrCsrPressureBtnMarksEx (WINTAB.201)
510 BOOL16 WINAPI WTMgrCsrPressureBtnMarksEx16(HMGR16 hMgr, UINT16 wCsr,
511 UINT16 *lpNMarks, UINT16 *lpTMarks)
513 FIXME("(0x%04hx, %hu, %p, %p): stub\n", hMgr, wCsr, lpNMarks, lpTMarks);
515 return FALSE;
518 /***********************************************************************
519 * WTMgrCsrPressureResponse (WINTAB.184)
521 BOOL16 WINAPI WTMgrCsrPressureResponse16(HMGR16 hMgr, UINT16 wCsr,
522 UINT16 *lpNResp, UINT16 *lpTResp)
524 FIXME("(0x%04hx, %hu, %p, %p): stub\n", hMgr, wCsr, lpNResp, lpTResp);
526 return FALSE;
529 /***********************************************************************
530 * WTMgrCsrExt (WINTAB.185)
532 BOOL16 WINAPI WTMgrCsrExt16(HMGR16 hMgr, UINT16 wCsr, UINT16 wExt, LPVOID lpData)
534 FIXME("(0x%04hx, %hu, %hu, %p): stub\n", hMgr, wCsr, wExt, lpData);
536 return FALSE;