ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/penwin.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 49483 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6 #ifndef _INC_PENWIN
7 #define _INC_PENWIN
8
9 #ifndef NOJAPAN
10 #ifndef JAPAN
11 #define JAPAN
12 #endif
13 #endif
14
15 #include <windows.h>
16
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20
21 #ifndef PENVER
22 #define PENVER 0x0200
23 #endif
24
25 #define NOPENAPPS
26 #define NOPENDICT
27 #define NOPENRC1
28 #define NOPENVIRTEVENT
29 #define NOPENAPIFUN
30
31 #ifndef NOPENAPPS
32 #ifndef RC_INVOKED
33 #include <skbapi.h>
34 #endif
35 #endif
36
37 #ifdef NOPENCTL
38 #define NOPENBEDIT
39 #define NOPENIEDIT
40 #endif
41
42 #ifdef NOPENRES
43 #define NOPENBMP
44 #define NOPENCURS
45 #endif
46
47 #ifndef NOPENALC
48
49 #define ALC_DEFAULT __MSABI_LONG(0x00000000)
50 #define ALC_LCALPHA __MSABI_LONG(0x00000001)
51 #define ALC_UCALPHA __MSABI_LONG(0x00000002)
52 #define ALC_NUMERIC __MSABI_LONG(0x00000004)
53 #define ALC_PUNC __MSABI_LONG(0x00000008)
54 #define ALC_MATH __MSABI_LONG(0x00000010)
55 #define ALC_MONETARY __MSABI_LONG(0x00000020)
56 #define ALC_OTHER __MSABI_LONG(0x00000040)
57 #define ALC_ASCII __MSABI_LONG(0x00000080)
58 #define ALC_WHITE __MSABI_LONG(0x00000100)
59 #define ALC_NONPRINT __MSABI_LONG(0x00000200)
60 #define ALC_DBCS __MSABI_LONG(0x00000400)
61 #define ALC_JIS1 __MSABI_LONG(0x00000800)
62 #define ALC_GESTURE __MSABI_LONG(0x00004000)
63 #define ALC_USEBITMAP __MSABI_LONG(0x00008000)
64 #define ALC_HIRAGANA __MSABI_LONG(0x00010000)
65 #define ALC_KATAKANA __MSABI_LONG(0x00020000)
66 #define ALC_KANJI __MSABI_LONG(0x00040000)
67 #define ALC_GLOBALPRIORITY __MSABI_LONG(0x10000000)
68 #define ALC_OEM __MSABI_LONG(0x0FF80000)
69 #define ALC_RESERVED __MSABI_LONG(0xE0003000)
70 #define ALC_NOPRIORITY __MSABI_LONG(0x00000000)
71
72 #define ALC_ALPHA (ALC_LCALPHA | ALC_UCALPHA)
73 #define ALC_ALPHANUMERIC (ALC_ALPHA | ALC_NUMERIC)
74 #define ALC_SYSMINIMUM (ALC_ALPHANUMERIC | ALC_PUNC | ALC_WHITE | ALC_GESTURE)
75 #define ALC_ALL (ALC_SYSMINIMUM | ALC_MATH | ALC_MONETARY | ALC_OTHER | ALC_NONPRINT)
76 #define ALC_KANJISYSMINIMUM (ALC_SYSMINIMUM | ALC_HIRAGANA | ALC_KATAKANA | ALC_JIS1)
77 #define ALC_KANJIALL (ALC_ALL | ALC_HIRAGANA | ALC_KATAKANA | ALC_KANJI)
78 #endif
79
80 #ifndef NOPENBEDIT
81
82 #define BXS_NONE 0x0000U
83 #define BXS_RECT 0x0001U
84 #define BXS_BOXCROSS 0x0004U
85 #ifdef JAPAN
86 #define BXS_NOWRITING 0x0008U
87 #endif
88 #endif
89
90 #ifndef NOPENBMP
91
92 #define OBM_SKBBTNUP 32767
93 #define OBM_SKBBTNDOWN 32766
94 #define OBM_SKBBTNDISABLED 32765
95
96 #define OBM_ZENBTNUP 32764
97 #define OBM_ZENBTNDOWN 32763
98 #define OBM_ZENBTNDISABLED 32762
99
100 #define OBM_HANBTNUP 32761
101 #define OBM_HANBTNDOWN 32760
102 #define OBM_HANBTNDISABLED 32759
103
104 #define OBM_KKCBTNUP 32758
105 #define OBM_KKCBTNDOWN 32757
106 #define OBM_KKCBTNDISABLED 32756
107
108 #define OBM_SIPBTNUP 32755
109 #define OBM_SIPBTNDOWN 32754
110 #define OBM_SIPBTNDISABLED 32753
111
112 #define OBM_PTYBTNUP 32752
113 #define OBM_PTYBTNDOWN 32751
114 #define OBM_PTYBTNDISABLED 32750
115 #endif
116
117 #ifndef NOPENCURS
118
119 #define IDC_PEN MAKEINTRESOURCE(32631)
120
121 #define IDC_ALTSELECT MAKEINTRESOURCE(32501)
122 #endif
123
124 #ifndef NOPENHRC
125
126 #define SYV_NULL __MSABI_LONG(0x00000000)
127 #define SYV_UNKNOWN __MSABI_LONG(0x00000001)
128 #define SYV_EMPTY __MSABI_LONG(0x00000003)
129 #define SYV_BEGINOR __MSABI_LONG(0x00000010)
130 #define SYV_ENDOR __MSABI_LONG(0x00000011)
131 #define SYV_OR __MSABI_LONG(0x00000012)
132 #define SYV_SOFTNEWLINE __MSABI_LONG(0x00000020)
133 #define SYV_SPACENULL __MSABI_LONG(0x00010000)
134
135 #define SYV_SELECTFIRST __MSABI_LONG(0x0002FFC0)
136 #define SYV_LASSO __MSABI_LONG(0x0002FFC1)
137 #define SYV_SELECTLEFT __MSABI_LONG(0x0002FFC2)
138 #define SYV_SELECTRIGHT __MSABI_LONG(0x0002FFC3)
139 #define SYV_SELECTLAST __MSABI_LONG(0x0002FFCF)
140
141 #define SYV_CLEARCHAR __MSABI_LONG(0x0002FFD2)
142 #define SYV_HELP __MSABI_LONG(0x0002FFD3)
143 #define SYV_KKCONVERT __MSABI_LONG(0x0002FFD4)
144 #define SYV_CLEAR __MSABI_LONG(0x0002FFD5)
145 #define SYV_INSERT __MSABI_LONG(0x0002FFD6)
146 #define SYV_CONTEXT __MSABI_LONG(0x0002FFD7)
147 #define SYV_EXTENDSELECT __MSABI_LONG(0x0002FFD8)
148 #define SYV_UNDO __MSABI_LONG(0x0002FFD9)
149 #define SYV_COPY __MSABI_LONG(0x0002FFDA)
150 #define SYV_CUT __MSABI_LONG(0x0002FFDB)
151 #define SYV_PASTE __MSABI_LONG(0x0002FFDC)
152 #define SYV_CLEARWORD __MSABI_LONG(0x0002FFDD)
153 #define SYV_USER __MSABI_LONG(0x0002FFDE)
154 #define SYV_CORRECT __MSABI_LONG(0x0002FFDF)
155
156 #define SYV_BACKSPACE __MSABI_LONG(0x00020008)
157 #define SYV_TAB __MSABI_LONG(0x00020009)
158 #define SYV_RETURN __MSABI_LONG(0x0002000D)
159 #define SYV_SPACE __MSABI_LONG(0x00020020)
160
161 #define SYV_APPGESTUREMASK __MSABI_LONG(0x00020000)
162 #define SYV_CIRCLEUPA __MSABI_LONG(0x000224B6)
163 #define SYV_CIRCLEUPZ __MSABI_LONG(0x000224CF)
164 #define SYV_CIRCLELOA __MSABI_LONG(0x000224D0)
165 #define SYV_CIRCLELOZ __MSABI_LONG(0x000224E9)
166
167 #define SYV_SHAPELINE __MSABI_LONG(0x00040001)
168 #define SYV_SHAPEELLIPSE __MSABI_LONG(0x00040002)
169 #define SYV_SHAPERECT __MSABI_LONG(0x00040003)
170 #define SYV_SHAPEMIN SYV_SHAPELINE
171 #define SYV_SHAPEMAX SYV_SHAPERECT
172
173 #define SYVHI_SPECIAL 0
174 #define SYVHI_ANSI 1
175 #define SYVHI_GESTURE 2
176 #define SYVHI_KANJI 3
177 #define SYVHI_SHAPE 4
178 #define SYVHI_UNICODE 5
179 #define SYVHI_VKEY 6
180 #endif
181
182 #ifndef NOPENIEDIT
183
184 #define IEM_UNDO 1
185 #define IEM_CUT 2
186 #define IEM_COPY 3
187 #define IEM_PASTE 4
188 #define IEM_CLEAR 5
189 #define IEM_SELECTALL 6
190 #define IEM_ERASE 7
191 #define IEM_PROPERTIES 8
192 #define IEM_LASSO 9
193 #define IEM_RESIZE 10
194
195 #define IEM_USER 100
196
197 #define IES_BORDER 0x0001
198 #define IES_HSCROLL 0x0002
199 #define IES_VSCROLL 0x0004
200 #define IES_OWNERDRAW 0x0008
201 #endif
202
203 #ifndef RC_INVOKED
204
205 #ifndef NOPENDATA
206
207 #define AI_CBSTROKE 0xFFFF
208
209 #define AI_SKIPUPSTROKES 0x0001
210
211 #define CMPD_COMPRESS 0x0001
212 #define CMPD_DECOMPRESS 0x0002
213
214 #define CPDR_BOX 1
215 #define CPDR_LASSO 2
216
217 #define CPD_DEFAULT 0x047F
218 #define CPD_USERBYTE 0x0100
219 #define CPD_USERWORD 0x0200
220 #define CPD_USERDWORD 0x0300
221 #define CPD_TIME 0x0400
222
223 #define DPD_HDCPEN 0x0001
224 #define DPD_DRAWSEL 0x0002
225
226 #define EPDP_REMOVE 0x0001
227
228 #define EPDS_SELECT 1
229 #define EPDS_STROKEINDEX 2
230 #define EPDS_USER 3
231 #define EPDS_PENTIP 4
232 #define EPDS_TIPCOLOR 5
233 #define EPDS_TIPWIDTH 6
234 #define EPDS_TIPNIB 7
235 #define EPDS_INKSET 8
236
237 #define EPDS_EQ 0x0000
238 #define EPDS_LT 0x0010
239 #define EPDS_GT 0x0020
240 #define EPDS_NOT 0x0040
241 #define EPDS_NE 0x0040
242 #define EPDS_GTE 0x0050
243 #define EPDS_LTE 0x0060
244
245 #define EPDS_REMOVE 0x8000
246
247 #define GPA_MAXLEN 1
248 #define GPA_POINTS 2
249 #define GPA_PDTS 3
250 #define GPA_RATE 4
251 #define GPA_RECTBOUND 5
252 #define GPA_RECTBOUNDINK 6
253 #define GPA_SIZE 7
254 #define GPA_STROKES 8
255 #define GPA_TIME 9
256 #define GPA_USER 10
257 #define GPA_VERSION 11
258
259 #define GSA_PENTIP 1
260 #define GSA_PENTIPCLASS 2
261 #define GSA_USER 3
262 #define GSA_USERCLASS 4
263 #define GSA_TIME 5
264 #define GSA_SIZE 6
265 #define GSA_SELECT 7
266 #define GSA_DOWN 8
267 #define GSA_RECTBOUND 9
268
269 #define GSA_PENTIPTABLE 10
270 #define GSA_SIZETABLE 11
271 #define GSA_USERTABLE 12
272
273 #ifndef IX_END
274 #define IX_END 0xFFFF
275 #endif
276
277 #define PENTIP_NIBDEFAULT ((BYTE)0)
278 #define PENTIP_HEIGHTDEFAULT ((BYTE)0)
279 #define PENTIP_OPAQUE ((BYTE)0xFF)
280 #define PENTIP_HILITE ((BYTE)0x80)
281 #define PENTIP_TRANSPARENT ((BYTE)0)
282
283 #define PDR_NOHIT 3
284 #define PDR_HIT 2
285 #define PDR_OK 1
286 #define PDR_CANCEL 0
287
288 #define PDR_ERROR (-1)
289 #define PDR_PNDTERR (-2)
290 #define PDR_VERSIONERR (-3)
291 #define PDR_COMPRESSED (-4)
292 #define PDR_STRKINDEXERR (-5)
293 #define PDR_PNTINDEXERR (-6)
294 #define PDR_MEMERR (-7)
295 #define PDR_INKSETERR (-8)
296 #define PDR_ABORT (-9)
297 #define PDR_NA (-10)
298
299 #define PDR_USERDATAERR (-16)
300 #define PDR_SCALINGERR (-17)
301 #define PDR_TIMESTAMPERR (-18)
302 #define PDR_OEMDATAERR (-19)
303 #define PDR_SCTERR (-20)
304
305 #define PDTS_LOMETRIC 0
306 #define PDTS_HIMETRIC 1
307 #define PDTS_HIENGLISH 2
308 #define PDTS_STANDARDSCALE 2
309 #define PDTS_DISPLAY 3
310 #define PDTS_ARBITRARY 4
311 #define PDTS_SCALEMASK 0x000F
312
313 #define PDTT_DEFAULT 0x0000
314 #define PDTT_PENINFO 0x0100
315 #define PDTT_UPPOINTS 0x0200
316 #define PDTT_OEMDATA 0x0400
317 #define PDTT_COLLINEAR 0x0800
318 #define PDTT_COLINEAR 0x0800
319 #define PDTT_DECOMPRESS 0x4000
320 #define PDTT_COMPRESS 0x8000
321 #define PDTT_ALL 0x0F00
322
323 #define PHW_NONE 0x0000
324 #define PHW_PRESSURE 0x0001
325 #define PHW_HEIGHT 0x0002
326 #define PHW_ANGLEXY 0x0004
327 #define PHW_ANGLEZ 0x0008
328 #define PHW_BARRELROTATION 0x0010
329 #define PHW_OEMSPECIFIC 0x0020
330 #define PHW_PDK 0x0040
331 #define PHW_ALL 0x007F
332
333 #define PDTS_COMPRESS2NDDERIV 0x0010
334 #define PDTS_COMPRESSMETHOD 0x00F0
335 #define PDTS_NOPENINFO 0x0100
336 #define PDTS_NOUPPOINTS 0x0200
337 #define PDTS_NOOEMDATA 0x0400
338 #define PDTS_NOCOLLINEAR 0x0800
339 #define PDTS_NOCOLINEAR 0x0800
340 #define PDTS_NOTICK 0x1000
341 #define PDTS_NOUSER 0x2000
342 #define PDTS_NOEMPTYSTROKES 0x4000
343 #define PDTS_COMPRESSED 0x8000
344
345 #define SSA_PENTIP 1
346 #define SSA_PENTIPCLASS 2
347 #define SSA_USER 3
348 #define SSA_USERCLASS 4
349 #define SSA_TIME 5
350 #define SSA_SELECT 6
351 #define SSA_DOWN 7
352
353 #define SSA_PENTIPTABLE 8
354 #define SSA_USERTABLE 9
355
356 #define TIP_ERASECOLOR 1
357
358 #define TPD_RECALCSIZE 0x0000
359 #define TPD_USER 0x0080
360 #define TPD_TIME 0x0100
361 #define TPD_UPPOINTS 0x0200
362 #define TPD_COLLINEAR 0x0400
363 #define TPD_COLINEAR 0x0400
364 #define TPD_PENINFO 0x0800
365 #define TPD_PHW 0x1000
366 #define TPD_OEMDATA 0x1000
367 #define TPD_EMPTYSTROKES 0x2000
368 #define TPD_EVERYTHING 0x3FFF
369 #endif
370
371 #ifndef NOPENDICT
372
373 #define cbDictPathMax 255
374 #define DIRQ_QUERY 1
375 #define DIRQ_DESCRIPTION 2
376 #define DIRQ_CONFIGURE 3
377 #define DIRQ_OPEN 4
378 #define DIRQ_CLOSE 5
379 #define DIRQ_SETWORDLISTS 6
380 #define DIRQ_STRING 7
381 #define DIRQ_SUGGEST 8
382 #define DIRQ_ADD 9
383 #define DIRQ_DELETE 10
384 #define DIRQ_FLUSH 11
385 #define DIRQ_RCCHANGE 12
386 #define DIRQ_SYMBOLGRAPH 13
387 #define DIRQ_INIT 14
388 #define DIRQ_CLEANUP 15
389 #define DIRQ_COPYRIGHT 16
390 #define DIRQ_USER 4096
391 #endif
392
393 #ifndef NOPENDRIVER
394
395 #define BITPENUP 0x8000
396
397 #define DRV_SetPenDriverEntryPoints DRV_RESERVED+1
398 #define DRV_SetEntryPoints DRV_RESERVED+1
399 #define DRV_RemovePenDriverEntryPoints DRV_RESERVED+2
400 #define DRV_RemoveEntryPoints DRV_RESERVED+2
401 #define DRV_SetPenSamplingRate DRV_RESERVED+3
402 #define DRV_SetPenSamplingDist DRV_RESERVED+4
403 #define DRV_GetName DRV_RESERVED+5
404 #define DRV_GetVersion DRV_RESERVED+6
405 #define DRV_GetPenInfo DRV_RESERVED+7
406 #define DRV_PenPlayStart DRV_RESERVED+8
407 #define DRV_PenPlayBack DRV_RESERVED+9
408 #define DRV_PenPlayStop DRV_RESERVED+10
409 #define DRV_GetCalibration DRV_RESERVED+11
410 #define DRV_SetCalibration DRV_RESERVED+12
411 #define DRV_Reserved1 DRV_RESERVED+13
412 #define DRV_Reserved2 DRV_RESERVED+14
413 #define DRV_Query DRV_RESERVED+15
414 #define DRV_GetPenSamplingRate DRV_RESERVED+16
415 #define DRV_Calibrate DRV_RESERVED+17
416
417 #define PLAY_VERSION_10_DATA 0
418 #define PLAY_VERSION_20_DATA 1
419
420 #define DRV_FAILURE 0x00000000
421 #define DRV_SUCCESS 0x00000001
422 #define DRV_BADPARAM1 0xFFFFFFFF
423 #define DRV_BADPARAM2 0xFFFFFFFE
424 #define DRV_BADSTRUCT 0xFFFFFFFD
425
426 #define PENREG_DEFAULT 0x00000002
427 #define PENREG_WILLHANDLEMOUSE 0x00000001
428
429 #define MAXOEMDATAWORDS 6
430
431 #define PCM_PENUP __MSABI_LONG(0x00000001)
432 #define PCM_RANGE __MSABI_LONG(0x00000002)
433 #define PCM_INVERT __MSABI_LONG(0x00000020)
434 #define PCM_RECTEXCLUDE __MSABI_LONG(0x00002000)
435 #define PCM_RECTBOUND __MSABI_LONG(0x00004000)
436 #define PCM_TIMEOUT __MSABI_LONG(0x00008000)
437
438 #define PCM_RGNBOUND __MSABI_LONG(0x00010000)
439 #define PCM_RGNEXCLUDE __MSABI_LONG(0x00020000)
440 #define PCM_DOPOLLING __MSABI_LONG(0x00040000)
441 #define PCM_TAPNHOLD __MSABI_LONG(0x00080000)
442 #define PCM_ADDDEFAULTS RC_LDEFAULTFLAGS
443
444 #define PDC_INTEGRATED __MSABI_LONG(0x00000001)
445 #define PDC_PROXIMITY __MSABI_LONG(0x00000002)
446 #define PDC_RANGE __MSABI_LONG(0x00000004)
447 #define PDC_INVERT __MSABI_LONG(0x00000008)
448 #define PDC_RELATIVE __MSABI_LONG(0x00000010)
449 #define PDC_BARREL1 __MSABI_LONG(0x00000020)
450 #define PDC_BARREL2 __MSABI_LONG(0x00000040)
451 #define PDC_BARREL3 __MSABI_LONG(0x00000080)
452
453 #define PDK_NULL 0x0000
454 #define PDK_UP 0x0000
455 #define PDK_DOWN 0x0001
456 #define PDK_BARREL1 0x0002
457 #define PDK_BARREL2 0x0004
458 #define PDK_BARREL3 0x0008
459 #define PDK_SWITCHES 0x000f
460 #define PDK_TRANSITION 0x0010
461 #define PDK_UNUSED10 0x0020
462 #define PDK_UNUSED20 0x0040
463 #define PDK_INVERTED 0x0080
464 #define PDK_PENIDMASK 0x0F00
465 #define PDK_UNUSED1000 0x1000
466 #define PDK_INKSTOPPED 0x2000
467 #define PDK_OUTOFRANGE 0x4000
468 #define PDK_DRIVER 0x8000
469
470 #define PDK_TIPMASK 0x0001
471
472 #define PDT_NULL 0
473 #define PDT_PRESSURE 1
474 #define PDT_HEIGHT 2
475 #define PDT_ANGLEXY 3
476 #define PDT_ANGLEZ 4
477 #define PDT_BARRELROTATION 5
478 #define PDT_OEMSPECIFIC 16
479
480 #define PID_CURRENT (UINT)(-1)
481
482 #define REC_OEM (-1024)
483 #define REC_LANGUAGE (-48)
484 #define REC_GUIDE (-47)
485 #define REC_PARAMERROR (-46)
486 #define REC_INVALIDREF (-45)
487 #define REC_RECTEXCLUDE (-44)
488 #define REC_RECTBOUND (-43)
489 #define REC_PCM (-42)
490 #define REC_RESULTMODE (-41)
491 #define REC_HWND (-40)
492 #define REC_ALC (-39)
493 #define REC_ERRORLEVEL (-38)
494 #define REC_CLVERIFY (-37)
495 #define REC_DICT (-36)
496 #define REC_HREC (-35)
497 #define REC_BADEVENTREF (-33)
498 #define REC_NOCOLLECTION (-32)
499 #define REC_DEBUG (-32)
500 #define REC_POINTEREVENT (-31)
501 #define REC_BADHPENDATA (-9)
502 #define REC_OOM (-8)
503 #define REC_NOINPUT (-7)
504 #define REC_NOTABLET (-6)
505 #define REC_BUSY (-5)
506 #define REC_BUFFERTOOSMALL (-4)
507 #define REC_ABORT (-3)
508 #define REC_NA (-2)
509 #define REC_OVERFLOW (-1)
510 #define REC_OK 0
511 #define REC_TERMBOUND 1
512 #define REC_TERMEX 2
513 #define REC_TERMPENUP 3
514 #define REC_TERMRANGE 4
515 #define REC_TERMTIMEOUT 5
516 #define REC_DONE 6
517 #define REC_TERMOEM 512
518 #endif
519
520 #ifndef NOPENHRC
521
522 #define GRH_ALL 0
523 #define GRH_GESTURE 1
524 #define GRH_NONGESTURE 2
525
526 #ifdef JAPAN
527 #define GST_SEL __MSABI_LONG(0x00000001)
528 #define GST_CLIP __MSABI_LONG(0x00000002)
529 #define GST_WHITE __MSABI_LONG(0x00000004)
530 #define GST_KKCONVERT __MSABI_LONG(0x00000008)
531 #define GST_EDIT __MSABI_LONG(0x00000010)
532 #define GST_SYS __MSABI_LONG(0x0000001F)
533 #define GST_CIRCLELO __MSABI_LONG(0x00000100)
534 #define GST_CIRCLEUP __MSABI_LONG(0x00000200)
535 #define GST_CIRCLE __MSABI_LONG(0x00000300)
536 #define GST_ALL __MSABI_LONG(0x0000031F)
537 #else
538 #define GST_SEL __MSABI_LONG(0x00000001)
539 #define GST_CLIP __MSABI_LONG(0x00000002)
540 #define GST_WHITE __MSABI_LONG(0x00000004)
541 #define GST_EDIT __MSABI_LONG(0x00000010)
542 #define GST_SYS __MSABI_LONG(0x00000017)
543 #define GST_CIRCLELO __MSABI_LONG(0x00000100)
544 #define GST_CIRCLEUP __MSABI_LONG(0x00000200)
545 #define GST_CIRCLE __MSABI_LONG(0x00000300)
546 #define GST_ALL __MSABI_LONG(0x00000317)
547 #endif
548
549 #define HRCR_NORESULTS 4
550 #define HRCR_COMPLETE 3
551 #define HRCR_GESTURE 2
552 #define HRCR_OK 1
553 #define HRCR_INCOMPLETE 0
554 #define HRCR_ERROR (-1)
555 #define HRCR_MEMERR (-2)
556 #define HRCR_INVALIDGUIDE (-3)
557 #define HRCR_INVALIDPNDT (-4)
558 #define HRCR_UNSUPPORTED (-5)
559 #define HRCR_CONFLICT (-6)
560 #define HRCR_HOOKED (-8)
561
562 #define HWL_SYSTEM ((HWL)1)
563
564 #define ISR_ERROR (-1)
565 #define ISR_BADINKSET (-2)
566 #define ISR_BADINDEX (-3)
567
568 #ifndef IX_END
569 #define IX_END 0xFFFF
570 #endif
571
572 #define MAXHOTSPOT 8
573
574 #define PH_MAX __MSABI_LONG(0xFFFFFFFF)
575 #define PH_DEFAULT __MSABI_LONG(0xFFFFFFFE)
576 #define PH_MIN __MSABI_LONG(0xFFFFFFFD)
577
578 #define RHH_STD 0
579 #define RHH_BOX 1
580
581 #define SCH_NONE 0
582 #define SCH_ADVISE 1
583 #define SCH_FORCE 2
584
585 #define SCIM_INSERT 0
586 #define SCIM_OVERWRITE 1
587
588 #define SRH_HOOKALL (HREC)1
589
590 #define SSH_RD 1
591 #define SSH_RU 2
592 #define SSH_LD 3
593 #define SSH_LU 4
594 #define SSH_DL 5
595 #define SSH_DR 6
596 #define SSH_UL 7
597 #define SSH_UR 8
598
599 #define SIH_ALLANSICHAR 1
600
601 #define TH_QUERY 0
602 #define TH_FORCE 1
603 #define TH_SUGGEST 2
604
605 #define TRAIN_NONE 0x0000
606 #define TRAIN_DEFAULT 0x0001
607 #define TRAIN_CUSTOM 0x0002
608 #define TRAIN_BOTH (TRAIN_DEFAULT | TRAIN_CUSTOM)
609
610 #define TRAIN_SAVE 0
611 #define TRAIN_REVERT 1
612 #define TRAIN_RESET 2
613
614 #define WCR_RECOGNAME 0
615 #define WCR_QUERY 1
616 #define WCR_CONFIGDIALOG 2
617 #define WCR_DEFAULT 3
618 #define WCR_RCCHANGE 4
619 #define WCR_VERSION 5
620 #define WCR_TRAIN 6
621 #define WCR_TRAINSAVE 7
622 #define WCR_TRAINMAX 8
623 #define WCR_TRAINDIRTY 9
624 #define WCR_TRAINCUSTOM 10
625 #define WCR_QUERYLANGUAGE 11
626 #define WCR_USERCHANGE 12
627
628 #define WCR_PWVERSION 13
629 #define WCR_GETALCPRIORITY 14
630 #define WCR_SETALCPRIORITY 15
631 #define WCR_GETANSISTATE 16
632 #define WCR_SETANSISTATE 17
633 #define WCR_GETHAND 18
634 #define WCR_SETHAND 19
635 #define WCR_GETDIRECTION 20
636 #define WCR_SETDIRECTION 21
637 #define WCR_INITRECOGNIZER 22
638 #define WCR_CLOSERECOGNIZER 23
639
640 #define WCR_PRIVATE 1024
641
642 #define CRUC_NOTIFY 0
643 #define CRUC_REMOVE 1
644
645 #define WLT_STRING 0
646 #define WLT_STRINGTABLE 1
647 #define WLT_EMPTY 2
648 #define WLT_WORDLIST 3
649 #endif
650
651 #ifndef NOPENIEDIT
652
653 #define IEB_DEFAULT 0
654 #define IEB_BRUSH 1
655 #define IEB_BIT_UL 2
656 #define IEB_BIT_CENTER 3
657 #define IEB_BIT_TILE 4
658 #define IEB_BIT_STRETCH 5
659 #define IEB_OWNERDRAW 6
660
661 #define IEDO_NONE 0x0000
662 #define IEDO_FAST 0x0001
663 #define IEDO_SAVEUPSTROKES 0x0002
664 #define IEDO_RESERVED 0xFFFC
665
666 #define IEI_MOVE 0x0001
667 #define IEI_RESIZE 0x0002
668 #define IEI_CROP 0x0004
669 #define IEI_DISCARD 0x0008
670 #define IEI_RESERVED 0xFFF0
671
672 #define IEGI_ALL 0x0000
673 #define IEGI_SELECTION 0x0001
674
675 #define IEMODE_READY 0
676 #define IEMODE_ERASE 1
677 #define IEMODE_LASSO 2
678
679 #define IEN_NULL 0x0000
680 #define IEN_PDEVENT 0x0001
681 #define IEN_PAINT 0x0002
682 #define IEN_FOCUS 0x0004
683 #define IEN_SCROLL 0x0008
684 #define IEN_EDIT 0x0010
685 #define IEN_PROPERTIES 0x0020
686 #define IEN_RESERVED 0xFF80
687
688 #define IER_OK 0
689 #define IER_NO 0
690 #define IER_YES 1
691 #define IER_ERROR (-1)
692 #define IER_PARAMERR (-2)
693 #define IER_OWNERDRAW (-3)
694 #define IER_SECURITY (-4)
695 #define IER_SELECTION (-5)
696 #define IER_SCALE (-6)
697 #define IER_MEMERR (-7)
698 #define IER_NOCOMMAND (-8)
699 #define IER_NOGESTURE (-9)
700 #define IER_NOPDEVENT (-10)
701 #define IER_NOTINPAINT (-11)
702 #define IER_PENDATA (-12)
703
704 #define IEREC_NONE 0x0000
705 #define IEREC_GESTURE 0x0001
706 #define IEREC_ALL (IEREC_GESTURE)
707 #define IEREC_RESERVED 0xFFFE
708
709 #define IESEC_NOCOPY 0x0001
710 #define IESEC_NOCUT 0x0002
711 #define IESEC_NOPASTE 0x0004
712 #define IESEC_NOUNDO 0x0008
713 #define IESEC_NOINK 0x0010
714 #define IESEC_NOERASE 0x0020
715 #define IESEC_NOGET 0x0040
716 #define IESEC_NOSET 0x0080
717 #define IESEC_RESERVED 0xFF00
718
719 #define IESF_ALL 0x0001
720 #define IESF_SELECTION 0x0002
721 #define IESF_STROKE 0x0004
722
723 #define IESF_TIPCOLOR 0x0008
724 #define IESF_TIPWIDTH 0x0010
725 #define IESF_PENTIP (IESF_TIPCOLOR|IESF_TIPWIDTH)
726
727 #define IESI_REPLACE 0x0000
728 #define IESI_APPEND 0x0001
729
730 #define IN_PDEVENT ((IEN_PDEVENT<<8)|0)
731 #define IN_ERASEBKGND ((IEN_NULL<<8)|1)
732 #define IN_PREPAINT ((IEN_PAINT<<8)|2)
733 #define IN_PAINT ((IEN_NULL<<8)|3)
734 #define IN_POSTPAINT ((IEN_PAINT<<8)|4)
735 #define IN_MODECHANGED ((IEN_EDIT<<8)|5)
736 #define IN_CHANGE ((IEN_EDIT<<8)|6)
737 #define IN_UPDATE ((IEN_EDIT<<8)|7)
738 #define IN_SETFOCUS ((IEN_FOCUS<<8)|8)
739 #define IN_KILLFOCUS ((IEN_FOCUS<<8)|9)
740 #define IN_MEMERR ((IEN_NULL<<8)|10)
741 #define IN_HSCROLL ((IEN_SCROLL<<8)|11)
742 #define IN_VSCROLL ((IEN_SCROLL<<8)|12)
743 #define IN_GESTURE ((IEN_EDIT<<8)|13)
744 #define IN_COMMAND ((IEN_EDIT<<8)|14)
745 #define IN_CLOSE ((IEN_NULL<<8)|15)
746 #define IN_PROPERTIES ((IEN_PROPERTIES<<8)|16)
747 #endif
748
749 #ifndef NOPENINKPUT
750
751 #define LRET_DONE __MSABI_LONG(1)
752 #define LRET_ABORT (__MSABI_LONG(-1))
753 #define LRET_HRC (__MSABI_LONG(-2))
754 #define LRET_HPENDATA (__MSABI_LONG(-3))
755 #define LRET_PRIVATE (__MSABI_LONG(-4))
756
757 #define PCMR_OK 0
758 #define PCMR_ALREADYCOLLECTING (-1)
759 #define PCMR_INVALIDCOLLECTION (-2)
760 #define PCMR_EVENTLOCK (-3)
761 #define PCMR_INVALID_PACKETID (-4)
762 #define PCMR_TERMTIMEOUT (-5)
763 #define PCMR_TERMRANGE (-6)
764 #define PCMR_TERMPENUP (-7)
765 #define PCMR_TERMEX (-8)
766 #define PCMR_TERMBOUND (-9)
767 #define PCMR_APPTERMINATED (-10)
768 #define PCMR_TAP (-11)
769 #define PCMR_SELECT (-12)
770 #define PCMR_OVERFLOW (-13)
771 #define PCMR_ERROR (-14)
772 #define PCMR_DISPLAYERR (-15)
773 #define PCMR_TERMINVERT (-16)
774
775 #define PII_INKCLIPRECT 0x0001
776 #define PII_INKSTOPRECT 0x0002
777 #define PII_INKCLIPRGN 0x0004
778 #define PII_INKSTOPRGN 0x0008
779 #define PII_INKPENTIP 0x0010
780 #define PII_SAVEBACKGROUND 0x0020
781 #define PII_CLIPSTOP 0x0040
782
783 #define PIT_RGNBOUND 0x0001
784 #define PIT_RGNEXCLUDE 0x0002
785 #define PIT_TIMEOUT 0x0004
786 #define PIT_TAPNHOLD 0x0008
787 #endif
788
789 #ifndef NOPENMISC
790
791 #define CL_NULL 0
792 #define CL_MINIMUM 1
793 #define CL_MAXIMUM 100
794 #define cwRcReservedMax 8
795 #define ENUM_MINIMUM 1
796 #define ENUM_MAXIMUM 4096
797
798 #define HKP_SETHOOK 0
799 #define HKP_UNHOOK 0xFFFF
800
801 #define HWR_RESULTS 0
802 #define HWR_APPWIDE 1
803
804 #define iSycNull (-1)
805 #define LPDFNULL ((LPDF)NULL)
806 #define MAXDICTIONARIES 16
807 #define wPntAll (UINT)0xFFFF
808 #define cbRcLanguageMax 44
809 #define cbRcUserMax 32
810 #define cbRcrgbfAlcMax 32
811 #define RC_WDEFAULT 0xffff
812 #define RC_LDEFAULT __MSABI_LONG(0xffffffff)
813 #define RC_WDEFAULTFLAGS 0x8000
814 #define RC_LDEFAULTFLAGS __MSABI_LONG(0x80000000)
815
816 #define CWR_REPLACECR 0x0001
817 #define CWR_STRIPCR CWR_REPLACECR
818 #define CWR_STRIPLF 0x0002
819 #define CWR_REPLACETAB 0x0004
820 #define CWR_STRIPTAB CWR_REPLACETAB
821 #define CWR_SINGLELINEEDIT (CWR_REPLACECR|CWR_STRIPLF|CWR_REPLACETAB)
822 #define CWR_INSERT 0x0008
823 #define CWR_TITLE 0x0010
824 #define CWR_SIMPLE 0x0040
825 #define CWR_HEDIT 0x0080
826 #define CWR_KEYBOARD 0x0100
827 #define CWR_BOXES 0x0200
828
829 #define CWRK_DEFAULT 0
830 #define CWRK_BASIC 1
831 #define CWRK_FULL 2
832 #define CWRK_NUMPAD 3
833 #define CWRK_TELPAD 4
834
835 #ifdef JAPAN
836
837 #define CBCAPTIONCWX 256
838 #define CKBCWX 6
839 #define XCWX 20
840 #define YCWX 20
841 #define CXCWX 300
842 #define CYCWX 200
843
844 #define CWX_TOPMOST __MSABI_LONG(0x00000001)
845 #define CWX_NOTOOLTIPS __MSABI_LONG(0x00000002)
846 #define CWX_EPERIOD __MSABI_LONG(0x00000004)
847 #define CWX_ECOMMA __MSABI_LONG(0x00000008)
848 #define CWX_DEFAULT __MSABI_LONG(0x00000000)
849
850 #define CWXA_CONTEXT 0x0001
851 #define CWXA_KBD 0x0002
852 #define CWXA_STATE 0x0004
853 #define CWXA_PTUL 0x0008
854 #define CWXA_SIZE 0x0010
855 #define CWXA_NOUPDATEMRU 0x0020
856
857 #define CWXK_HW 0
858 #define CWXK_FIRST 0x0100
859 #define CWXK_50 0x0100
860 #define CWXK_QWERTY 0x0101
861 #define CWXK_NUM 0x0102
862 #define CWXK_KANJI 0x0103
863 #define CWXK_CODE 0x0104
864 #define CWXK_YOMI 0x0105
865
866 #define CWXKS_DEFAULT 0xffff
867 #define CWXKS_ZEN 0
868 #define CWXKS_HAN 1
869 #define CWXKS_ROMAZEN 2
870 #define CWXKS_ROMAHAN 3
871 #define CWXKS_HIRAZEN 4
872 #define CWXKS_KATAZEN 5
873 #define CWXKS_KATAHAN 6
874
875 #define CWXR_ERROR -1
876 #define CWXR_UNMODIFIED 0
877 #define CWXR_MODIFIED 1
878 #endif
879
880 #ifdef JAPAN
881 #define GPMI_OK __MSABI_LONG(0)
882 #define GPMI_INVALIDPMI __MSABI_LONG(0x8000)
883 #endif
884
885 #define INKWIDTH_MINIMUM 0
886 #define INKWIDTH_MAXIMUM 15
887
888 #define PMI_RCCHANGE 0
889
890 #define PMI_BEDIT 1
891 #define PMI_CXTABLET 3
892 #define PMI_CYTABLET 4
893 #define PMI_PENTIP 6
894 #define PMI_ENABLEFLAGS 7
895 #define PMI_TIMEOUT 8
896 #define PMI_TIMEOUTGEST 9
897 #define PMI_TIMEOUTSEL 10
898 #define PMI_SYSFLAGS 11
899 #define PMI_INDEXFROMRGB 12
900 #define PMI_RGBFROMINDEX 13
901 #define PMI_SYSREC 14
902 #define PMI_TICKREF 15
903
904 #define PMI_SAVE 0x1000
905
906 #ifdef JAPAN
907
908 #define GPR_CURSPEN 1
909 #define GPR_CURSCOPY 2
910 #define GPR_CURSUNKNOWN 3
911 #define GPR_CURSERASE 4
912
913 #define GPR_BMCRMONO 5
914 #define GPR_BMLFMONO 6
915 #define GPR_BMTABMONO 7
916 #define GPR_BMDELETE 8
917 #define GPR_BMLENSBTN 9
918
919 #ifdef JAPAN
920 #define GPR_BMHSPMONO 10
921 #define GPR_BMZSPMONO 11
922 #endif
923 #endif
924
925 #define PWE_AUTOWRITE 0x0001
926 #define PWE_ACTIONHANDLES 0x0002
927 #define PWE_INPUTCURSOR 0x0004
928 #define PWE_LENS 0x0008
929
930 #define PWF_RC1 0x0001
931 #define PWF_PEN 0x0004
932 #define PWF_INKDISPLAY 0x0008
933 #define PWF_RECOGNIZER 0x0010
934 #define PWF_BEDIT 0x0100
935 #define PWF_HEDIT 0x0200
936 #define PWF_IEDIT 0x0400
937 #define PWF_ENHANCED 0x1000
938 #define PWF_FULL PWF_RC1|PWF_PEN|PWF_INKDISPLAY|PWF_RECOGNIZER| PWF_BEDIT|PWF_HEDIT |PWF_IEDIT|PWF_ENHANCED
939
940 #define RPA_DEFAULT 0x0001
941 #define RPA_HEDIT 0x0001
942 #define RPA_KANJIFIXEDBEDIT 0x0002
943 #define RPA_DBCSPRIORITY 0x0004
944 #define RPA_SBCSPRIORITY 0x0008
945
946 #define PMIR_OK __MSABI_LONG(0)
947 #define PMIR_INDEX (__MSABI_LONG(-1))
948 #define PMIR_VALUE (__MSABI_LONG(-2))
949 #define PMIR_INVALIDBOXEDITINFO (__MSABI_LONG(-3))
950 #define PMIR_INIERROR (__MSABI_LONG(-4))
951 #define PMIR_ERROR (__MSABI_LONG(-5))
952 #define PMIR_NA (__MSABI_LONG(-6))
953
954 #ifdef JAPAN
955 #define SPMI_OK __MSABI_LONG(0)
956 #define SPMI_INVALIDBOXEDITINFO __MSABI_LONG(1)
957 #define SPMI_INIERROR __MSABI_LONG(2)
958 #define SPMI_INVALIDPMI __MSABI_LONG(0x8000)
959 #endif
960 #endif
961
962 #ifndef NOPENRC1
963
964 #define GGRC_OK 0
965 #define GGRC_DICTBUFTOOSMALL 1
966 #define GGRC_PARAMERROR 2
967 #define GGRC_NA 3
968
969 #define RCD_DEFAULT 0
970 #define RCD_LR 1
971 #define RCD_RL 2
972 #define RCD_TB 3
973 #define RCD_BT 4
974
975 #define RCIP_ALLANSICHAR 0x0001
976 #define RCIP_MASK 0x0001
977
978 #define RCO_NOPOINTEREVENT __MSABI_LONG(0x00000001)
979 #define RCO_SAVEALLDATA __MSABI_LONG(0x00000002)
980 #define RCO_SAVEHPENDATA __MSABI_LONG(0x00000004)
981 #define RCO_NOFLASHUNKNOWN __MSABI_LONG(0x00000008)
982 #define RCO_TABLETCOORD __MSABI_LONG(0x00000010)
983 #define RCO_NOSPACEBREAK __MSABI_LONG(0x00000020)
984 #define RCO_NOHIDECURSOR __MSABI_LONG(0x00000040)
985 #define RCO_NOHOOK __MSABI_LONG(0x00000080)
986 #define RCO_BOXED __MSABI_LONG(0x00000100)
987 #define RCO_SUGGEST __MSABI_LONG(0x00000200)
988 #define RCO_DISABLEGESMAP __MSABI_LONG(0x00000400)
989 #define RCO_NOFLASHCURSOR __MSABI_LONG(0x00000800)
990 #define RCO_BOXCROSS __MSABI_LONG(0x00001000)
991 #define RCO_COLDRECOG __MSABI_LONG(0x00008000)
992 #define RCO_SAVEBACKGROUND __MSABI_LONG(0x00010000)
993 #define RCO_DODEFAULT __MSABI_LONG(0x00020000)
994
995 #define RCOR_NORMAL 1
996 #define RCOR_RIGHT 2
997 #define RCOR_UPSIDEDOWN 3
998 #define RCOR_LEFT 4
999
1000 #define RCP_LEFTHAND 0x0001
1001 #define RCP_MAPCHAR 0x0004
1002
1003 #define RCRT_DEFAULT 0x0000
1004 #define RCRT_UNIDENTIFIED 0x0001
1005 #define RCRT_GESTURE 0x0002
1006 #define RCRT_NOSYMBOLMATCH 0x0004
1007 #define RCRT_PRIVATE 0x4000
1008 #define RCRT_NORECOG 0x8000
1009 #define RCRT_ALREADYPROCESSED 0x0008
1010 #define RCRT_GESTURETRANSLATED 0x0010
1011 #define RCRT_GESTURETOKEYS 0x0020
1012
1013 #define RRM_STROKE 0
1014 #define RRM_SYMBOL 1
1015 #define RRM_WORD 2
1016 #define RRM_NEWLINE 3
1017 #define RRM_COMPLETE 16
1018
1019 #define SGRC_OK 0x0000
1020 #define SGRC_USER 0x0001
1021 #define SGRC_PARAMERROR 0x0002
1022 #define SGRC_RC 0x0004
1023 #define SGRC_RECOGNIZER 0x0008
1024 #define SGRC_DICTIONARY 0x0010
1025 #define SGRC_INIFILE 0x0020
1026 #define SGRC_NA 0x8000
1027 #endif
1028
1029 #ifndef NOPENTARGET
1030
1031 #define TPT_CLOSEST 0x0001
1032 #define TPT_INTERSECTINK 0x0002
1033 #define TPT_TEXTUAL 0x0004
1034 #define TPT_DEFAULT (TPT_TEXTUAL | TPT_INTERSECTINK | TPT_CLOSEST)
1035 #endif
1036
1037 #ifndef NOPENVIRTEVENT
1038
1039 #define VWM_MOUSEMOVE 0x0001
1040 #define VWM_MOUSELEFTDOWN 0x0002
1041 #define VWM_MOUSELEFTUP 0x0004
1042 #define VWM_MOUSERIGHTDOWN 0x0008
1043 #define VWM_MOUSERIGHTUP 0x0010
1044 #endif
1045 #endif
1046
1047 #ifndef NOPENMSGS
1048
1049 #ifndef NOPENRC1
1050 #define WM_RCRESULT (WM_PENWINFIRST+1)
1051 #define WM_HOOKRCRESULT (WM_PENWINFIRST+2)
1052 #endif
1053
1054 #define WM_PENMISCINFO (WM_PENWINFIRST+3)
1055 #define WM_GLOBALRCCHANGE (WM_PENWINFIRST+3)
1056
1057 #ifndef NOPENAPPS
1058 #define WM_SKB (WM_PENWINFIRST+4)
1059 #endif
1060
1061 #define WM_PENCTL (WM_PENWINFIRST+5)
1062 #define WM_HEDITCTL (WM_PENWINFIRST+5)
1063
1064 #define HE_GETUNDERLINE 7
1065 #define HE_SETUNDERLINE 8
1066 #define HE_GETINKHANDLE 9
1067 #define HE_SETINKMODE 10
1068 #define HE_STOPINKMODE 11
1069 #define HE_DEFAULTFONT 13
1070 #define HE_CHARPOSITION 14
1071 #define HE_CHAROFFSET 15
1072 #define HE_GETBOXLAYOUT 20
1073 #define HE_SETBOXLAYOUT 21
1074 #ifdef JAPAN
1075 #define HE_KKCONVERT 30
1076 #define HE_GETKKCONVERT 31
1077 #define HE_CANCELKKCONVERT 32
1078 #define HE_FIXKKCONVERT 33
1079 #define HE_GETKKSTATUS 34
1080 #define HE_SETCONVERTRANGE 35
1081 #define HE_GETCONVERTRANGE 36
1082 #define HE_PUTCONVERTCHAR 37
1083 #endif
1084 #define HE_ENABLEALTLIST 40
1085 #define HE_SHOWALTLIST 41
1086 #define HE_HIDEALTLIST 42
1087 #ifndef JAPAN
1088 #define HE_GETLENSTYPE 43
1089 #define HE_SETLENSTYPE 44
1090 #endif
1091
1092 #ifdef JAPAN
1093
1094 #define HEKK_DEFAULT 0
1095 #define HEKK_CONVERT 1
1096 #define HEKK_CANDIDATE 2
1097 #define HEKK_DBCSCHAR 3
1098 #define HEKK_SBCSCHAR 4
1099 #define HEKK_HIRAGANA 5
1100 #define HEKK_KATAKANA 6
1101
1102 #define HEKKR_NOCONVERT 0
1103 #define HEKKR_PRECONVERT 1
1104 #define HEKKR_CONVERT 2
1105 #endif
1106
1107 #define HEP_NORECOG 0
1108 #define HEP_RECOG 1
1109 #define HEP_WAITFORTAP 2
1110
1111 #define HN_ENDREC 4
1112 #define HN_DELAYEDRECOGFAIL 5
1113 #define HN_RESULT 20
1114 #ifdef JAPAN
1115 #define HN_ENDKKCONVERT 30
1116 #endif
1117 #define HN_BEGINDIALOG 40
1118
1119 #define HN_ENDDIALOG 41
1120
1121 #ifndef NOPENIEDIT
1122
1123 #define IE_GETMODIFY (EM_GETMODIFY)
1124 #define IE_SETMODIFY (EM_SETMODIFY)
1125 #define IE_CANUNDO (EM_CANUNDO)
1126 #define IE_UNDO (EM_UNDO)
1127 #define IE_EMPTYUNDOBUFFER (EM_EMPTYUNDOBUFFER)
1128
1129 #define IE_MSGFIRST (WM_USER+150)
1130
1131 #define IE_GETINK (IE_MSGFIRST+0)
1132 #define IE_SETINK (IE_MSGFIRST+1)
1133 #define IE_GETPENTIP (IE_MSGFIRST+2)
1134 #define IE_SETPENTIP (IE_MSGFIRST+3)
1135 #define IE_GETERASERTIP (IE_MSGFIRST+4)
1136 #define IE_SETERASERTIP (IE_MSGFIRST+5)
1137 #define IE_GETBKGND (IE_MSGFIRST+6)
1138 #define IE_SETBKGND (IE_MSGFIRST+7)
1139 #define IE_GETGRIDORIGIN (IE_MSGFIRST+8)
1140 #define IE_SETGRIDORIGIN (IE_MSGFIRST+9)
1141 #define IE_GETGRIDPEN (IE_MSGFIRST+10)
1142 #define IE_SETGRIDPEN (IE_MSGFIRST+11)
1143 #define IE_GETGRIDSIZE (IE_MSGFIRST+12)
1144 #define IE_SETGRIDSIZE (IE_MSGFIRST+13)
1145 #define IE_GETMODE (IE_MSGFIRST+14)
1146 #define IE_SETMODE (IE_MSGFIRST+15)
1147 #define IE_GETINKRECT (IE_MSGFIRST+16)
1148
1149 #define IE_GETAPPDATA (IE_MSGFIRST+34)
1150 #define IE_SETAPPDATA (IE_MSGFIRST+35)
1151 #define IE_GETDRAWOPTS (IE_MSGFIRST+36)
1152 #define IE_SETDRAWOPTS (IE_MSGFIRST+37)
1153 #define IE_GETFORMAT (IE_MSGFIRST+38)
1154 #define IE_SETFORMAT (IE_MSGFIRST+39)
1155 #define IE_GETINKINPUT (IE_MSGFIRST+40)
1156 #define IE_SETINKINPUT (IE_MSGFIRST+41)
1157 #define IE_GETNOTIFY (IE_MSGFIRST+42)
1158 #define IE_SETNOTIFY (IE_MSGFIRST+43)
1159 #define IE_GETRECOG (IE_MSGFIRST+44)
1160 #define IE_SETRECOG (IE_MSGFIRST+45)
1161 #define IE_GETSECURITY (IE_MSGFIRST+46)
1162 #define IE_SETSECURITY (IE_MSGFIRST+47)
1163 #define IE_GETSEL (IE_MSGFIRST+48)
1164 #define IE_SETSEL (IE_MSGFIRST+49)
1165 #define IE_DOCOMMAND (IE_MSGFIRST+50)
1166 #define IE_GETCOMMAND (IE_MSGFIRST+51)
1167 #define IE_GETCOUNT (IE_MSGFIRST+52)
1168 #define IE_GETGESTURE (IE_MSGFIRST+53)
1169 #define IE_GETMENU (IE_MSGFIRST+54)
1170 #define IE_GETPAINTDC (IE_MSGFIRST+55)
1171 #define IE_GETPDEVENT (IE_MSGFIRST+56)
1172 #define IE_GETSELCOUNT (IE_MSGFIRST+57)
1173 #define IE_GETSELITEMS (IE_MSGFIRST+58)
1174 #define IE_GETSTYLE (IE_MSGFIRST+59)
1175 #endif
1176
1177 #ifndef NOPENHEDIT
1178
1179 #define CIH_NOGDMSG 0x0001
1180 #define CIH_NOACTIONHANDLE 0x0002
1181 #define CIH_NOEDITTEXT 0x0004
1182 #define CIH_NOFLASHCURSOR 0x0008
1183 #endif
1184
1185 #ifndef NOPENBEDIT
1186
1187 #define HEAL_DEFAULT __MSABI_LONG(-1)
1188
1189 #define BEI_FACESIZE 32
1190 #define BEIF_BOXCROSS 0x0001
1191
1192 #define BESC_DEFAULT 0
1193 #define BESC_ROMANFIXED 1
1194 #define BESC_KANJIFIXED 2
1195 #define BESC_USERDEFINED 3
1196
1197 #define CIB_NOGDMSG 0x0001
1198 #define CIB_NOACTIONHANDLE 0x0002
1199 #define CIB_NOFLASHCURSOR 0x0004
1200 #ifdef JAPAN
1201 #define CIB_NOWRITING 0x0010
1202 #endif
1203
1204 #define BXD_CELLWIDTH 12
1205 #define BXD_CELLHEIGHT 16
1206 #define BXD_BASEHEIGHT 13
1207 #define BXD_BASEHORZ 0
1208 #define BXD_MIDFROMBASE 0
1209 #define BXD_CUSPHEIGHT 2
1210 #define BXD_ENDCUSPHEIGHT 4
1211
1212 #define BXDK_CELLWIDTH 32
1213 #define BXDK_CELLHEIGHT 32
1214 #define BXDK_BASEHEIGHT 28
1215 #define BXDK_BASEHORZ 0
1216 #define BXDK_MIDFROMBASE 0
1217 #define BXDK_CUSPHEIGHT 28
1218 #define BXDK_ENDCUSPHEIGHT 10
1219 #endif
1220
1221 #define WM_PENMISC (WM_PENWINFIRST+6)
1222
1223 #define PMSC_BEDITCHANGE 1
1224 #define PMSC_GETPCMINFO 5
1225 #define PMSC_SETPCMINFO 6
1226 #define PMSC_GETINKINGINFO 7
1227 #define PMSC_SETINKINGINFO 8
1228 #define PMSC_GETHRC 9
1229 #define PMSC_SETHRC 10
1230 #define PMSC_GETSYMBOLCOUNT 11
1231 #define PMSC_GETSYMBOLS 12
1232 #define PMSC_SETSYMBOLS 13
1233 #define PMSC_LOADPW 15
1234 #define PMSC_INKSTOP 16
1235
1236 #define PMSCL_UNLOADED __MSABI_LONG(0)
1237 #define PMSCL_LOADED __MSABI_LONG(1)
1238 #define PMSCL_UNLOADING __MSABI_LONG(2)
1239
1240 #define WM_CTLINIT (WM_PENWINFIRST+7)
1241
1242 #define CTLINIT_HEDIT 1
1243 #define CTLINIT_BEDIT 7
1244 #define CTLINIT_IEDIT 9
1245 #define CTLINIT_MAX 10
1246
1247 #define WM_PENEVENT (WM_PENWINFIRST+8)
1248
1249 #define PE_PENDOWN 1
1250 #define PE_PENUP 2
1251 #define PE_PENMOVE 3
1252 #define PE_TERMINATING 4
1253 #define PE_TERMINATED 5
1254 #define PE_BUFFERWARNING 6
1255 #define PE_BEGININPUT 7
1256 #define PE_SETTARGETS 8
1257 #define PE_BEGINDATA 9
1258 #define PE_MOREDATA 10
1259 #define PE_ENDDATA 11
1260 #define PE_GETPCMINFO 12
1261 #define PE_GETINKINGINFO 13
1262 #define PE_ENDINPUT 14
1263
1264 #define PE_RESULT 15
1265 #endif
1266
1267 #ifndef RC_INVOKED
1268
1269 #ifndef NOPENDRIVER
1270
1271 #define FPenUpX(x) ((WINBOOL)(((x) & BITPENUP)!=0))
1272 #define GetWEventRef() (LOWORD(GetMessageExtraInfo()))
1273 #endif
1274
1275 #ifndef NOPENALC
1276
1277 #define MpAlcB(lprc,i) ((lprc)->rgbfAlc[((i) & 0xff) >> 3])
1278 #define MpIbf(i) ((BYTE)(1 << ((i) & 7)))
1279 #define SetAlcBitAnsi(lprc,i) do {MpAlcB(lprc,i) |= MpIbf(i);} while (0)
1280 #define ResetAlcBitAnsi(lprc,i) do {MpAlcB(lprc,i) &= ~MpIbf(i);} while (0)
1281 #define IsAlcBitAnsi(lprc,i) ((MpAlcB(lprc,i) & MpIbf(i))!=0)
1282 #endif
1283
1284 #ifndef NOPENDATA
1285
1286 #define DrawPenDataFmt(hdc,lprect,hpndt) DrawPenDataEx(hdc,lprect,hpndt,0,IX_END,0,IX_END,NULL,NULL,0)
1287 #endif
1288
1289 #ifndef NOPENHRC
1290
1291 #define dwDiffAT(at1,at2) (1000*((at2).sec - (at1).sec) - (DWORD)(at1).ms + (DWORD)(at2).ms)
1292 #define FLTAbsTime(at1,at2) ((at1).sec < (at2).sec || ((at1).sec==(at2).sec && (at1).ms < (at2).ms))
1293 #define FLTEAbsTime(at1,at2) ((at1).sec < (at2).sec || ((at1).sec==(at2).sec && (at1).ms <= (at2).ms))
1294 #define FEQAbsTime(at1,at2) ((at1).sec==(at2).sec && (at1).ms==(at2).ms)
1295 #define FAbsTimeInInterval(at,lpi) (FLTEAbsTime((lpi)->atBegin,at) && FLTEAbsTime(at,(lpi)->atEnd))
1296 #define FIntervalInInterval(lpiT,lpiS) (FLTEAbsTime((lpiS)->atBegin,(lpiT)->atBegin) && FLTEAbsTime((lpiT)->atEnd,(lpiS)->atEnd))
1297 #define FIntervalXInterval(lpiT,lpiS) (!(FLTAbsTime((lpiT)->atEnd,(lpiS)->atBegin) || FLTAbsTime((lpiS)->atEnd,(lpiT)->atBegin)))
1298 #define dwDurInterval(lpi) dwDiffAT((lpi)->atBegin,(lpi)->atEnd)
1299 #define MakeAbsTime(lpat,sec,ms) do { (lpat)->sec = sec + ((ms) / 1000); (lpat)->ms = (ms) % 1000; } while (0)
1300
1301 #define FIsSpecial(syv) (HIWORD((syv))==SYVHI_SPECIAL)
1302 #define FIsAnsi(syv) (HIWORD((syv))==SYVHI_ANSI)
1303 #define FIsGesture(syv) (HIWORD((syv))==SYVHI_GESTURE)
1304 #define FIsKanji(syv) (HIWORD((syv))==SYVHI_KANJI)
1305 #define FIsShape(syv) (HIWORD((syv))==SYVHI_SHAPE)
1306 #define FIsUniCode(syv) (HIWORD((syv))==SYVHI_UNICODE)
1307 #define FIsVKey(syv) (HIWORD((syv))==SYVHI_VKEY)
1308
1309 #define ChSyvToAnsi(syv) ((BYTE) (LOBYTE(LOWORD((syv)))))
1310 #define WSyvToKanji(syv) ((WORD) (LOWORD((syv))))
1311 #define SyvCharacterToSymbol(c) ((LONG)(unsigned char)(c) | 0x00010000)
1312 #define SyvKanjiToSymbol(c) ((LONG)(UINT)(c) | 0x00030000)
1313
1314 #define FIsSelectGesture(syv) ((syv) >= SYVSELECTFIRST && (syv) <= SYVSELECTLAST)
1315
1316 #define FIsStdGesture(syv) (FIsSelectGesture(syv) || (syv)==SYV_CLEAR || (syv)==SYV_HELP || (syv)==SYV_EXTENDSELECT || (syv)==SYV_UNDO || (syv)==SYV_COPY || (syv)==SYV_CUT || (syv)==SYV_PASTE || (syv)==SYV_CLEARWORD || (syv)==SYV_KKCONVERT || (syv)==SYV_USER || (syv)==SYV_CORRECT)
1317
1318 #define FIsAnsiGesture(syv) ((syv)==SYV_BACKSPACE || (syv)==SYV_TAB || (syv)==SYV_RETURN || (syv)==SYV_SPACE)
1319 #endif
1320
1321 #ifndef NOPENINKPUT
1322 #define SubPenMsgFromWpLp(wp,lp) (LOWORD(wp))
1323 #define EventRefFromWpLp(wp,lp) (HIWORD(wp))
1324 #define TerminationFromWpLp(wp,lp) ((int)HIWORD(wp))
1325 #define HpcmFromWpLp(wp,lp) ((HPCM)(lp))
1326 #endif
1327
1328 #ifndef NOPENTARGET
1329 #define HwndFromHtrg(htrg) ((HWND)(DWORD)(htrg))
1330 #define HtrgFromHwnd(hwnd) ((HTRG)(UINT)(hwnd))
1331 #endif
1332
1333 typedef LONG ALC;
1334 typedef int CL;
1335 typedef UINT HKP;
1336 typedef int REC;
1337 typedef LONG SYV;
1338
1339 #ifndef DECLARE_HANDLE32
1340 #define DECLARE_HANDLE32(name) struct name##__ { int unused; }; typedef const struct name##__ *name
1341 #endif
1342
1343 DECLARE_HANDLE32(HTRG);
1344 DECLARE_HANDLE(HPCM);
1345 DECLARE_HANDLE(HPENDATA);
1346 DECLARE_HANDLE(HREC);
1347
1348 typedef ALC *LPALC;
1349 typedef LPVOID LPOEM;
1350 typedef SYV *LPSYV;
1351 typedef HPENDATA *LPHPENDATA;
1352
1353 typedef int (CALLBACK *ENUMPROC)(LPSYV,int,VOID *);
1354 typedef int (CALLBACK *LPDF)(int,LPVOID,LPVOID,int,DWORD,DWORD);
1355 typedef WINBOOL (CALLBACK *RCYIELDPROC)(VOID);
1356
1357 typedef struct tagABSTIME {
1358 DWORD sec;
1359 UINT ms;
1360 } ABSTIME,*LPABSTIME;
1361
1362 #ifndef NOPENHEDIT
1363 typedef struct tagCTLINITHEDIT {
1364 DWORD cbSize;
1365 HWND hwnd;
1366 int id;
1367 DWORD dwFlags;
1368 DWORD dwReserved;
1369 } CTLINITHEDIT,*LPCTLINITHEDIT;
1370 #endif
1371
1372 #ifndef NOPENBEDIT
1373
1374 typedef struct tagBOXLAYOUT {
1375 int cyCusp;
1376 int cyEndCusp;
1377 UINT style;
1378 DWORD dwReserved1;
1379 DWORD dwReserved2;
1380 DWORD dwReserved3;
1381 } BOXLAYOUT,*LPBOXLAYOUT;
1382
1383 typedef struct tagCTLINITBEDIT {
1384 DWORD cbSize;
1385 HWND hwnd;
1386 int id;
1387 WORD wSizeCategory;
1388 WORD wFlags;
1389 DWORD dwReserved;
1390 } CTLINITBEDIT,*LPCTLINITBEDIT;
1391
1392 typedef struct tagBOXEDITINFO {
1393 int cxBox;
1394 int cyBox;
1395 int cxBase;
1396 int cyBase;
1397 int cyMid;
1398 BOXLAYOUT boxlayout;
1399 UINT wFlags;
1400 BYTE szFaceName[BEI_FACESIZE];
1401 UINT wFontHeight;
1402 UINT rgwReserved[8];
1403 } BOXEDITINFO,*LPBOXEDITINFO;
1404 #endif
1405
1406 #ifndef NOPENCTL
1407
1408 typedef struct tagRECTOFS {
1409 int dLeft;
1410 int dTop;
1411 int dRight;
1412 int dBottom;
1413 } RECTOFS,*LPRECTOFS;
1414 #endif
1415
1416 #ifndef NOPENDATA
1417 typedef struct tagPENDATAHEADER {
1418 UINT wVersion;
1419 UINT cbSizeUsed;
1420 UINT cStrokes;
1421 UINT cPnt;
1422 UINT cPntStrokeMax;
1423 RECT rectBound;
1424 UINT wPndts;
1425 int nInkWidth;
1426 DWORD rgbInk;
1427 } PENDATAHEADER,*LPPENDATAHEADER,*LPPENDATA;
1428
1429 typedef struct tagSTROKEINFO {
1430 UINT cPnt;
1431 UINT cbPnts;
1432 UINT wPdk;
1433 DWORD dwTick;
1434 } STROKEINFO,*LPSTROKEINFO;
1435
1436 typedef struct tagPENTIP {
1437 DWORD cbSize;
1438 BYTE btype;
1439 BYTE bwidth;
1440 BYTE bheight;
1441 BYTE bOpacity;
1442 COLORREF rgb;
1443 DWORD dwFlags;
1444 DWORD dwReserved;
1445 } PENTIP,*LPPENTIP;
1446
1447 typedef WINBOOL (CALLBACK *ANIMATEPROC)(HPENDATA,UINT,UINT,UINT *,LPARAM);
1448
1449 typedef struct tagANIMATEINFO {
1450 DWORD cbSize;
1451 UINT uSpeedPct;
1452 UINT uPeriodCB;
1453 UINT fuFlags;
1454 LPARAM lParam;
1455 DWORD dwReserved;
1456 } ANIMATEINFO,*LPANIMATEINFO;
1457 #endif
1458
1459 #ifndef NOPENDRIVER
1460 typedef struct tagOEMPENINFO {
1461 UINT wPdt;
1462 UINT wValueMax;
1463 UINT wDistinct;
1464 } OEMPENINFO,*LPOEMPENINFO;
1465
1466 typedef struct tagPENPACKET {
1467 UINT wTabletX;
1468 UINT wTabletY;
1469 UINT wPDK;
1470 UINT rgwOemData[MAXOEMDATAWORDS];
1471 } PENPACKET,*LPPENPACKET;
1472
1473 typedef struct tagOEM_PENPACKET {
1474 UINT wTabletX;
1475 UINT wTabletY;
1476 UINT wPDK;
1477 UINT rgwOemData[MAXOEMDATAWORDS];
1478 DWORD dwTime;
1479 } OEM_PENPACKET,*LPOEM_PENPACKET;
1480
1481 typedef struct tagPENINFO {
1482 UINT cxRawWidth;
1483 UINT cyRawHeight;
1484 UINT wDistinctWidth;
1485 UINT wDistinctHeight;
1486 int nSamplingRate;
1487 int nSamplingDist;
1488 LONG lPdc;
1489 int cPens;
1490 int cbOemData;
1491 OEMPENINFO rgoempeninfo[MAXOEMDATAWORDS];
1492 UINT rgwReserved[7];
1493 UINT fuOEM;
1494 } PENINFO,*LPPENINFO;
1495
1496 typedef struct tagCALBSTRUCT {
1497 int wOffsetX;
1498 int wOffsetY;
1499 int wDistinctWidth;
1500 int wDistinctHeight;
1501 } CALBSTRUCT,*LPCALBSTRUCT;
1502
1503 typedef WINBOOL (CALLBACK *LPFNRAWHOOK)(LPPENPACKET);
1504 #endif
1505
1506 #ifndef NOPENHRC
1507 DECLARE_HANDLE32(HRC);
1508 DECLARE_HANDLE32(HRCRESULT);
1509 DECLARE_HANDLE32(HWL);
1510 DECLARE_HANDLE32(HRECHOOK);
1511
1512 typedef HRC *LPHRC;
1513 typedef HRCRESULT *LPHRCRESULT;
1514 typedef HWL *LPHWL;
1515
1516 typedef WINBOOL (CALLBACK *HRCRESULTHOOKPROC)(HREC,HRC,UINT,UINT,UINT,LPVOID);
1517
1518 DECLARE_HANDLE(HINKSET);
1519 typedef HINKSET *LPHINKSET;
1520
1521 typedef struct tagINTERVAL {
1522 ABSTIME atBegin;
1523 ABSTIME atEnd;
1524 } INTERVAL,*LPINTERVAL;
1525
1526 typedef struct tagBOXRESULTS {
1527 UINT indxBox;
1528 HINKSET hinksetBox;
1529 SYV rgSyv[1];
1530 } BOXRESULTS,*LPBOXRESULTS;
1531
1532 typedef struct tagGUIDE {
1533 int xOrigin;
1534 int yOrigin;
1535 int cxBox;
1536 int cyBox;
1537 int cxBase;
1538 int cyBase;
1539 int cHorzBox;
1540 int cVertBox;
1541 int cyMid;
1542 } GUIDE,*LPGUIDE;
1543 #endif
1544
1545 #ifndef NOPENIEDIT
1546 typedef struct tagCTLINITIEDIT {
1547 DWORD cbSize;
1548 HWND hwnd;
1549 int id;
1550 WORD ieb;
1551 WORD iedo;
1552 WORD iei;
1553 WORD ien;
1554 WORD ierec;
1555 WORD ies;
1556 WORD iesec;
1557 WORD pdts;
1558 HPENDATA hpndt;
1559 HGDIOBJ hgdiobj;
1560 HPEN hpenGrid;
1561 POINT ptOrgGrid;
1562 WORD wVGrid;
1563 WORD wHGrid;
1564 DWORD dwApp;
1565 DWORD dwReserved;
1566 } CTLINITIEDIT,*LPCTLINITIEDIT;
1567
1568 typedef struct tagPDEVENT {
1569 DWORD cbSize;
1570 HWND hwnd;
1571 UINT wm;
1572 WPARAM wParam;
1573 LPARAM lParam;
1574 POINT pt;
1575 WINBOOL fPen;
1576 LONG lExInfo;
1577 DWORD dwReserved;
1578 } PDEVENT,*LPPDEVENT;
1579
1580 typedef struct tagSTRKFMT {
1581 DWORD cbSize;
1582 UINT iesf;
1583 UINT iStrk;
1584 PENTIP tip;
1585 DWORD dwUser;
1586 DWORD dwReserved;
1587 } STRKFMT,*LPSTRKFMT;
1588 #endif
1589
1590 #ifndef NOPENINKPUT
1591
1592 typedef struct tagPCMINFO {
1593 DWORD cbSize;
1594 DWORD dwPcm;
1595 RECT rectBound;
1596 RECT rectExclude;
1597 HRGN hrgnBound;
1598 HRGN hrgnExclude;
1599 DWORD dwTimeout;
1600 } PCMINFO,*LPPCMINFO;
1601
1602 typedef struct tagINKINGINFO {
1603 DWORD cbSize;
1604 UINT wFlags;
1605 PENTIP tip;
1606 RECT rectClip;
1607 RECT rectInkStop;
1608 HRGN hrgnClip;
1609 HRGN hrgnInkStop;
1610 } INKINGINFO,*LPINKINGINFO;
1611 #endif
1612
1613 #ifndef NOPENRC1
1614
1615 typedef struct tagSYC {
1616 UINT wStrokeFirst;
1617 UINT wPntFirst;
1618 UINT wStrokeLast;
1619 UINT wPntLast;
1620 WINBOOL fLastSyc;
1621 } SYC,*LPSYC;
1622
1623 typedef struct tagSYE {
1624 SYV syv;
1625 LONG lRecogVal;
1626 CL cl;
1627 int iSyc;
1628 } SYE,*LPSYE;
1629
1630 typedef struct tagSYG {
1631 POINT rgpntHotSpots[MAXHOTSPOT];
1632 int cHotSpot;
1633 int nFirstBox;
1634 LONG lRecogVal;
1635 LPSYE lpsye;
1636 int cSye;
1637 LPSYC lpsyc;
1638 int cSyc;
1639 } SYG,*LPSYG;
1640
1641 typedef struct tagRC {
1642 HREC hrec;
1643 HWND hwnd;
1644 UINT wEventRef;
1645 UINT wRcPreferences;
1646 LONG lRcOptions;
1647 RCYIELDPROC lpfnYield;
1648 BYTE lpUser[cbRcUserMax];
1649 UINT wCountry;
1650 UINT wIntlPreferences;
1651 char lpLanguage[cbRcLanguageMax];
1652 LPDF rglpdf[MAXDICTIONARIES];
1653 UINT wTryDictionary;
1654 CL clErrorLevel;
1655 ALC alc;
1656 ALC alcPriority;
1657 BYTE rgbfAlc[cbRcrgbfAlcMax];
1658 UINT wResultMode;
1659 UINT wTimeOut;
1660 LONG lPcm;
1661 RECT rectBound;
1662 RECT rectExclude;
1663 GUIDE guide;
1664 UINT wRcOrient;
1665 UINT wRcDirect;
1666 int nInkWidth;
1667 COLORREF rgbInk;
1668 DWORD dwAppParam;
1669 DWORD dwDictParam;
1670 DWORD dwRecognizer;
1671 UINT rgwReserved[cwRcReservedMax];
1672 } RC,*LPRC;
1673
1674 typedef struct tagRCRESULT {
1675 SYG syg;
1676 UINT wResultsType;
1677 int cSyv;
1678 LPSYV lpsyv;
1679 HANDLE hSyv;
1680 int nBaseLine;
1681 int nMidLine;
1682 HPENDATA hpendata;
1683 RECT rectBoundInk;
1684 POINT pntEnd;
1685 LPRC lprc;
1686 } RCRESULT,*LPRCRESULT;
1687
1688 typedef int (CALLBACK *LPFUNCRESULTS)(LPRCRESULT,REC);
1689 #endif
1690
1691 #ifndef NOPENTARGET
1692
1693 typedef struct tagTARGET {
1694 DWORD dwFlags;
1695 DWORD idTarget;
1696 HTRG htrgTarget;
1697 RECTL rectBound;
1698 DWORD dwData;
1699 RECTL rectBoundInk;
1700 RECTL rectBoundLastInk;
1701 } TARGET,*LPTARGET;
1702
1703 typedef struct tagTARGINFO {
1704 DWORD cbSize;
1705 DWORD dwFlags;
1706 HTRG htrgOwner;
1707 WORD cTargets;
1708 WORD iTargetLast;
1709 TARGET rgTarget[1];
1710 } TARGINFO,*LPTARGINFO;
1711
1712 typedef struct tagINPPARAMS {
1713 DWORD cbSize;
1714 DWORD dwFlags;
1715 HPENDATA hpndt;
1716 TARGET target;
1717 } INPPARAMS,*LPINPPARAMS;
1718 #endif
1719
1720 #ifdef JAPAN
1721 typedef struct tagCWX {
1722 DWORD cbSize;
1723 WORD wApplyFlags;
1724 HWND hwndText;
1725 HRC hrc;
1726 char szCaption[CBCAPTIONCWX];
1727 DWORD dwEditStyle;
1728 DWORD dwSel;
1729 DWORD dwFlags;
1730 WORD ixkb;
1731 WORD rgState[CKBCWX];
1732 POINT ptUL;
1733 SIZE sizeHW;
1734 } CWX,*LPCWX;
1735 #endif
1736
1737 LRESULT CALLBACK DefPenWindowProc(HWND,UINT,WPARAM,LPARAM);
1738
1739 #ifndef NOPENAPPS
1740 WINBOOL WINAPI ShowKeyboard(HWND,UINT,LPPOINT,LPSKBINFO);
1741 #endif
1742
1743 #ifndef NOPENDATA
1744
1745 #ifndef NOPENAPIFUN
1746 LPPENDATA WINAPI BeginEnumStrokes(HPENDATA);
1747 LPPENDATA WINAPI EndEnumStrokes(HPENDATA);
1748 HPENDATA WINAPI CompactPenData(HPENDATA,UINT);
1749 HPENDATA WINAPI CreatePenData(LPPENINFO,int,UINT,UINT);
1750 VOID WINAPI DrawPenData(HDC,LPRECT,HPENDATA);
1751 WINBOOL WINAPI GetPenDataStroke(LPPENDATA,UINT,LPPOINT *,LPVOID *,LPSTROKEINFO);
1752 #endif
1753 HPENDATA WINAPI AddPointsPenData(HPENDATA,LPPOINT,LPVOID,LPSTROKEINFO);
1754 int WINAPI CompressPenData(HPENDATA,UINT,DWORD);
1755 HPENDATA WINAPI CreatePenDataEx(LPPENINFO,UINT,UINT,UINT);
1756 HRGN WINAPI CreatePenDataRegion(HPENDATA,UINT);
1757 WINBOOL WINAPI DestroyPenData(HPENDATA);
1758 int WINAPI DrawPenDataEx(HDC,LPRECT,HPENDATA,UINT,UINT,UINT,UINT,ANIMATEPROC,LPANIMATEINFO,UINT);
1759 HPENDATA WINAPI DuplicatePenData(HPENDATA,UINT);
1760 int WINAPI ExtractPenDataPoints(HPENDATA,UINT,UINT,UINT,LPPOINT,LPVOID,UINT);
1761 int WINAPI ExtractPenDataStrokes(HPENDATA,UINT,LPARAM,LPHPENDATA,UINT);
1762 int WINAPI GetPenDataAttributes(HPENDATA,LPVOID,UINT);
1763 WINBOOL WINAPI GetPenDataInfo(HPENDATA,LPPENDATAHEADER,LPPENINFO,DWORD);
1764 WINBOOL WINAPI GetPointsFromPenData(HPENDATA,UINT,UINT,UINT,LPPOINT);
1765 int WINAPI GetStrokeAttributes(HPENDATA,UINT,LPVOID,UINT);
1766 int WINAPI GetStrokeTableAttributes(HPENDATA,UINT,LPVOID,UINT);
1767 int WINAPI HitTestPenData(HPENDATA,LPPOINT,UINT,UINT *,UINT *);
1768 int WINAPI InsertPenData(HPENDATA,HPENDATA,UINT);
1769 int WINAPI InsertPenDataPoints(HPENDATA,UINT,UINT,UINT,LPPOINT,LPVOID);
1770 int WINAPI InsertPenDataStroke(HPENDATA,UINT,LPPOINT,LPVOID,LPSTROKEINFO);
1771 WINBOOL WINAPI MetricScalePenData(HPENDATA,UINT);
1772 WINBOOL WINAPI OffsetPenData(HPENDATA,int,int);
1773 LONG WINAPI PenDataFromBuffer(LPHPENDATA,UINT,LPBYTE,LONG,LPDWORD);
1774 LONG WINAPI PenDataToBuffer(HPENDATA,LPBYTE,LONG,LPDWORD);
1775 WINBOOL WINAPI RedisplayPenData(HDC,HPENDATA,LPPOINT,LPPOINT,int,DWORD);
1776 int WINAPI RemovePenDataStrokes(HPENDATA,UINT,UINT);
1777 WINBOOL WINAPI ResizePenData(HPENDATA,LPRECT);
1778 int WINAPI SetStrokeAttributes(HPENDATA,UINT,LPARAM,UINT);
1779 int WINAPI SetStrokeTableAttributes(HPENDATA,UINT,LPARAM,UINT);
1780 int WINAPI TrimPenData(HPENDATA,DWORD,DWORD);
1781 #endif
1782
1783 #ifndef NOPENDICT
1784 WINBOOL WINAPI DictionarySearch(LPRC,LPSYE,int,LPSYV,int);
1785 #endif
1786
1787 #ifndef NOPENDRIVER
1788
1789 #ifndef NOPENAPIFUN
1790 WINBOOL WINAPI EndPenCollection(REC);
1791 REC WINAPI GetPenHwData(LPPOINT,LPVOID,int,UINT,LPSTROKEINFO);
1792 REC WINAPI GetPenHwEventData(UINT,UINT,LPPOINT,LPVOID,int,LPSTROKEINFO);
1793 WINBOOL WINAPI SetPenHook(HKP,LPFNRAWHOOK);
1794 VOID WINAPI UpdatePenInfo(LPPENINFO);
1795 #endif
1796 WINBOOL WINAPI GetPenAsyncState(UINT);
1797 WINBOOL WINAPI IsPenEvent(UINT,LONG);
1798 #endif
1799
1800 #ifndef NOPENHRC
1801 int WINAPI AddPenDataHRC(HRC,HPENDATA);
1802 int WINAPI AddPenInputHRC(HRC,LPPOINT,LPVOID,UINT,LPSTROKEINFO);
1803 int WINAPI AddWordsHWL(HWL,LPSTR,UINT);
1804 int WINAPI ConfigHREC(HREC,UINT,WPARAM,LPARAM);
1805 HRC WINAPI CreateCompatibleHRC(HRC,HREC);
1806 HWL WINAPI CreateHWL(HREC,LPSTR,UINT,DWORD);
1807 HINKSET WINAPI CreateInksetHRCRESULT(HRCRESULT,UINT,UINT);
1808 HPENDATA WINAPI CreatePenDataHRC(HRC);
1809 int WINAPI DestroyHRC(HRC);
1810 int WINAPI DestroyHRCRESULT(HRCRESULT);
1811 int WINAPI DestroyHWL(HWL);
1812 int WINAPI EnableGestureSetHRC(HRC,SYV,WINBOOL);
1813 int WINAPI EnableSystemDictionaryHRC(HRC,WINBOOL);
1814 int WINAPI EndPenInputHRC(HRC);
1815 int WINAPI GetAlphabetHRC(HRC,LPALC,LPBYTE);
1816 int WINAPI GetAlphabetPriorityHRC(HRC,LPALC,LPBYTE);
1817 int WINAPI GetAlternateWordsHRCRESULT(HRCRESULT,UINT,UINT,LPHRCRESULT,UINT);
1818 int WINAPI GetBoxMappingHRCRESULT(HRCRESULT,UINT,UINT,UINT *);
1819 int WINAPI GetBoxResultsHRC(HRC,UINT,UINT,UINT,LPBOXRESULTS,WINBOOL);
1820 int WINAPI GetGuideHRC(HRC,LPGUIDE,UINT *);
1821 int WINAPI GetHotspotsHRCRESULT(HRCRESULT,UINT,LPPOINT,UINT);
1822 HREC WINAPI GetHRECFromHRC(HRC);
1823 int WINAPI GetInternationalHRC(HRC,UINT *,LPSTR,UINT *,UINT *);
1824 int WINAPI GetMaxResultsHRC(HRC);
1825 int WINAPI GetResultsHRC(HRC,UINT,LPHRCRESULT,UINT);
1826 int WINAPI GetSymbolCountHRCRESULT(HRCRESULT);
1827 int WINAPI GetSymbolsHRCRESULT(HRCRESULT,UINT,LPSYV,UINT);
1828 int WINAPI GetWordlistHRC(HRC,LPHWL);
1829 int WINAPI GetWordlistCoercionHRC(HRC);
1830 int WINAPI ProcessHRC(HRC,DWORD);
1831 int WINAPI ReadHWL(HWL,HFILE);
1832 int WINAPI SetAlphabetHRC(HRC,ALC,LPBYTE);
1833 int WINAPI SetAlphabetPriorityHRC(HRC,ALC,LPBYTE);
1834 int WINAPI SetBoxAlphabetHRC(HRC,LPALC,UINT);
1835 int WINAPI SetGuideHRC(HRC,LPGUIDE,UINT);
1836 int WINAPI SetInternationalHRC(HRC,UINT,LPCSTR,UINT,UINT);
1837 int WINAPI SetMaxResultsHRC(HRC,UINT);
1838 HRECHOOK WINAPI SetResultsHookHREC(HREC,HRCRESULTHOOKPROC);
1839 int WINAPI SetWordlistCoercionHRC(HRC,UINT);
1840 int WINAPI SetWordlistHRC(HRC,HWL);
1841 int WINAPI TrainHREC(HREC,LPSYV,UINT,HPENDATA,UINT);
1842 int WINAPI UnhookResultsHookHREC(HREC,HRECHOOK);
1843 int WINAPI WriteHWL(HWL,HFILE);
1844 HREC WINAPI InstallRecognizer(LPSTR);
1845 VOID WINAPI UninstallRecognizer(HREC);
1846 WINBOOL WINAPI AddInksetInterval(HINKSET,LPINTERVAL);
1847 HINKSET WINAPI CreateInkset(UINT);
1848 WINBOOL WINAPI DestroyInkset(HINKSET);
1849 int WINAPI GetInksetInterval(HINKSET,UINT,LPINTERVAL);
1850 int WINAPI GetInksetIntervalCount(HINKSET);
1851 int WINAPI CharacterToSymbol(LPSTR,int,LPSYV);
1852 WINBOOL WINAPI SymbolToCharacter(LPSYV,int,LPSTR,LPINT);
1853 #endif
1854
1855 #ifndef NOPENINKPUT
1856 int WINAPI DoDefaultPenInput(HWND,UINT);
1857 int WINAPI GetPenInput(HPCM,LPPOINT,LPVOID,UINT,UINT,LPSTROKEINFO);
1858 int WINAPI PeekPenInput(HPCM,UINT,LPPOINT,LPVOID,UINT);
1859 int WINAPI StartInking(HPCM,UINT,LPINKINGINFO);
1860 HPCM WINAPI StartPenInput(HWND,UINT,LPPCMINFO,LPINT);
1861 int WINAPI StopInking(HPCM);
1862 int WINAPI StopPenInput(HPCM,UINT,int);
1863 #endif
1864
1865 #ifndef NOPENMISC
1866 VOID WINAPI BoundingRectFromPoints(LPPOINT,UINT,LPRECT);
1867 WINBOOL WINAPI DPtoTP(LPPOINT,int);
1868 UINT WINAPI GetPenAppFlags(VOID);
1869 VOID WINAPI SetPenAppFlags(UINT,UINT);
1870 LONG WINAPI GetPenMiscInfo(WPARAM,LPARAM);
1871 UINT WINAPI GetVersionPenWin(VOID);
1872 LONG WINAPI SetPenMiscInfo(WPARAM,LPARAM);
1873 WINBOOL WINAPI TPtoDP(LPPOINT,int);
1874 WINBOOL WINAPI CorrectWriting(HWND,LPSTR,UINT,LPVOID,DWORD,DWORD);
1875 #ifdef JAPAN
1876 int WINAPI CorrectWritingEx(HWND,LPSTR,UINT,LPCWX);
1877 #endif
1878 #ifdef JAPAN
1879 HANDLE WINAPI GetPenResource(WPARAM);
1880 #endif
1881 #endif
1882
1883 #ifndef NOPENRC1
1884 VOID WINAPI EmulatePen(WINBOOL);
1885 UINT WINAPI EnumSymbols(LPSYG,UINT,ENUMPROC,LPVOID);
1886 WINBOOL WINAPI ExecuteGesture(HWND,SYV,LPRCRESULT);
1887 VOID WINAPI FirstSymbolFromGraph(LPSYG,LPSYV,int,LPINT);
1888 UINT WINAPI GetGlobalRC(LPRC,LPSTR,LPSTR,int);
1889 int WINAPI GetSymbolCount(LPSYG);
1890 int WINAPI GetSymbolMaxLength(LPSYG);
1891 VOID WINAPI InitRC(HWND,LPRC);
1892 REC WINAPI ProcessWriting(HWND,LPRC);
1893 REC WINAPI Recognize(LPRC);
1894 REC WINAPI RecognizeData(LPRC,HPENDATA);
1895 UINT WINAPI SetGlobalRC(LPRC,LPSTR,LPSTR);
1896 WINBOOL WINAPI SetRecogHook(UINT,UINT,HWND);
1897 WINBOOL WINAPI TrainContext(LPRCRESULT,LPSYE,int,LPSYC,int);
1898 WINBOOL WINAPI TrainInk(LPRC,HPENDATA,LPSYV);
1899
1900 VOID WINAPI CloseRecognizer(VOID);
1901 UINT WINAPI ConfigRecognizer(UINT,WPARAM,LPARAM);
1902 WINBOOL WINAPI InitRecognizer(LPRC);
1903 REC WINAPI RecognizeDataInternal(LPRC,HPENDATA,LPFUNCRESULTS);
1904 REC WINAPI RecognizeInternal(LPRC,LPFUNCRESULTS);
1905 WINBOOL WINAPI TrainContextInternal(LPRCRESULT,LPSYE,int,LPSYC,int);
1906 WINBOOL WINAPI TrainInkInternal(LPRC,HPENDATA,LPSYV);
1907 #endif
1908
1909 #ifndef NOPENTARGET
1910 int WINAPI TargetPoints(LPTARGINFO,LPPOINT,DWORD,UINT,LPSTROKEINFO);
1911 #endif
1912
1913 #ifndef NOPENVIRTEVENT
1914
1915 VOID WINAPI AtomicVirtualEvent(WINBOOL);
1916 VOID WINAPI PostVirtualKeyEvent(UINT,WINBOOL);
1917 VOID WINAPI PostVirtualMouseEvent(UINT,int,int);
1918 #endif
1919
1920 #ifdef JAPAN
1921 WINBOOL WINAPI KKConvert(HWND hwndConvert,HWND hwndCaller,LPSTR lpBuf,UINT cbBuf,LPPOINT lpPnt);
1922 #endif
1923 #endif
1924
1925 #ifdef __cplusplus
1926 }
1927 #endif
1928
1929 #endif