1 /* -------------------------------- wintab.h -------------------------------- */
2 /* Combined 16 & 32-bit version. */
4 /*------------------------------------------------------------------------------
5 The text and information contained in this file may be freely used,
6 copied, or distributed without compensation or licensing restrictions.
8 This file is copyright 1991-1998 by LCS/Telegraphics.
9 ------------------------------------------------------------------------------*/
11 #ifndef _INC_WINTAB /* prevent multiple includes */
16 #endif /* __cplusplus */
18 /* -------------------------------------------------------------------------- */
22 #define WT_DEFBASE 0x7FF0
23 #define WT_MAXOFFSET 0xF
25 #define _WT_PACKET(b) ((b)+0)
26 #define _WT_CTXOPEN(b) ((b)+1)
27 #define _WT_CTXCLOSE(b) ((b)+2)
28 #define _WT_CTXUPDATE(b) ((b)+3)
29 #define _WT_CTXOVERLAP(b) ((b)+4)
30 #define _WT_PROXIMITY(b) ((b)+5)
31 #define _WT_INFOCHANGE(b) ((b)+6)
32 #define _WT_CSRCHANGE(b) ((b)+7) /* 1.1 */
33 #define _WT_MAX(b) ((b)+WT_MAXOFFSET)
35 #define WT_PACKET _WT_PACKET(WT_DEFBASE)
36 #define WT_CTXOPEN _WT_CTXOPEN(WT_DEFBASE)
37 #define WT_CTXCLOSE _WT_CTXCLOSE(WT_DEFBASE)
38 #define WT_CTXUPDATE _WT_CTXUPDATE(WT_DEFBASE)
39 #define WT_CTXOVERLAP _WT_CTXOVERLAP(WT_DEFBASE)
40 #define WT_PROXIMITY _WT_PROXIMITY(WT_DEFBASE)
41 #define WT_INFOCHANGE _WT_INFOCHANGE(WT_DEFBASE)
42 #define WT_CSRCHANGE _WT_CSRCHANGE(WT_DEFBASE) /* 1.1 */
43 #define WT_MAX _WT_MAX(WT_DEFBASE)
47 /* -------------------------------------------------------------------------- */
48 /* -------------------------------------------------------------------------- */
51 /* -------------------------------------------------------------------------- */
52 /* COMMON DATA DEFS */
54 DECLARE_HANDLE(HMGR); /* manager handle */
55 DECLARE_HANDLE(HCTX); /* context handle */
56 DECLARE_HANDLE(HWTHOOK); /* hook handle */
58 typedef DWORD WTPKT; /* packet mask */
64 #define PK_CONTEXT 0x0001 /* reporting context */
65 #define PK_STATUS 0x0002 /* status bits */
66 #define PK_TIME 0x0004 /* time stamp */
67 #define PK_CHANGED 0x0008 /* change bit vector */
68 #define PK_SERIAL_NUMBER 0x0010 /* packet serial number */
69 #define PK_CURSOR 0x0020 /* reporting cursor */
70 #define PK_BUTTONS 0x0040 /* button information */
71 #define PK_X 0x0080 /* x axis */
72 #define PK_Y 0x0100 /* y axis */
73 #define PK_Z 0x0200 /* z axis */
74 #define PK_NORMAL_PRESSURE 0x0400 /* normal or tip pressure */
75 #define PK_TANGENT_PRESSURE 0x0800 /* tangential or barrel pressure */
76 #define PK_ORIENTATION 0x1000 /* orientation info: tilts */
77 #define PK_ROTATION 0x2000 /* rotation info; 1.1 */
81 typedef DWORD FIX32; /* fixed-point arithmetic type */
84 #define INT(x) HIWORD(x)
85 #define FRAC(x) LOWORD(x)
87 #define CASTFIX32(x) ((FIX32)((x)*65536L))
89 #define ROUND(x) (INT(x) + (FRAC(x) > (WORD)0x8000))
91 #define FIX_MUL(c, a, b) \
92 (c = (((DWORD)FRAC(a) * FRAC(b)) >> 16) + \
93 (DWORD)INT(a) * FRAC(b) + \
94 (DWORD)INT(b) * FRAC(a) + \
95 ((DWORD)INT(a) * INT(b) << 16))
98 #define FIX_DIV_SC static
103 #define FIX_DIV(c, a, b) \
105 FIX_DIV_SC DWORD temp, rem, btemp; \
107 /* fraction done bytewise */ \
108 temp = ((a / b) << 16); \
111 if (INT(btemp) < 256) { \
117 temp += ((rem / btemp) << 8); \
120 temp += rem / btemp; \
125 /* -------------------------------------------------------------------------- */
132 typedef struct tagAXIS {
137 } AXIS, *PAXIS, NEAR *NPAXIS, FAR *LPAXIS;
139 /* unit specifiers */
142 #define TU_CENTIMETERS 2
147 #ifndef NOWTSYSBUTTONS
149 /* system button assignment values */
150 #define SBN_NONE 0x00
151 #define SBN_LCLICK 0x01
152 #define SBN_LDBLCLICK 0x02
153 #define SBN_LDRAG 0x03
154 #define SBN_RCLICK 0x04
155 #define SBN_RDBLCLICK 0x05
156 #define SBN_RDRAG 0x06
157 #define SBN_MCLICK 0x07
158 #define SBN_MDBLCLICK 0x08
159 #define SBN_MDRAG 0x09
160 /* for Pen Windows */
161 #define SBN_PTCLICK 0x10
162 #define SBN_PTDBLCLICK 0x20
163 #define SBN_PTDRAG 0x30
164 #define SBN_PNCLICK 0x40
165 #define SBN_PNDBLCLICK 0x50
166 #define SBN_PNDRAG 0x60
167 #define SBN_P1CLICK 0x70
168 #define SBN_P1DBLCLICK 0x80
169 #define SBN_P1DRAG 0x90
170 #define SBN_P2CLICK 0xA0
171 #define SBN_P2DBLCLICK 0xB0
172 #define SBN_P2DRAG 0xC0
173 #define SBN_P3CLICK 0xD0
174 #define SBN_P3DBLCLICK 0xE0
175 #define SBN_P3DRAG 0xF0
179 #ifndef NOWTCAPABILITIES
181 /* hardware capabilities */
182 #define HWC_INTEGRATED 0x0001
183 #define HWC_TOUCH 0x0002
184 #define HWC_HARDPROX 0x0004
185 #define HWC_PHYSID_CURSORS 0x0008 /* 1.1 */
192 /* cursor capabilities */
193 #define CRC_MULTIMODE 0x0001 /* 1.1 */
194 #define CRC_AGGREGATE 0x0002 /* 1.1 */
195 #define CRC_INVERT 0x0004 /* 1.1 */
199 /* info categories */
200 #define WTI_INTERFACE 1
201 #define IFC_WINTABID 1
202 #define IFC_SPECVERSION 2
203 #define IFC_IMPLVERSION 3
204 #define IFC_NDEVICES 4
205 #define IFC_NCURSORS 5
206 #define IFC_NCONTEXTS 6
207 #define IFC_CTXOPTIONS 7
208 #define IFC_CTXSAVESIZE 8
209 #define IFC_NEXTENSIONS 9
210 #define IFC_NMANAGERS 10
219 #define STA_CONTEXTS 1
220 #define STA_SYSCTXS 2
221 #define STA_PKTRATE 3
222 #define STA_PKTDATA 4
223 #define STA_MANAGERS 5
225 #define STA_BUTTONUSE 7
226 #define STA_SYSBTNUSE 8
231 #ifndef NOWTDEFCONTEXT
233 #define WTI_DEFCONTEXT 3
234 #define WTI_DEFSYSCTX 4
235 #define WTI_DDCTXS 400 /* 1.1 */
236 #define WTI_DSCTXS 500 /* 1.1 */
238 #define CTX_OPTIONS 2
241 #define CTX_MSGBASE 5
243 #define CTX_PKTRATE 7
244 #define CTX_PKTDATA 8
245 #define CTX_PKTMODE 9
246 #define CTX_MOVEMASK 10
247 #define CTX_BTNDNMASK 11
248 #define CTX_BTNUPMASK 12
249 #define CTX_INORGX 13
250 #define CTX_INORGY 14
251 #define CTX_INORGZ 15
252 #define CTX_INEXTX 16
253 #define CTX_INEXTY 17
254 #define CTX_INEXTZ 18
255 #define CTX_OUTORGX 19
256 #define CTX_OUTORGY 20
257 #define CTX_OUTORGZ 21
258 #define CTX_OUTEXTX 22
259 #define CTX_OUTEXTY 23
260 #define CTX_OUTEXTZ 24
264 #define CTX_SYSMODE 28
265 #define CTX_SYSORGX 29
266 #define CTX_SYSORGY 30
267 #define CTX_SYSEXTX 31
268 #define CTX_SYSEXTY 32
269 #define CTX_SYSSENSX 33
270 #define CTX_SYSSENSY 34
277 #define WTI_DEVICES 100
279 #define DVC_HARDWARE 2
280 #define DVC_NCSRTYPES 3
281 #define DVC_FIRSTCSR 4
282 #define DVC_PKTRATE 5
283 #define DVC_PKTDATA 6
284 #define DVC_PKTMODE 7
285 #define DVC_CSRDATA 8
286 #define DVC_XMARGIN 9
287 #define DVC_YMARGIN 10
288 #define DVC_ZMARGIN 11
292 #define DVC_NPRESSURE 15
293 #define DVC_TPRESSURE 16
294 #define DVC_ORIENTATION 17
295 #define DVC_ROTATION 18 /* 1.1 */
296 #define DVC_PNPID 19 /* 1.1 */
303 #define WTI_CURSORS 200
306 #define CSR_PKTDATA 3
307 #define CSR_BUTTONS 4
308 #define CSR_BUTTONBITS 5
309 #define CSR_BTNNAMES 6
310 #define CSR_BUTTONMAP 7
311 #define CSR_SYSBTNMAP 8
312 #define CSR_NPBUTTON 9
313 #define CSR_NPBTNMARKS 10
314 #define CSR_NPRESPONSE 11
315 #define CSR_TPBUTTON 12
316 #define CSR_TPBTNMARKS 13
317 #define CSR_TPRESPONSE 14
318 #define CSR_PHYSID 15 /* 1.1 */
319 #define CSR_MODE 16 /* 1.1 */
320 #define CSR_MINPKTDATA 17 /* 1.1 */
321 #define CSR_MINBUTTONS 18 /* 1.1 */
322 #define CSR_CAPABILITIES 19 /* 1.1 */
327 #ifndef NOWTEXTENSIONS
329 #define WTI_EXTENSIONS 300
335 #define EXT_DEFAULT 6
336 #define EXT_DEFCONTEXT 7
337 #define EXT_DEFSYSCTX 8
338 #define EXT_CURSORS 9
339 #define EXT_MAX 109 /* Allow 100 cursors */
345 /* -------------------------------------------------------------------------- */
346 /* CONTEXT DATA DEFS */
349 #define LC_NAMELEN 40
351 typedef struct tagLOGCONTEXTA {
352 char lcName[LCNAMELEN];
386 } LOGCONTEXTA, *PLOGCONTEXTA, NEAR *NPLOGCONTEXTA, FAR *LPLOGCONTEXTA;
387 typedef struct tagLOGCONTEXTW {
388 WCHAR lcName[LCNAMELEN];
422 } LOGCONTEXTW, *PLOGCONTEXTW, NEAR *NPLOGCONTEXTW, FAR *LPLOGCONTEXTW;
424 typedef LOGCONTEXTW LOGCONTEXT;
425 typedef PLOGCONTEXTW PLOGCONTEXT;
426 typedef NPLOGCONTEXTW NPLOGCONTEXT;
427 typedef LPLOGCONTEXTW LPLOGCONTEXT;
429 typedef LOGCONTEXTA LOGCONTEXT;
430 typedef PLOGCONTEXTA PLOGCONTEXT;
431 typedef NPLOGCONTEXTA NPLOGCONTEXT;
432 typedef LPLOGCONTEXTA LPLOGCONTEXT;
435 typedef struct tagLOGCONTEXT {
436 char lcName[LCNAMELEN];
470 } LOGCONTEXT, *PLOGCONTEXT, NEAR *NPLOGCONTEXT, FAR *LPLOGCONTEXT;
473 /* context option values */
474 #define CXO_SYSTEM 0x0001
475 #define CXO_PEN 0x0002
476 #define CXO_MESSAGES 0x0004
477 #define CXO_MARGIN 0x8000
478 #define CXO_MGNINSIDE 0x4000
479 #define CXO_CSRMESSAGES 0x0008 /* 1.1 */
481 /* context status values */
482 #define CXS_DISABLED 0x0001
483 #define CXS_OBSCURED 0x0002
484 #define CXS_ONTOP 0x0004
486 /* context lock values */
487 #define CXL_INSIZE 0x0001
488 #define CXL_INASPECT 0x0002
489 #define CXL_SENSITIVITY 0x0004
490 #define CXL_MARGIN 0x0008
491 #define CXL_SYSOUT 0x0010
493 /* -------------------------------------------------------------------------- */
494 /* EVENT DATA DEFS */
496 /* For packet structure definition, see pktdef.h */
498 /* packet status values */
499 #define TPS_PROXIMITY 0x0001
500 #define TPS_QUEUE_ERR 0x0002
501 #define TPS_MARGIN 0x0004
502 #define TPS_GRAB 0x0008
503 #define TPS_INVERT 0x0010 /* 1.1 */
505 typedef struct tagORIENTATION {
509 } ORIENTATION, *PORIENTATION, NEAR *NPORIENTATION, FAR *LPORIENTATION;
511 typedef struct tagROTATION { /* 1.1 */
515 } ROTATION, *PROTATION, NEAR *NPROTATION, FAR *LPROTATION;
516 // grandfather in obsolete member names.
517 #define rotPitch roPitch
518 #define rotRoll roRoll
521 /* relative buttons */
526 /* -------------------------------------------------------------------------- */
527 /* DEVICE CONFIG CONSTANTS */
532 #define WTDC_CANCEL 1
534 #define WTDC_RESTART 3
538 /* -------------------------------------------------------------------------- */
543 #define WTH_PLAYBACK 1
546 #define WTHC_GETLPLPFN (-3)
547 #define WTHC_LPLPFNNEXT (-2)
548 #define WTHC_LPFNNEXT (-1)
549 #define WTHC_ACTION 0
550 #define WTHC_GETNEXT 1
555 /* -------------------------------------------------------------------------- */
556 /* PREFERENCE FUNCTION CONSTANTS */
560 #define WTP_LPDEFAULT ((LPVOID)-1L)
561 #define WTP_DWDEFAULT ((DWORD)-1L)
565 /* -------------------------------------------------------------------------- */
566 /* EXTENSION TAGS AND CONSTANTS */
568 #ifndef NOWTEXTENSIONS
570 /* constants for use with pktdef.h */
571 #define PKEXT_ABSOLUTE 1
572 #define PKEXT_RELATIVE 2
574 /* Extension tags. */
575 #define WTX_OBT 0 /* Out of bounds tracking */
576 #define WTX_FKEYS 1 /* Function keys */
577 #define WTX_TILT 2 /* Raw Cartesian tilt; 1.1 */
578 #define WTX_CSRMASK 3 /* select input by cursor type; 1.1 */
579 #define WTX_XBTNMASK 4 /* Extended button mask; 1.1 */
581 typedef struct tagXBTNMASK {
586 typedef struct tagTILT { /* 1.1 */
593 /* -------------------------------------------------------------------------- */
594 /* -------------------------------------------------------------------------- */
599 #define API FAR PASCAL
605 #ifndef NOWTCALLBACKS
608 #define CALLBACK FAR PASCAL
611 #ifndef NOWTMANAGERFXNS
612 /* callback function types */
613 typedef BOOL (WINAPI * WTENUMPROC)(HCTX, LPARAM); /* changed CALLBACK->WINAPI, 1.1 */
614 typedef BOOL (WINAPI * WTCONFIGPROC)(HCTX, HWND);
615 typedef LRESULT (WINAPI * WTHOOKPROC)(int, WPARAM, LPARAM);
616 typedef WTHOOKPROC FAR *LPWTHOOKPROC;
622 #ifndef NOWTFUNCTIONS
624 #ifndef NOWTBASICFXNS
625 /* BASIC FUNCTIONS */
627 UINT API WTInfoA(UINT, UINT, LPVOID);
628 #define ORD_WTInfoA 20
629 UINT API WTInfoW(UINT, UINT, LPVOID);
630 #define ORD_WTInfoW 1020
632 #define WTInfo WTInfoW
633 #define ORD_WTInfo ORD_WTInfoW
635 #define WTInfo WTInfoA
636 #define ORD_WTInfo ORD_WTInfoA
637 #endif /* !UNICODE */
639 UINT API WTInfo(UINT, UINT, LPVOID);
640 #define ORD_WTInfo 20
643 HCTX API WTOpenA(HWND, LPLOGCONTEXTA, BOOL);
644 #define ORD_WTOpenA 21
645 HCTX API WTOpenW(HWND, LPLOGCONTEXTW, BOOL);
646 #define ORD_WTOpenW 1021
648 #define WTOpen WTOpenW
649 #define ORD_WTOpen ORD_WTOpenW
651 #define WTOpen WTOpenA
652 #define ORD_WTOpen ORD_WTOpenA
653 #endif /* !UNICODE */
655 HCTX API WTOpen(HWND, LPLOGCONTEXT, BOOL);
656 #define ORD_WTOpen 21
658 BOOL API WTClose(HCTX);
659 #define ORD_WTClose 22
660 int API WTPacketsGet(HCTX, int, LPVOID);
661 #define ORD_WTPacketsGet 23
662 BOOL API WTPacket(HCTX, UINT, LPVOID);
663 #define ORD_WTPacket 24
666 #ifndef NOWTVISIBILITYFXNS
667 /* VISIBILITY FUNCTIONS */
668 BOOL API WTEnable(HCTX, BOOL);
669 #define ORD_WTEnable 40
670 BOOL API WTOverlap(HCTX, BOOL);
671 #define ORD_WTOverlap 41
674 #ifndef NOWTCTXEDITFXNS
675 /* CONTEXT EDITING FUNCTIONS */
676 BOOL API WTConfig(HCTX, HWND);
677 #define ORD_WTConfig 60
679 BOOL API WTGetA(HCTX, LPLOGCONTEXTA);
680 #define ORD_WTGetA 61
681 BOOL API WTGetW(HCTX, LPLOGCONTEXTW);
682 #define ORD_WTGetW 1061
685 #define ORD_WTGet ORD_WTGetW
688 #define ORD_WTGet ORD_WTGetA
689 #endif /* !UNICODE */
691 BOOL API WTGet(HCTX, LPLOGCONTEXT);
695 BOOL API WTSetA(HCTX, LPLOGCONTEXTA);
696 #define ORD_WTSetA 62
697 BOOL API WTSetW(HCTX, LPLOGCONTEXTW);
698 #define ORD_WTSetW 1062
701 #define ORD_WTSet ORD_WTSetW
704 #define ORD_WTSet ORD_WTSetA
705 #endif /* !UNICODE */
707 BOOL API WTSet(HCTX, LPLOGCONTEXT);
710 BOOL API WTExtGet(HCTX, UINT, LPVOID);
711 #define ORD_WTExtGet 63
712 BOOL API WTExtSet(HCTX, UINT, LPVOID);
713 #define ORD_WTExtSet 64
714 BOOL API WTSave(HCTX, LPVOID);
715 #define ORD_WTSave 65
716 HCTX API WTRestore(HWND, LPVOID, BOOL);
717 #define ORD_WTRestore 66
720 #ifndef NOWTQUEUEFXNS
721 /* ADVANCED PACKET AND QUEUE FUNCTIONS */
722 int API WTPacketsPeek(HCTX, int, LPVOID);
723 #define ORD_WTPacketsPeek 80
724 int API WTDataGet(HCTX, UINT, UINT, int, LPVOID, LPINT);
725 #define ORD_WTDataGet 81
726 int API WTDataPeek(HCTX, UINT, UINT, int, LPVOID, LPINT);
727 #define ORD_WTDataPeek 82
729 /* OBSOLETE IN WIN32! */
730 DWORD API WTQueuePackets(HCTX);
731 #define ORD_WTQueuePackets 83
733 int API WTQueueSizeGet(HCTX);
734 #define ORD_WTQueueSizeGet 84
735 BOOL API WTQueueSizeSet(HCTX, int);
736 #define ORD_WTQueueSizeSet 85
740 /* MANAGER HANDLE FUNCTIONS */
741 HMGR API WTMgrOpen(HWND, UINT);
742 #define ORD_WTMgrOpen 100
743 BOOL API WTMgrClose(HMGR);
744 #define ORD_WTMgrClose 101
747 #ifndef NOWTMGRCTXFXNS
748 /* MANAGER CONTEXT FUNCTIONS */
749 BOOL API WTMgrContextEnum(HMGR, WTENUMPROC, LPARAM);
750 #define ORD_WTMgrContextEnum 120
751 HWND API WTMgrContextOwner(HMGR, HCTX);
752 #define ORD_WTMgrContextOwner 121
753 HCTX API WTMgrDefContext(HMGR, BOOL);
754 #define ORD_WTMgrDefContext 122
755 HCTX API WTMgrDefContextEx(HMGR, UINT, BOOL); /* 1.1 */
756 #define ORD_WTMgrDefContextEx 206
759 #ifndef NOWTMGRCONFIGFXNS
760 /* MANAGER CONFIG BOX FUNCTIONS */
761 UINT API WTMgrDeviceConfig(HMGR, UINT, HWND);
762 #define ORD_WTMgrDeviceConfig 140
764 /* OBSOLETE IN WIN32! */
765 BOOL API WTMgrConfigReplace(HMGR, BOOL, WTCONFIGPROC);
766 #define ORD_WTMgrConfigReplace 141
770 #ifndef NOWTMGRHOOKFXNS
771 /* MANAGER PACKET HOOK FUNCTIONS */
773 /* OBSOLETE IN WIN32! */
774 WTHOOKPROC API WTMgrPacketHook(HMGR, BOOL, int, WTHOOKPROC);
775 #define ORD_WTMgrPacketHook 160
776 LRESULT API WTMgrPacketHookDefProc(int, WPARAM, LPARAM, LPWTHOOKPROC);
777 #define ORD_WTMgrPacketHookDefProc 161
781 #ifndef NOWTMGRPREFFXNS
782 /* MANAGER PREFERENCE DATA FUNCTIONS */
783 BOOL API WTMgrExt(HMGR, UINT, LPVOID);
784 #define ORD_WTMgrExt 180
785 BOOL API WTMgrCsrEnable(HMGR, UINT, BOOL);
786 #define ORD_WTMgrCsrEnable 181
787 BOOL API WTMgrCsrButtonMap(HMGR, UINT, LPBYTE, LPBYTE);
788 #define ORD_WTMgrCsrButtonMap 182
789 BOOL API WTMgrCsrPressureBtnMarks(HMGR, UINT, DWORD, DWORD);
790 #define ORD_WTMgrCsrPressureBtnMarks 183
791 BOOL API WTMgrCsrPressureResponse(HMGR, UINT, UINT FAR *, UINT FAR *);
792 #define ORD_WTMgrCsrPressureResponse 184
793 BOOL API WTMgrCsrExt(HMGR, UINT, UINT, LPVOID);
794 #define ORD_WTMgrCsrExt 185
797 /* Win32 replacements for non-portable functions. */
798 #ifndef NOWTQUEUEFXNS
799 /* ADVANCED PACKET AND QUEUE FUNCTIONS */
800 BOOL API WTQueuePacketsEx(HCTX, UINT FAR *, UINT FAR *);
801 #define ORD_WTQueuePacketsEx 200
804 #ifndef NOWTMGRCONFIGFXNS
805 /* MANAGER CONFIG BOX FUNCTIONS */
807 BOOL API WTMgrConfigReplaceExA(HMGR, BOOL, LPSTR, LPSTR);
808 #define ORD_WTMgrConfigReplaceExA 202
809 BOOL API WTMgrConfigReplaceExW(HMGR, BOOL, LPWSTR, LPSTR);
810 #define ORD_WTMgrConfigReplaceExW 1202
812 #define WTMgrConfigReplaceEx WTMgrConfigReplaceExW
813 #define ORD_WTMgrConfigReplaceEx ORD_WTMgrConfigReplaceExW
815 #define WTMgrConfigReplaceEx WTMgrConfigReplaceExA
816 #define ORD_WTMgrConfigReplaceEx ORD_WTMgrConfigReplaceExA
817 #endif /* !UNICODE */
819 BOOL API WTMgrConfigReplaceEx(HMGR, BOOL, LPSTR, LPSTR);
820 #define ORD_WTMgrConfigReplaceEx 202
824 #ifndef NOWTMGRHOOKFXNS
825 /* MANAGER PACKET HOOK FUNCTIONS */
827 HWTHOOK API WTMgrPacketHookExA(HMGR, int, LPSTR, LPSTR);
828 #define ORD_WTMgrPacketHookExA 203
829 HWTHOOK API WTMgrPacketHookExW(HMGR, int, LPWSTR, LPSTR);
830 #define ORD_WTMgrPacketHookExW 1203
832 #define WTMgrPacketHookEx WTMgrPacketHookExW
833 #define ORD_WTMgrPacketHookEx ORD_WTMgrPacketHookExW
835 #define WTMgrPacketHookEx WTMgrPacketHookExA
836 #define ORD_WTMgrPacketHookEx ORD_WTMgrPacketHookExA
837 #endif /* !UNICODE */
839 HWTHOOK API WTMgrPacketHookEx(HMGR, int, LPSTR, LPSTR);
840 #define ORD_WTMgrPacketHookEx 203
842 BOOL API WTMgrPacketUnhook(HWTHOOK);
843 #define ORD_WTMgrPacketUnhook 204
844 LRESULT API WTMgrPacketHookNext(HWTHOOK, int, WPARAM, LPARAM);
845 #define ORD_WTMgrPacketHookNext 205
848 #ifndef NOWTMGRPREFFXNS
849 /* MANAGER PREFERENCE DATA FUNCTIONS */
850 BOOL API WTMgrCsrPressureBtnMarksEx(HMGR, UINT, UINT FAR *, UINT FAR *);
851 #define ORD_WTMgrCsrPressureBtnMarksEx 201
860 #endif /* __cplusplus */
862 #endif /* #define _INC_WINTAB */