mirror of
https://github.com/QB64Official/qb64.git
synced 2024-08-22 02:05:08 +00:00
1929 lines
48 KiB
C
1929 lines
48 KiB
C
/**
|
|
* This file has no copyright assigned and is placed in the Public Domain.
|
|
* This file is part of the mingw-w64 runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
|
*/
|
|
#ifndef _INC_PENWIN
|
|
#define _INC_PENWIN
|
|
|
|
#ifndef NOJAPAN
|
|
#ifndef JAPAN
|
|
#define JAPAN
|
|
#endif
|
|
#endif
|
|
|
|
#include <windows.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifndef PENVER
|
|
#define PENVER 0x0200
|
|
#endif
|
|
|
|
#define NOPENAPPS
|
|
#define NOPENDICT
|
|
#define NOPENRC1
|
|
#define NOPENVIRTEVENT
|
|
#define NOPENAPIFUN
|
|
|
|
#ifndef NOPENAPPS
|
|
#ifndef RC_INVOKED
|
|
#include <skbapi.h>
|
|
#endif
|
|
#endif
|
|
|
|
#ifdef NOPENCTL
|
|
#define NOPENBEDIT
|
|
#define NOPENIEDIT
|
|
#endif
|
|
|
|
#ifdef NOPENRES
|
|
#define NOPENBMP
|
|
#define NOPENCURS
|
|
#endif
|
|
|
|
#ifndef NOPENALC
|
|
|
|
#define ALC_DEFAULT __MSABI_LONG(0x00000000)
|
|
#define ALC_LCALPHA __MSABI_LONG(0x00000001)
|
|
#define ALC_UCALPHA __MSABI_LONG(0x00000002)
|
|
#define ALC_NUMERIC __MSABI_LONG(0x00000004)
|
|
#define ALC_PUNC __MSABI_LONG(0x00000008)
|
|
#define ALC_MATH __MSABI_LONG(0x00000010)
|
|
#define ALC_MONETARY __MSABI_LONG(0x00000020)
|
|
#define ALC_OTHER __MSABI_LONG(0x00000040)
|
|
#define ALC_ASCII __MSABI_LONG(0x00000080)
|
|
#define ALC_WHITE __MSABI_LONG(0x00000100)
|
|
#define ALC_NONPRINT __MSABI_LONG(0x00000200)
|
|
#define ALC_DBCS __MSABI_LONG(0x00000400)
|
|
#define ALC_JIS1 __MSABI_LONG(0x00000800)
|
|
#define ALC_GESTURE __MSABI_LONG(0x00004000)
|
|
#define ALC_USEBITMAP __MSABI_LONG(0x00008000)
|
|
#define ALC_HIRAGANA __MSABI_LONG(0x00010000)
|
|
#define ALC_KATAKANA __MSABI_LONG(0x00020000)
|
|
#define ALC_KANJI __MSABI_LONG(0x00040000)
|
|
#define ALC_GLOBALPRIORITY __MSABI_LONG(0x10000000)
|
|
#define ALC_OEM __MSABI_LONG(0x0FF80000)
|
|
#define ALC_RESERVED __MSABI_LONG(0xE0003000)
|
|
#define ALC_NOPRIORITY __MSABI_LONG(0x00000000)
|
|
|
|
#define ALC_ALPHA (ALC_LCALPHA | ALC_UCALPHA)
|
|
#define ALC_ALPHANUMERIC (ALC_ALPHA | ALC_NUMERIC)
|
|
#define ALC_SYSMINIMUM (ALC_ALPHANUMERIC | ALC_PUNC | ALC_WHITE | ALC_GESTURE)
|
|
#define ALC_ALL (ALC_SYSMINIMUM | ALC_MATH | ALC_MONETARY | ALC_OTHER | ALC_NONPRINT)
|
|
#define ALC_KANJISYSMINIMUM (ALC_SYSMINIMUM | ALC_HIRAGANA | ALC_KATAKANA | ALC_JIS1)
|
|
#define ALC_KANJIALL (ALC_ALL | ALC_HIRAGANA | ALC_KATAKANA | ALC_KANJI)
|
|
#endif
|
|
|
|
#ifndef NOPENBEDIT
|
|
|
|
#define BXS_NONE 0x0000U
|
|
#define BXS_RECT 0x0001U
|
|
#define BXS_BOXCROSS 0x0004U
|
|
#ifdef JAPAN
|
|
#define BXS_NOWRITING 0x0008U
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef NOPENBMP
|
|
|
|
#define OBM_SKBBTNUP 32767
|
|
#define OBM_SKBBTNDOWN 32766
|
|
#define OBM_SKBBTNDISABLED 32765
|
|
|
|
#define OBM_ZENBTNUP 32764
|
|
#define OBM_ZENBTNDOWN 32763
|
|
#define OBM_ZENBTNDISABLED 32762
|
|
|
|
#define OBM_HANBTNUP 32761
|
|
#define OBM_HANBTNDOWN 32760
|
|
#define OBM_HANBTNDISABLED 32759
|
|
|
|
#define OBM_KKCBTNUP 32758
|
|
#define OBM_KKCBTNDOWN 32757
|
|
#define OBM_KKCBTNDISABLED 32756
|
|
|
|
#define OBM_SIPBTNUP 32755
|
|
#define OBM_SIPBTNDOWN 32754
|
|
#define OBM_SIPBTNDISABLED 32753
|
|
|
|
#define OBM_PTYBTNUP 32752
|
|
#define OBM_PTYBTNDOWN 32751
|
|
#define OBM_PTYBTNDISABLED 32750
|
|
#endif
|
|
|
|
#ifndef NOPENCURS
|
|
|
|
#define IDC_PEN MAKEINTRESOURCE(32631)
|
|
|
|
#define IDC_ALTSELECT MAKEINTRESOURCE(32501)
|
|
#endif
|
|
|
|
#ifndef NOPENHRC
|
|
|
|
#define SYV_NULL __MSABI_LONG(0x00000000)
|
|
#define SYV_UNKNOWN __MSABI_LONG(0x00000001)
|
|
#define SYV_EMPTY __MSABI_LONG(0x00000003)
|
|
#define SYV_BEGINOR __MSABI_LONG(0x00000010)
|
|
#define SYV_ENDOR __MSABI_LONG(0x00000011)
|
|
#define SYV_OR __MSABI_LONG(0x00000012)
|
|
#define SYV_SOFTNEWLINE __MSABI_LONG(0x00000020)
|
|
#define SYV_SPACENULL __MSABI_LONG(0x00010000)
|
|
|
|
#define SYV_SELECTFIRST __MSABI_LONG(0x0002FFC0)
|
|
#define SYV_LASSO __MSABI_LONG(0x0002FFC1)
|
|
#define SYV_SELECTLEFT __MSABI_LONG(0x0002FFC2)
|
|
#define SYV_SELECTRIGHT __MSABI_LONG(0x0002FFC3)
|
|
#define SYV_SELECTLAST __MSABI_LONG(0x0002FFCF)
|
|
|
|
#define SYV_CLEARCHAR __MSABI_LONG(0x0002FFD2)
|
|
#define SYV_HELP __MSABI_LONG(0x0002FFD3)
|
|
#define SYV_KKCONVERT __MSABI_LONG(0x0002FFD4)
|
|
#define SYV_CLEAR __MSABI_LONG(0x0002FFD5)
|
|
#define SYV_INSERT __MSABI_LONG(0x0002FFD6)
|
|
#define SYV_CONTEXT __MSABI_LONG(0x0002FFD7)
|
|
#define SYV_EXTENDSELECT __MSABI_LONG(0x0002FFD8)
|
|
#define SYV_UNDO __MSABI_LONG(0x0002FFD9)
|
|
#define SYV_COPY __MSABI_LONG(0x0002FFDA)
|
|
#define SYV_CUT __MSABI_LONG(0x0002FFDB)
|
|
#define SYV_PASTE __MSABI_LONG(0x0002FFDC)
|
|
#define SYV_CLEARWORD __MSABI_LONG(0x0002FFDD)
|
|
#define SYV_USER __MSABI_LONG(0x0002FFDE)
|
|
#define SYV_CORRECT __MSABI_LONG(0x0002FFDF)
|
|
|
|
#define SYV_BACKSPACE __MSABI_LONG(0x00020008)
|
|
#define SYV_TAB __MSABI_LONG(0x00020009)
|
|
#define SYV_RETURN __MSABI_LONG(0x0002000D)
|
|
#define SYV_SPACE __MSABI_LONG(0x00020020)
|
|
|
|
#define SYV_APPGESTUREMASK __MSABI_LONG(0x00020000)
|
|
#define SYV_CIRCLEUPA __MSABI_LONG(0x000224B6)
|
|
#define SYV_CIRCLEUPZ __MSABI_LONG(0x000224CF)
|
|
#define SYV_CIRCLELOA __MSABI_LONG(0x000224D0)
|
|
#define SYV_CIRCLELOZ __MSABI_LONG(0x000224E9)
|
|
|
|
#define SYV_SHAPELINE __MSABI_LONG(0x00040001)
|
|
#define SYV_SHAPEELLIPSE __MSABI_LONG(0x00040002)
|
|
#define SYV_SHAPERECT __MSABI_LONG(0x00040003)
|
|
#define SYV_SHAPEMIN SYV_SHAPELINE
|
|
#define SYV_SHAPEMAX SYV_SHAPERECT
|
|
|
|
#define SYVHI_SPECIAL 0
|
|
#define SYVHI_ANSI 1
|
|
#define SYVHI_GESTURE 2
|
|
#define SYVHI_KANJI 3
|
|
#define SYVHI_SHAPE 4
|
|
#define SYVHI_UNICODE 5
|
|
#define SYVHI_VKEY 6
|
|
#endif
|
|
|
|
#ifndef NOPENIEDIT
|
|
|
|
#define IEM_UNDO 1
|
|
#define IEM_CUT 2
|
|
#define IEM_COPY 3
|
|
#define IEM_PASTE 4
|
|
#define IEM_CLEAR 5
|
|
#define IEM_SELECTALL 6
|
|
#define IEM_ERASE 7
|
|
#define IEM_PROPERTIES 8
|
|
#define IEM_LASSO 9
|
|
#define IEM_RESIZE 10
|
|
|
|
#define IEM_USER 100
|
|
|
|
#define IES_BORDER 0x0001
|
|
#define IES_HSCROLL 0x0002
|
|
#define IES_VSCROLL 0x0004
|
|
#define IES_OWNERDRAW 0x0008
|
|
#endif
|
|
|
|
#ifndef RC_INVOKED
|
|
|
|
#ifndef NOPENDATA
|
|
|
|
#define AI_CBSTROKE 0xFFFF
|
|
|
|
#define AI_SKIPUPSTROKES 0x0001
|
|
|
|
#define CMPD_COMPRESS 0x0001
|
|
#define CMPD_DECOMPRESS 0x0002
|
|
|
|
#define CPDR_BOX 1
|
|
#define CPDR_LASSO 2
|
|
|
|
#define CPD_DEFAULT 0x047F
|
|
#define CPD_USERBYTE 0x0100
|
|
#define CPD_USERWORD 0x0200
|
|
#define CPD_USERDWORD 0x0300
|
|
#define CPD_TIME 0x0400
|
|
|
|
#define DPD_HDCPEN 0x0001
|
|
#define DPD_DRAWSEL 0x0002
|
|
|
|
#define EPDP_REMOVE 0x0001
|
|
|
|
#define EPDS_SELECT 1
|
|
#define EPDS_STROKEINDEX 2
|
|
#define EPDS_USER 3
|
|
#define EPDS_PENTIP 4
|
|
#define EPDS_TIPCOLOR 5
|
|
#define EPDS_TIPWIDTH 6
|
|
#define EPDS_TIPNIB 7
|
|
#define EPDS_INKSET 8
|
|
|
|
#define EPDS_EQ 0x0000
|
|
#define EPDS_LT 0x0010
|
|
#define EPDS_GT 0x0020
|
|
#define EPDS_NOT 0x0040
|
|
#define EPDS_NE 0x0040
|
|
#define EPDS_GTE 0x0050
|
|
#define EPDS_LTE 0x0060
|
|
|
|
#define EPDS_REMOVE 0x8000
|
|
|
|
#define GPA_MAXLEN 1
|
|
#define GPA_POINTS 2
|
|
#define GPA_PDTS 3
|
|
#define GPA_RATE 4
|
|
#define GPA_RECTBOUND 5
|
|
#define GPA_RECTBOUNDINK 6
|
|
#define GPA_SIZE 7
|
|
#define GPA_STROKES 8
|
|
#define GPA_TIME 9
|
|
#define GPA_USER 10
|
|
#define GPA_VERSION 11
|
|
|
|
#define GSA_PENTIP 1
|
|
#define GSA_PENTIPCLASS 2
|
|
#define GSA_USER 3
|
|
#define GSA_USERCLASS 4
|
|
#define GSA_TIME 5
|
|
#define GSA_SIZE 6
|
|
#define GSA_SELECT 7
|
|
#define GSA_DOWN 8
|
|
#define GSA_RECTBOUND 9
|
|
|
|
#define GSA_PENTIPTABLE 10
|
|
#define GSA_SIZETABLE 11
|
|
#define GSA_USERTABLE 12
|
|
|
|
#ifndef IX_END
|
|
#define IX_END 0xFFFF
|
|
#endif
|
|
|
|
#define PENTIP_NIBDEFAULT ((BYTE)0)
|
|
#define PENTIP_HEIGHTDEFAULT ((BYTE)0)
|
|
#define PENTIP_OPAQUE ((BYTE)0xFF)
|
|
#define PENTIP_HILITE ((BYTE)0x80)
|
|
#define PENTIP_TRANSPARENT ((BYTE)0)
|
|
|
|
#define PDR_NOHIT 3
|
|
#define PDR_HIT 2
|
|
#define PDR_OK 1
|
|
#define PDR_CANCEL 0
|
|
|
|
#define PDR_ERROR (-1)
|
|
#define PDR_PNDTERR (-2)
|
|
#define PDR_VERSIONERR (-3)
|
|
#define PDR_COMPRESSED (-4)
|
|
#define PDR_STRKINDEXERR (-5)
|
|
#define PDR_PNTINDEXERR (-6)
|
|
#define PDR_MEMERR (-7)
|
|
#define PDR_INKSETERR (-8)
|
|
#define PDR_ABORT (-9)
|
|
#define PDR_NA (-10)
|
|
|
|
#define PDR_USERDATAERR (-16)
|
|
#define PDR_SCALINGERR (-17)
|
|
#define PDR_TIMESTAMPERR (-18)
|
|
#define PDR_OEMDATAERR (-19)
|
|
#define PDR_SCTERR (-20)
|
|
|
|
#define PDTS_LOMETRIC 0
|
|
#define PDTS_HIMETRIC 1
|
|
#define PDTS_HIENGLISH 2
|
|
#define PDTS_STANDARDSCALE 2
|
|
#define PDTS_DISPLAY 3
|
|
#define PDTS_ARBITRARY 4
|
|
#define PDTS_SCALEMASK 0x000F
|
|
|
|
#define PDTT_DEFAULT 0x0000
|
|
#define PDTT_PENINFO 0x0100
|
|
#define PDTT_UPPOINTS 0x0200
|
|
#define PDTT_OEMDATA 0x0400
|
|
#define PDTT_COLLINEAR 0x0800
|
|
#define PDTT_COLINEAR 0x0800
|
|
#define PDTT_DECOMPRESS 0x4000
|
|
#define PDTT_COMPRESS 0x8000
|
|
#define PDTT_ALL 0x0F00
|
|
|
|
#define PHW_NONE 0x0000
|
|
#define PHW_PRESSURE 0x0001
|
|
#define PHW_HEIGHT 0x0002
|
|
#define PHW_ANGLEXY 0x0004
|
|
#define PHW_ANGLEZ 0x0008
|
|
#define PHW_BARRELROTATION 0x0010
|
|
#define PHW_OEMSPECIFIC 0x0020
|
|
#define PHW_PDK 0x0040
|
|
#define PHW_ALL 0x007F
|
|
|
|
#define PDTS_COMPRESS2NDDERIV 0x0010
|
|
#define PDTS_COMPRESSMETHOD 0x00F0
|
|
#define PDTS_NOPENINFO 0x0100
|
|
#define PDTS_NOUPPOINTS 0x0200
|
|
#define PDTS_NOOEMDATA 0x0400
|
|
#define PDTS_NOCOLLINEAR 0x0800
|
|
#define PDTS_NOCOLINEAR 0x0800
|
|
#define PDTS_NOTICK 0x1000
|
|
#define PDTS_NOUSER 0x2000
|
|
#define PDTS_NOEMPTYSTROKES 0x4000
|
|
#define PDTS_COMPRESSED 0x8000
|
|
|
|
#define SSA_PENTIP 1
|
|
#define SSA_PENTIPCLASS 2
|
|
#define SSA_USER 3
|
|
#define SSA_USERCLASS 4
|
|
#define SSA_TIME 5
|
|
#define SSA_SELECT 6
|
|
#define SSA_DOWN 7
|
|
|
|
#define SSA_PENTIPTABLE 8
|
|
#define SSA_USERTABLE 9
|
|
|
|
#define TIP_ERASECOLOR 1
|
|
|
|
#define TPD_RECALCSIZE 0x0000
|
|
#define TPD_USER 0x0080
|
|
#define TPD_TIME 0x0100
|
|
#define TPD_UPPOINTS 0x0200
|
|
#define TPD_COLLINEAR 0x0400
|
|
#define TPD_COLINEAR 0x0400
|
|
#define TPD_PENINFO 0x0800
|
|
#define TPD_PHW 0x1000
|
|
#define TPD_OEMDATA 0x1000
|
|
#define TPD_EMPTYSTROKES 0x2000
|
|
#define TPD_EVERYTHING 0x3FFF
|
|
#endif
|
|
|
|
#ifndef NOPENDICT
|
|
|
|
#define cbDictPathMax 255
|
|
#define DIRQ_QUERY 1
|
|
#define DIRQ_DESCRIPTION 2
|
|
#define DIRQ_CONFIGURE 3
|
|
#define DIRQ_OPEN 4
|
|
#define DIRQ_CLOSE 5
|
|
#define DIRQ_SETWORDLISTS 6
|
|
#define DIRQ_STRING 7
|
|
#define DIRQ_SUGGEST 8
|
|
#define DIRQ_ADD 9
|
|
#define DIRQ_DELETE 10
|
|
#define DIRQ_FLUSH 11
|
|
#define DIRQ_RCCHANGE 12
|
|
#define DIRQ_SYMBOLGRAPH 13
|
|
#define DIRQ_INIT 14
|
|
#define DIRQ_CLEANUP 15
|
|
#define DIRQ_COPYRIGHT 16
|
|
#define DIRQ_USER 4096
|
|
#endif
|
|
|
|
#ifndef NOPENDRIVER
|
|
|
|
#define BITPENUP 0x8000
|
|
|
|
#define DRV_SetPenDriverEntryPoints DRV_RESERVED+1
|
|
#define DRV_SetEntryPoints DRV_RESERVED+1
|
|
#define DRV_RemovePenDriverEntryPoints DRV_RESERVED+2
|
|
#define DRV_RemoveEntryPoints DRV_RESERVED+2
|
|
#define DRV_SetPenSamplingRate DRV_RESERVED+3
|
|
#define DRV_SetPenSamplingDist DRV_RESERVED+4
|
|
#define DRV_GetName DRV_RESERVED+5
|
|
#define DRV_GetVersion DRV_RESERVED+6
|
|
#define DRV_GetPenInfo DRV_RESERVED+7
|
|
#define DRV_PenPlayStart DRV_RESERVED+8
|
|
#define DRV_PenPlayBack DRV_RESERVED+9
|
|
#define DRV_PenPlayStop DRV_RESERVED+10
|
|
#define DRV_GetCalibration DRV_RESERVED+11
|
|
#define DRV_SetCalibration DRV_RESERVED+12
|
|
#define DRV_Reserved1 DRV_RESERVED+13
|
|
#define DRV_Reserved2 DRV_RESERVED+14
|
|
#define DRV_Query DRV_RESERVED+15
|
|
#define DRV_GetPenSamplingRate DRV_RESERVED+16
|
|
#define DRV_Calibrate DRV_RESERVED+17
|
|
|
|
#define PLAY_VERSION_10_DATA 0
|
|
#define PLAY_VERSION_20_DATA 1
|
|
|
|
#define DRV_FAILURE 0x00000000
|
|
#define DRV_SUCCESS 0x00000001
|
|
#define DRV_BADPARAM1 0xFFFFFFFF
|
|
#define DRV_BADPARAM2 0xFFFFFFFE
|
|
#define DRV_BADSTRUCT 0xFFFFFFFD
|
|
|
|
#define PENREG_DEFAULT 0x00000002
|
|
#define PENREG_WILLHANDLEMOUSE 0x00000001
|
|
|
|
#define MAXOEMDATAWORDS 6
|
|
|
|
#define PCM_PENUP __MSABI_LONG(0x00000001)
|
|
#define PCM_RANGE __MSABI_LONG(0x00000002)
|
|
#define PCM_INVERT __MSABI_LONG(0x00000020)
|
|
#define PCM_RECTEXCLUDE __MSABI_LONG(0x00002000)
|
|
#define PCM_RECTBOUND __MSABI_LONG(0x00004000)
|
|
#define PCM_TIMEOUT __MSABI_LONG(0x00008000)
|
|
|
|
#define PCM_RGNBOUND __MSABI_LONG(0x00010000)
|
|
#define PCM_RGNEXCLUDE __MSABI_LONG(0x00020000)
|
|
#define PCM_DOPOLLING __MSABI_LONG(0x00040000)
|
|
#define PCM_TAPNHOLD __MSABI_LONG(0x00080000)
|
|
#define PCM_ADDDEFAULTS RC_LDEFAULTFLAGS
|
|
|
|
#define PDC_INTEGRATED __MSABI_LONG(0x00000001)
|
|
#define PDC_PROXIMITY __MSABI_LONG(0x00000002)
|
|
#define PDC_RANGE __MSABI_LONG(0x00000004)
|
|
#define PDC_INVERT __MSABI_LONG(0x00000008)
|
|
#define PDC_RELATIVE __MSABI_LONG(0x00000010)
|
|
#define PDC_BARREL1 __MSABI_LONG(0x00000020)
|
|
#define PDC_BARREL2 __MSABI_LONG(0x00000040)
|
|
#define PDC_BARREL3 __MSABI_LONG(0x00000080)
|
|
|
|
#define PDK_NULL 0x0000
|
|
#define PDK_UP 0x0000
|
|
#define PDK_DOWN 0x0001
|
|
#define PDK_BARREL1 0x0002
|
|
#define PDK_BARREL2 0x0004
|
|
#define PDK_BARREL3 0x0008
|
|
#define PDK_SWITCHES 0x000f
|
|
#define PDK_TRANSITION 0x0010
|
|
#define PDK_UNUSED10 0x0020
|
|
#define PDK_UNUSED20 0x0040
|
|
#define PDK_INVERTED 0x0080
|
|
#define PDK_PENIDMASK 0x0F00
|
|
#define PDK_UNUSED1000 0x1000
|
|
#define PDK_INKSTOPPED 0x2000
|
|
#define PDK_OUTOFRANGE 0x4000
|
|
#define PDK_DRIVER 0x8000
|
|
|
|
#define PDK_TIPMASK 0x0001
|
|
|
|
#define PDT_NULL 0
|
|
#define PDT_PRESSURE 1
|
|
#define PDT_HEIGHT 2
|
|
#define PDT_ANGLEXY 3
|
|
#define PDT_ANGLEZ 4
|
|
#define PDT_BARRELROTATION 5
|
|
#define PDT_OEMSPECIFIC 16
|
|
|
|
#define PID_CURRENT (UINT)(-1)
|
|
|
|
#define REC_OEM (-1024)
|
|
#define REC_LANGUAGE (-48)
|
|
#define REC_GUIDE (-47)
|
|
#define REC_PARAMERROR (-46)
|
|
#define REC_INVALIDREF (-45)
|
|
#define REC_RECTEXCLUDE (-44)
|
|
#define REC_RECTBOUND (-43)
|
|
#define REC_PCM (-42)
|
|
#define REC_RESULTMODE (-41)
|
|
#define REC_HWND (-40)
|
|
#define REC_ALC (-39)
|
|
#define REC_ERRORLEVEL (-38)
|
|
#define REC_CLVERIFY (-37)
|
|
#define REC_DICT (-36)
|
|
#define REC_HREC (-35)
|
|
#define REC_BADEVENTREF (-33)
|
|
#define REC_NOCOLLECTION (-32)
|
|
#define REC_DEBUG (-32)
|
|
#define REC_POINTEREVENT (-31)
|
|
#define REC_BADHPENDATA (-9)
|
|
#define REC_OOM (-8)
|
|
#define REC_NOINPUT (-7)
|
|
#define REC_NOTABLET (-6)
|
|
#define REC_BUSY (-5)
|
|
#define REC_BUFFERTOOSMALL (-4)
|
|
#define REC_ABORT (-3)
|
|
#define REC_NA (-2)
|
|
#define REC_OVERFLOW (-1)
|
|
#define REC_OK 0
|
|
#define REC_TERMBOUND 1
|
|
#define REC_TERMEX 2
|
|
#define REC_TERMPENUP 3
|
|
#define REC_TERMRANGE 4
|
|
#define REC_TERMTIMEOUT 5
|
|
#define REC_DONE 6
|
|
#define REC_TERMOEM 512
|
|
#endif
|
|
|
|
#ifndef NOPENHRC
|
|
|
|
#define GRH_ALL 0
|
|
#define GRH_GESTURE 1
|
|
#define GRH_NONGESTURE 2
|
|
|
|
#ifdef JAPAN
|
|
#define GST_SEL __MSABI_LONG(0x00000001)
|
|
#define GST_CLIP __MSABI_LONG(0x00000002)
|
|
#define GST_WHITE __MSABI_LONG(0x00000004)
|
|
#define GST_KKCONVERT __MSABI_LONG(0x00000008)
|
|
#define GST_EDIT __MSABI_LONG(0x00000010)
|
|
#define GST_SYS __MSABI_LONG(0x0000001F)
|
|
#define GST_CIRCLELO __MSABI_LONG(0x00000100)
|
|
#define GST_CIRCLEUP __MSABI_LONG(0x00000200)
|
|
#define GST_CIRCLE __MSABI_LONG(0x00000300)
|
|
#define GST_ALL __MSABI_LONG(0x0000031F)
|
|
#else
|
|
#define GST_SEL __MSABI_LONG(0x00000001)
|
|
#define GST_CLIP __MSABI_LONG(0x00000002)
|
|
#define GST_WHITE __MSABI_LONG(0x00000004)
|
|
#define GST_EDIT __MSABI_LONG(0x00000010)
|
|
#define GST_SYS __MSABI_LONG(0x00000017)
|
|
#define GST_CIRCLELO __MSABI_LONG(0x00000100)
|
|
#define GST_CIRCLEUP __MSABI_LONG(0x00000200)
|
|
#define GST_CIRCLE __MSABI_LONG(0x00000300)
|
|
#define GST_ALL __MSABI_LONG(0x00000317)
|
|
#endif
|
|
|
|
#define HRCR_NORESULTS 4
|
|
#define HRCR_COMPLETE 3
|
|
#define HRCR_GESTURE 2
|
|
#define HRCR_OK 1
|
|
#define HRCR_INCOMPLETE 0
|
|
#define HRCR_ERROR (-1)
|
|
#define HRCR_MEMERR (-2)
|
|
#define HRCR_INVALIDGUIDE (-3)
|
|
#define HRCR_INVALIDPNDT (-4)
|
|
#define HRCR_UNSUPPORTED (-5)
|
|
#define HRCR_CONFLICT (-6)
|
|
#define HRCR_HOOKED (-8)
|
|
|
|
#define HWL_SYSTEM ((HWL)1)
|
|
|
|
#define ISR_ERROR (-1)
|
|
#define ISR_BADINKSET (-2)
|
|
#define ISR_BADINDEX (-3)
|
|
|
|
#ifndef IX_END
|
|
#define IX_END 0xFFFF
|
|
#endif
|
|
|
|
#define MAXHOTSPOT 8
|
|
|
|
#define PH_MAX __MSABI_LONG(0xFFFFFFFF)
|
|
#define PH_DEFAULT __MSABI_LONG(0xFFFFFFFE)
|
|
#define PH_MIN __MSABI_LONG(0xFFFFFFFD)
|
|
|
|
#define RHH_STD 0
|
|
#define RHH_BOX 1
|
|
|
|
#define SCH_NONE 0
|
|
#define SCH_ADVISE 1
|
|
#define SCH_FORCE 2
|
|
|
|
#define SCIM_INSERT 0
|
|
#define SCIM_OVERWRITE 1
|
|
|
|
#define SRH_HOOKALL (HREC)1
|
|
|
|
#define SSH_RD 1
|
|
#define SSH_RU 2
|
|
#define SSH_LD 3
|
|
#define SSH_LU 4
|
|
#define SSH_DL 5
|
|
#define SSH_DR 6
|
|
#define SSH_UL 7
|
|
#define SSH_UR 8
|
|
|
|
#define SIH_ALLANSICHAR 1
|
|
|
|
#define TH_QUERY 0
|
|
#define TH_FORCE 1
|
|
#define TH_SUGGEST 2
|
|
|
|
#define TRAIN_NONE 0x0000
|
|
#define TRAIN_DEFAULT 0x0001
|
|
#define TRAIN_CUSTOM 0x0002
|
|
#define TRAIN_BOTH (TRAIN_DEFAULT | TRAIN_CUSTOM)
|
|
|
|
#define TRAIN_SAVE 0
|
|
#define TRAIN_REVERT 1
|
|
#define TRAIN_RESET 2
|
|
|
|
#define WCR_RECOGNAME 0
|
|
#define WCR_QUERY 1
|
|
#define WCR_CONFIGDIALOG 2
|
|
#define WCR_DEFAULT 3
|
|
#define WCR_RCCHANGE 4
|
|
#define WCR_VERSION 5
|
|
#define WCR_TRAIN 6
|
|
#define WCR_TRAINSAVE 7
|
|
#define WCR_TRAINMAX 8
|
|
#define WCR_TRAINDIRTY 9
|
|
#define WCR_TRAINCUSTOM 10
|
|
#define WCR_QUERYLANGUAGE 11
|
|
#define WCR_USERCHANGE 12
|
|
|
|
#define WCR_PWVERSION 13
|
|
#define WCR_GETALCPRIORITY 14
|
|
#define WCR_SETALCPRIORITY 15
|
|
#define WCR_GETANSISTATE 16
|
|
#define WCR_SETANSISTATE 17
|
|
#define WCR_GETHAND 18
|
|
#define WCR_SETHAND 19
|
|
#define WCR_GETDIRECTION 20
|
|
#define WCR_SETDIRECTION 21
|
|
#define WCR_INITRECOGNIZER 22
|
|
#define WCR_CLOSERECOGNIZER 23
|
|
|
|
#define WCR_PRIVATE 1024
|
|
|
|
#define CRUC_NOTIFY 0
|
|
#define CRUC_REMOVE 1
|
|
|
|
#define WLT_STRING 0
|
|
#define WLT_STRINGTABLE 1
|
|
#define WLT_EMPTY 2
|
|
#define WLT_WORDLIST 3
|
|
#endif
|
|
|
|
#ifndef NOPENIEDIT
|
|
|
|
#define IEB_DEFAULT 0
|
|
#define IEB_BRUSH 1
|
|
#define IEB_BIT_UL 2
|
|
#define IEB_BIT_CENTER 3
|
|
#define IEB_BIT_TILE 4
|
|
#define IEB_BIT_STRETCH 5
|
|
#define IEB_OWNERDRAW 6
|
|
|
|
#define IEDO_NONE 0x0000
|
|
#define IEDO_FAST 0x0001
|
|
#define IEDO_SAVEUPSTROKES 0x0002
|
|
#define IEDO_RESERVED 0xFFFC
|
|
|
|
#define IEI_MOVE 0x0001
|
|
#define IEI_RESIZE 0x0002
|
|
#define IEI_CROP 0x0004
|
|
#define IEI_DISCARD 0x0008
|
|
#define IEI_RESERVED 0xFFF0
|
|
|
|
#define IEGI_ALL 0x0000
|
|
#define IEGI_SELECTION 0x0001
|
|
|
|
#define IEMODE_READY 0
|
|
#define IEMODE_ERASE 1
|
|
#define IEMODE_LASSO 2
|
|
|
|
#define IEN_NULL 0x0000
|
|
#define IEN_PDEVENT 0x0001
|
|
#define IEN_PAINT 0x0002
|
|
#define IEN_FOCUS 0x0004
|
|
#define IEN_SCROLL 0x0008
|
|
#define IEN_EDIT 0x0010
|
|
#define IEN_PROPERTIES 0x0020
|
|
#define IEN_RESERVED 0xFF80
|
|
|
|
#define IER_OK 0
|
|
#define IER_NO 0
|
|
#define IER_YES 1
|
|
#define IER_ERROR (-1)
|
|
#define IER_PARAMERR (-2)
|
|
#define IER_OWNERDRAW (-3)
|
|
#define IER_SECURITY (-4)
|
|
#define IER_SELECTION (-5)
|
|
#define IER_SCALE (-6)
|
|
#define IER_MEMERR (-7)
|
|
#define IER_NOCOMMAND (-8)
|
|
#define IER_NOGESTURE (-9)
|
|
#define IER_NOPDEVENT (-10)
|
|
#define IER_NOTINPAINT (-11)
|
|
#define IER_PENDATA (-12)
|
|
|
|
#define IEREC_NONE 0x0000
|
|
#define IEREC_GESTURE 0x0001
|
|
#define IEREC_ALL (IEREC_GESTURE)
|
|
#define IEREC_RESERVED 0xFFFE
|
|
|
|
#define IESEC_NOCOPY 0x0001
|
|
#define IESEC_NOCUT 0x0002
|
|
#define IESEC_NOPASTE 0x0004
|
|
#define IESEC_NOUNDO 0x0008
|
|
#define IESEC_NOINK 0x0010
|
|
#define IESEC_NOERASE 0x0020
|
|
#define IESEC_NOGET 0x0040
|
|
#define IESEC_NOSET 0x0080
|
|
#define IESEC_RESERVED 0xFF00
|
|
|
|
#define IESF_ALL 0x0001
|
|
#define IESF_SELECTION 0x0002
|
|
#define IESF_STROKE 0x0004
|
|
|
|
#define IESF_TIPCOLOR 0x0008
|
|
#define IESF_TIPWIDTH 0x0010
|
|
#define IESF_PENTIP (IESF_TIPCOLOR|IESF_TIPWIDTH)
|
|
|
|
#define IESI_REPLACE 0x0000
|
|
#define IESI_APPEND 0x0001
|
|
|
|
#define IN_PDEVENT ((IEN_PDEVENT<<8)|0)
|
|
#define IN_ERASEBKGND ((IEN_NULL<<8)|1)
|
|
#define IN_PREPAINT ((IEN_PAINT<<8)|2)
|
|
#define IN_PAINT ((IEN_NULL<<8)|3)
|
|
#define IN_POSTPAINT ((IEN_PAINT<<8)|4)
|
|
#define IN_MODECHANGED ((IEN_EDIT<<8)|5)
|
|
#define IN_CHANGE ((IEN_EDIT<<8)|6)
|
|
#define IN_UPDATE ((IEN_EDIT<<8)|7)
|
|
#define IN_SETFOCUS ((IEN_FOCUS<<8)|8)
|
|
#define IN_KILLFOCUS ((IEN_FOCUS<<8)|9)
|
|
#define IN_MEMERR ((IEN_NULL<<8)|10)
|
|
#define IN_HSCROLL ((IEN_SCROLL<<8)|11)
|
|
#define IN_VSCROLL ((IEN_SCROLL<<8)|12)
|
|
#define IN_GESTURE ((IEN_EDIT<<8)|13)
|
|
#define IN_COMMAND ((IEN_EDIT<<8)|14)
|
|
#define IN_CLOSE ((IEN_NULL<<8)|15)
|
|
#define IN_PROPERTIES ((IEN_PROPERTIES<<8)|16)
|
|
#endif
|
|
|
|
#ifndef NOPENINKPUT
|
|
|
|
#define LRET_DONE __MSABI_LONG(1)
|
|
#define LRET_ABORT (__MSABI_LONG(-1))
|
|
#define LRET_HRC (__MSABI_LONG(-2))
|
|
#define LRET_HPENDATA (__MSABI_LONG(-3))
|
|
#define LRET_PRIVATE (__MSABI_LONG(-4))
|
|
|
|
#define PCMR_OK 0
|
|
#define PCMR_ALREADYCOLLECTING (-1)
|
|
#define PCMR_INVALIDCOLLECTION (-2)
|
|
#define PCMR_EVENTLOCK (-3)
|
|
#define PCMR_INVALID_PACKETID (-4)
|
|
#define PCMR_TERMTIMEOUT (-5)
|
|
#define PCMR_TERMRANGE (-6)
|
|
#define PCMR_TERMPENUP (-7)
|
|
#define PCMR_TERMEX (-8)
|
|
#define PCMR_TERMBOUND (-9)
|
|
#define PCMR_APPTERMINATED (-10)
|
|
#define PCMR_TAP (-11)
|
|
#define PCMR_SELECT (-12)
|
|
#define PCMR_OVERFLOW (-13)
|
|
#define PCMR_ERROR (-14)
|
|
#define PCMR_DISPLAYERR (-15)
|
|
#define PCMR_TERMINVERT (-16)
|
|
|
|
#define PII_INKCLIPRECT 0x0001
|
|
#define PII_INKSTOPRECT 0x0002
|
|
#define PII_INKCLIPRGN 0x0004
|
|
#define PII_INKSTOPRGN 0x0008
|
|
#define PII_INKPENTIP 0x0010
|
|
#define PII_SAVEBACKGROUND 0x0020
|
|
#define PII_CLIPSTOP 0x0040
|
|
|
|
#define PIT_RGNBOUND 0x0001
|
|
#define PIT_RGNEXCLUDE 0x0002
|
|
#define PIT_TIMEOUT 0x0004
|
|
#define PIT_TAPNHOLD 0x0008
|
|
#endif
|
|
|
|
#ifndef NOPENMISC
|
|
|
|
#define CL_NULL 0
|
|
#define CL_MINIMUM 1
|
|
#define CL_MAXIMUM 100
|
|
#define cwRcReservedMax 8
|
|
#define ENUM_MINIMUM 1
|
|
#define ENUM_MAXIMUM 4096
|
|
|
|
#define HKP_SETHOOK 0
|
|
#define HKP_UNHOOK 0xFFFF
|
|
|
|
#define HWR_RESULTS 0
|
|
#define HWR_APPWIDE 1
|
|
|
|
#define iSycNull (-1)
|
|
#define LPDFNULL ((LPDF)NULL)
|
|
#define MAXDICTIONARIES 16
|
|
#define wPntAll (UINT)0xFFFF
|
|
#define cbRcLanguageMax 44
|
|
#define cbRcUserMax 32
|
|
#define cbRcrgbfAlcMax 32
|
|
#define RC_WDEFAULT 0xffff
|
|
#define RC_LDEFAULT __MSABI_LONG(0xffffffff)
|
|
#define RC_WDEFAULTFLAGS 0x8000
|
|
#define RC_LDEFAULTFLAGS __MSABI_LONG(0x80000000)
|
|
|
|
#define CWR_REPLACECR 0x0001
|
|
#define CWR_STRIPCR CWR_REPLACECR
|
|
#define CWR_STRIPLF 0x0002
|
|
#define CWR_REPLACETAB 0x0004
|
|
#define CWR_STRIPTAB CWR_REPLACETAB
|
|
#define CWR_SINGLELINEEDIT (CWR_REPLACECR|CWR_STRIPLF|CWR_REPLACETAB)
|
|
#define CWR_INSERT 0x0008
|
|
#define CWR_TITLE 0x0010
|
|
#define CWR_SIMPLE 0x0040
|
|
#define CWR_HEDIT 0x0080
|
|
#define CWR_KEYBOARD 0x0100
|
|
#define CWR_BOXES 0x0200
|
|
|
|
#define CWRK_DEFAULT 0
|
|
#define CWRK_BASIC 1
|
|
#define CWRK_FULL 2
|
|
#define CWRK_NUMPAD 3
|
|
#define CWRK_TELPAD 4
|
|
|
|
#ifdef JAPAN
|
|
|
|
#define CBCAPTIONCWX 256
|
|
#define CKBCWX 6
|
|
#define XCWX 20
|
|
#define YCWX 20
|
|
#define CXCWX 300
|
|
#define CYCWX 200
|
|
|
|
#define CWX_TOPMOST __MSABI_LONG(0x00000001)
|
|
#define CWX_NOTOOLTIPS __MSABI_LONG(0x00000002)
|
|
#define CWX_EPERIOD __MSABI_LONG(0x00000004)
|
|
#define CWX_ECOMMA __MSABI_LONG(0x00000008)
|
|
#define CWX_DEFAULT __MSABI_LONG(0x00000000)
|
|
|
|
#define CWXA_CONTEXT 0x0001
|
|
#define CWXA_KBD 0x0002
|
|
#define CWXA_STATE 0x0004
|
|
#define CWXA_PTUL 0x0008
|
|
#define CWXA_SIZE 0x0010
|
|
#define CWXA_NOUPDATEMRU 0x0020
|
|
|
|
#define CWXK_HW 0
|
|
#define CWXK_FIRST 0x0100
|
|
#define CWXK_50 0x0100
|
|
#define CWXK_QWERTY 0x0101
|
|
#define CWXK_NUM 0x0102
|
|
#define CWXK_KANJI 0x0103
|
|
#define CWXK_CODE 0x0104
|
|
#define CWXK_YOMI 0x0105
|
|
|
|
#define CWXKS_DEFAULT 0xffff
|
|
#define CWXKS_ZEN 0
|
|
#define CWXKS_HAN 1
|
|
#define CWXKS_ROMAZEN 2
|
|
#define CWXKS_ROMAHAN 3
|
|
#define CWXKS_HIRAZEN 4
|
|
#define CWXKS_KATAZEN 5
|
|
#define CWXKS_KATAHAN 6
|
|
|
|
#define CWXR_ERROR -1
|
|
#define CWXR_UNMODIFIED 0
|
|
#define CWXR_MODIFIED 1
|
|
#endif
|
|
|
|
#ifdef JAPAN
|
|
#define GPMI_OK __MSABI_LONG(0)
|
|
#define GPMI_INVALIDPMI __MSABI_LONG(0x8000)
|
|
#endif
|
|
|
|
#define INKWIDTH_MINIMUM 0
|
|
#define INKWIDTH_MAXIMUM 15
|
|
|
|
#define PMI_RCCHANGE 0
|
|
|
|
#define PMI_BEDIT 1
|
|
#define PMI_CXTABLET 3
|
|
#define PMI_CYTABLET 4
|
|
#define PMI_PENTIP 6
|
|
#define PMI_ENABLEFLAGS 7
|
|
#define PMI_TIMEOUT 8
|
|
#define PMI_TIMEOUTGEST 9
|
|
#define PMI_TIMEOUTSEL 10
|
|
#define PMI_SYSFLAGS 11
|
|
#define PMI_INDEXFROMRGB 12
|
|
#define PMI_RGBFROMINDEX 13
|
|
#define PMI_SYSREC 14
|
|
#define PMI_TICKREF 15
|
|
|
|
#define PMI_SAVE 0x1000
|
|
|
|
#ifdef JAPAN
|
|
|
|
#define GPR_CURSPEN 1
|
|
#define GPR_CURSCOPY 2
|
|
#define GPR_CURSUNKNOWN 3
|
|
#define GPR_CURSERASE 4
|
|
|
|
#define GPR_BMCRMONO 5
|
|
#define GPR_BMLFMONO 6
|
|
#define GPR_BMTABMONO 7
|
|
#define GPR_BMDELETE 8
|
|
#define GPR_BMLENSBTN 9
|
|
|
|
#ifdef JAPAN
|
|
#define GPR_BMHSPMONO 10
|
|
#define GPR_BMZSPMONO 11
|
|
#endif
|
|
#endif
|
|
|
|
#define PWE_AUTOWRITE 0x0001
|
|
#define PWE_ACTIONHANDLES 0x0002
|
|
#define PWE_INPUTCURSOR 0x0004
|
|
#define PWE_LENS 0x0008
|
|
|
|
#define PWF_RC1 0x0001
|
|
#define PWF_PEN 0x0004
|
|
#define PWF_INKDISPLAY 0x0008
|
|
#define PWF_RECOGNIZER 0x0010
|
|
#define PWF_BEDIT 0x0100
|
|
#define PWF_HEDIT 0x0200
|
|
#define PWF_IEDIT 0x0400
|
|
#define PWF_ENHANCED 0x1000
|
|
#define PWF_FULL PWF_RC1|PWF_PEN|PWF_INKDISPLAY|PWF_RECOGNIZER| PWF_BEDIT|PWF_HEDIT |PWF_IEDIT|PWF_ENHANCED
|
|
|
|
#define RPA_DEFAULT 0x0001
|
|
#define RPA_HEDIT 0x0001
|
|
#define RPA_KANJIFIXEDBEDIT 0x0002
|
|
#define RPA_DBCSPRIORITY 0x0004
|
|
#define RPA_SBCSPRIORITY 0x0008
|
|
|
|
#define PMIR_OK __MSABI_LONG(0)
|
|
#define PMIR_INDEX (__MSABI_LONG(-1))
|
|
#define PMIR_VALUE (__MSABI_LONG(-2))
|
|
#define PMIR_INVALIDBOXEDITINFO (__MSABI_LONG(-3))
|
|
#define PMIR_INIERROR (__MSABI_LONG(-4))
|
|
#define PMIR_ERROR (__MSABI_LONG(-5))
|
|
#define PMIR_NA (__MSABI_LONG(-6))
|
|
|
|
#ifdef JAPAN
|
|
#define SPMI_OK __MSABI_LONG(0)
|
|
#define SPMI_INVALIDBOXEDITINFO __MSABI_LONG(1)
|
|
#define SPMI_INIERROR __MSABI_LONG(2)
|
|
#define SPMI_INVALIDPMI __MSABI_LONG(0x8000)
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef NOPENRC1
|
|
|
|
#define GGRC_OK 0
|
|
#define GGRC_DICTBUFTOOSMALL 1
|
|
#define GGRC_PARAMERROR 2
|
|
#define GGRC_NA 3
|
|
|
|
#define RCD_DEFAULT 0
|
|
#define RCD_LR 1
|
|
#define RCD_RL 2
|
|
#define RCD_TB 3
|
|
#define RCD_BT 4
|
|
|
|
#define RCIP_ALLANSICHAR 0x0001
|
|
#define RCIP_MASK 0x0001
|
|
|
|
#define RCO_NOPOINTEREVENT __MSABI_LONG(0x00000001)
|
|
#define RCO_SAVEALLDATA __MSABI_LONG(0x00000002)
|
|
#define RCO_SAVEHPENDATA __MSABI_LONG(0x00000004)
|
|
#define RCO_NOFLASHUNKNOWN __MSABI_LONG(0x00000008)
|
|
#define RCO_TABLETCOORD __MSABI_LONG(0x00000010)
|
|
#define RCO_NOSPACEBREAK __MSABI_LONG(0x00000020)
|
|
#define RCO_NOHIDECURSOR __MSABI_LONG(0x00000040)
|
|
#define RCO_NOHOOK __MSABI_LONG(0x00000080)
|
|
#define RCO_BOXED __MSABI_LONG(0x00000100)
|
|
#define RCO_SUGGEST __MSABI_LONG(0x00000200)
|
|
#define RCO_DISABLEGESMAP __MSABI_LONG(0x00000400)
|
|
#define RCO_NOFLASHCURSOR __MSABI_LONG(0x00000800)
|
|
#define RCO_BOXCROSS __MSABI_LONG(0x00001000)
|
|
#define RCO_COLDRECOG __MSABI_LONG(0x00008000)
|
|
#define RCO_SAVEBACKGROUND __MSABI_LONG(0x00010000)
|
|
#define RCO_DODEFAULT __MSABI_LONG(0x00020000)
|
|
|
|
#define RCOR_NORMAL 1
|
|
#define RCOR_RIGHT 2
|
|
#define RCOR_UPSIDEDOWN 3
|
|
#define RCOR_LEFT 4
|
|
|
|
#define RCP_LEFTHAND 0x0001
|
|
#define RCP_MAPCHAR 0x0004
|
|
|
|
#define RCRT_DEFAULT 0x0000
|
|
#define RCRT_UNIDENTIFIED 0x0001
|
|
#define RCRT_GESTURE 0x0002
|
|
#define RCRT_NOSYMBOLMATCH 0x0004
|
|
#define RCRT_PRIVATE 0x4000
|
|
#define RCRT_NORECOG 0x8000
|
|
#define RCRT_ALREADYPROCESSED 0x0008
|
|
#define RCRT_GESTURETRANSLATED 0x0010
|
|
#define RCRT_GESTURETOKEYS 0x0020
|
|
|
|
#define RRM_STROKE 0
|
|
#define RRM_SYMBOL 1
|
|
#define RRM_WORD 2
|
|
#define RRM_NEWLINE 3
|
|
#define RRM_COMPLETE 16
|
|
|
|
#define SGRC_OK 0x0000
|
|
#define SGRC_USER 0x0001
|
|
#define SGRC_PARAMERROR 0x0002
|
|
#define SGRC_RC 0x0004
|
|
#define SGRC_RECOGNIZER 0x0008
|
|
#define SGRC_DICTIONARY 0x0010
|
|
#define SGRC_INIFILE 0x0020
|
|
#define SGRC_NA 0x8000
|
|
#endif
|
|
|
|
#ifndef NOPENTARGET
|
|
|
|
#define TPT_CLOSEST 0x0001
|
|
#define TPT_INTERSECTINK 0x0002
|
|
#define TPT_TEXTUAL 0x0004
|
|
#define TPT_DEFAULT (TPT_TEXTUAL | TPT_INTERSECTINK | TPT_CLOSEST)
|
|
#endif
|
|
|
|
#ifndef NOPENVIRTEVENT
|
|
|
|
#define VWM_MOUSEMOVE 0x0001
|
|
#define VWM_MOUSELEFTDOWN 0x0002
|
|
#define VWM_MOUSELEFTUP 0x0004
|
|
#define VWM_MOUSERIGHTDOWN 0x0008
|
|
#define VWM_MOUSERIGHTUP 0x0010
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef NOPENMSGS
|
|
|
|
#ifndef NOPENRC1
|
|
#define WM_RCRESULT (WM_PENWINFIRST+1)
|
|
#define WM_HOOKRCRESULT (WM_PENWINFIRST+2)
|
|
#endif
|
|
|
|
#define WM_PENMISCINFO (WM_PENWINFIRST+3)
|
|
#define WM_GLOBALRCCHANGE (WM_PENWINFIRST+3)
|
|
|
|
#ifndef NOPENAPPS
|
|
#define WM_SKB (WM_PENWINFIRST+4)
|
|
#endif
|
|
|
|
#define WM_PENCTL (WM_PENWINFIRST+5)
|
|
#define WM_HEDITCTL (WM_PENWINFIRST+5)
|
|
|
|
#define HE_GETUNDERLINE 7
|
|
#define HE_SETUNDERLINE 8
|
|
#define HE_GETINKHANDLE 9
|
|
#define HE_SETINKMODE 10
|
|
#define HE_STOPINKMODE 11
|
|
#define HE_DEFAULTFONT 13
|
|
#define HE_CHARPOSITION 14
|
|
#define HE_CHAROFFSET 15
|
|
#define HE_GETBOXLAYOUT 20
|
|
#define HE_SETBOXLAYOUT 21
|
|
#ifdef JAPAN
|
|
#define HE_KKCONVERT 30
|
|
#define HE_GETKKCONVERT 31
|
|
#define HE_CANCELKKCONVERT 32
|
|
#define HE_FIXKKCONVERT 33
|
|
#define HE_GETKKSTATUS 34
|
|
#define HE_SETCONVERTRANGE 35
|
|
#define HE_GETCONVERTRANGE 36
|
|
#define HE_PUTCONVERTCHAR 37
|
|
#endif
|
|
#define HE_ENABLEALTLIST 40
|
|
#define HE_SHOWALTLIST 41
|
|
#define HE_HIDEALTLIST 42
|
|
#ifndef JAPAN
|
|
#define HE_GETLENSTYPE 43
|
|
#define HE_SETLENSTYPE 44
|
|
#endif
|
|
|
|
#ifdef JAPAN
|
|
|
|
#define HEKK_DEFAULT 0
|
|
#define HEKK_CONVERT 1
|
|
#define HEKK_CANDIDATE 2
|
|
#define HEKK_DBCSCHAR 3
|
|
#define HEKK_SBCSCHAR 4
|
|
#define HEKK_HIRAGANA 5
|
|
#define HEKK_KATAKANA 6
|
|
|
|
#define HEKKR_NOCONVERT 0
|
|
#define HEKKR_PRECONVERT 1
|
|
#define HEKKR_CONVERT 2
|
|
#endif
|
|
|
|
#define HEP_NORECOG 0
|
|
#define HEP_RECOG 1
|
|
#define HEP_WAITFORTAP 2
|
|
|
|
#define HN_ENDREC 4
|
|
#define HN_DELAYEDRECOGFAIL 5
|
|
#define HN_RESULT 20
|
|
#ifdef JAPAN
|
|
#define HN_ENDKKCONVERT 30
|
|
#endif
|
|
#define HN_BEGINDIALOG 40
|
|
|
|
#define HN_ENDDIALOG 41
|
|
|
|
#ifndef NOPENIEDIT
|
|
|
|
#define IE_GETMODIFY (EM_GETMODIFY)
|
|
#define IE_SETMODIFY (EM_SETMODIFY)
|
|
#define IE_CANUNDO (EM_CANUNDO)
|
|
#define IE_UNDO (EM_UNDO)
|
|
#define IE_EMPTYUNDOBUFFER (EM_EMPTYUNDOBUFFER)
|
|
|
|
#define IE_MSGFIRST (WM_USER+150)
|
|
|
|
#define IE_GETINK (IE_MSGFIRST+0)
|
|
#define IE_SETINK (IE_MSGFIRST+1)
|
|
#define IE_GETPENTIP (IE_MSGFIRST+2)
|
|
#define IE_SETPENTIP (IE_MSGFIRST+3)
|
|
#define IE_GETERASERTIP (IE_MSGFIRST+4)
|
|
#define IE_SETERASERTIP (IE_MSGFIRST+5)
|
|
#define IE_GETBKGND (IE_MSGFIRST+6)
|
|
#define IE_SETBKGND (IE_MSGFIRST+7)
|
|
#define IE_GETGRIDORIGIN (IE_MSGFIRST+8)
|
|
#define IE_SETGRIDORIGIN (IE_MSGFIRST+9)
|
|
#define IE_GETGRIDPEN (IE_MSGFIRST+10)
|
|
#define IE_SETGRIDPEN (IE_MSGFIRST+11)
|
|
#define IE_GETGRIDSIZE (IE_MSGFIRST+12)
|
|
#define IE_SETGRIDSIZE (IE_MSGFIRST+13)
|
|
#define IE_GETMODE (IE_MSGFIRST+14)
|
|
#define IE_SETMODE (IE_MSGFIRST+15)
|
|
#define IE_GETINKRECT (IE_MSGFIRST+16)
|
|
|
|
#define IE_GETAPPDATA (IE_MSGFIRST+34)
|
|
#define IE_SETAPPDATA (IE_MSGFIRST+35)
|
|
#define IE_GETDRAWOPTS (IE_MSGFIRST+36)
|
|
#define IE_SETDRAWOPTS (IE_MSGFIRST+37)
|
|
#define IE_GETFORMAT (IE_MSGFIRST+38)
|
|
#define IE_SETFORMAT (IE_MSGFIRST+39)
|
|
#define IE_GETINKINPUT (IE_MSGFIRST+40)
|
|
#define IE_SETINKINPUT (IE_MSGFIRST+41)
|
|
#define IE_GETNOTIFY (IE_MSGFIRST+42)
|
|
#define IE_SETNOTIFY (IE_MSGFIRST+43)
|
|
#define IE_GETRECOG (IE_MSGFIRST+44)
|
|
#define IE_SETRECOG (IE_MSGFIRST+45)
|
|
#define IE_GETSECURITY (IE_MSGFIRST+46)
|
|
#define IE_SETSECURITY (IE_MSGFIRST+47)
|
|
#define IE_GETSEL (IE_MSGFIRST+48)
|
|
#define IE_SETSEL (IE_MSGFIRST+49)
|
|
#define IE_DOCOMMAND (IE_MSGFIRST+50)
|
|
#define IE_GETCOMMAND (IE_MSGFIRST+51)
|
|
#define IE_GETCOUNT (IE_MSGFIRST+52)
|
|
#define IE_GETGESTURE (IE_MSGFIRST+53)
|
|
#define IE_GETMENU (IE_MSGFIRST+54)
|
|
#define IE_GETPAINTDC (IE_MSGFIRST+55)
|
|
#define IE_GETPDEVENT (IE_MSGFIRST+56)
|
|
#define IE_GETSELCOUNT (IE_MSGFIRST+57)
|
|
#define IE_GETSELITEMS (IE_MSGFIRST+58)
|
|
#define IE_GETSTYLE (IE_MSGFIRST+59)
|
|
#endif
|
|
|
|
#ifndef NOPENHEDIT
|
|
|
|
#define CIH_NOGDMSG 0x0001
|
|
#define CIH_NOACTIONHANDLE 0x0002
|
|
#define CIH_NOEDITTEXT 0x0004
|
|
#define CIH_NOFLASHCURSOR 0x0008
|
|
#endif
|
|
|
|
#ifndef NOPENBEDIT
|
|
|
|
#define HEAL_DEFAULT __MSABI_LONG(-1)
|
|
|
|
#define BEI_FACESIZE 32
|
|
#define BEIF_BOXCROSS 0x0001
|
|
|
|
#define BESC_DEFAULT 0
|
|
#define BESC_ROMANFIXED 1
|
|
#define BESC_KANJIFIXED 2
|
|
#define BESC_USERDEFINED 3
|
|
|
|
#define CIB_NOGDMSG 0x0001
|
|
#define CIB_NOACTIONHANDLE 0x0002
|
|
#define CIB_NOFLASHCURSOR 0x0004
|
|
#ifdef JAPAN
|
|
#define CIB_NOWRITING 0x0010
|
|
#endif
|
|
|
|
#define BXD_CELLWIDTH 12
|
|
#define BXD_CELLHEIGHT 16
|
|
#define BXD_BASEHEIGHT 13
|
|
#define BXD_BASEHORZ 0
|
|
#define BXD_MIDFROMBASE 0
|
|
#define BXD_CUSPHEIGHT 2
|
|
#define BXD_ENDCUSPHEIGHT 4
|
|
|
|
#define BXDK_CELLWIDTH 32
|
|
#define BXDK_CELLHEIGHT 32
|
|
#define BXDK_BASEHEIGHT 28
|
|
#define BXDK_BASEHORZ 0
|
|
#define BXDK_MIDFROMBASE 0
|
|
#define BXDK_CUSPHEIGHT 28
|
|
#define BXDK_ENDCUSPHEIGHT 10
|
|
#endif
|
|
|
|
#define WM_PENMISC (WM_PENWINFIRST+6)
|
|
|
|
#define PMSC_BEDITCHANGE 1
|
|
#define PMSC_GETPCMINFO 5
|
|
#define PMSC_SETPCMINFO 6
|
|
#define PMSC_GETINKINGINFO 7
|
|
#define PMSC_SETINKINGINFO 8
|
|
#define PMSC_GETHRC 9
|
|
#define PMSC_SETHRC 10
|
|
#define PMSC_GETSYMBOLCOUNT 11
|
|
#define PMSC_GETSYMBOLS 12
|
|
#define PMSC_SETSYMBOLS 13
|
|
#define PMSC_LOADPW 15
|
|
#define PMSC_INKSTOP 16
|
|
|
|
#define PMSCL_UNLOADED __MSABI_LONG(0)
|
|
#define PMSCL_LOADED __MSABI_LONG(1)
|
|
#define PMSCL_UNLOADING __MSABI_LONG(2)
|
|
|
|
#define WM_CTLINIT (WM_PENWINFIRST+7)
|
|
|
|
#define CTLINIT_HEDIT 1
|
|
#define CTLINIT_BEDIT 7
|
|
#define CTLINIT_IEDIT 9
|
|
#define CTLINIT_MAX 10
|
|
|
|
#define WM_PENEVENT (WM_PENWINFIRST+8)
|
|
|
|
#define PE_PENDOWN 1
|
|
#define PE_PENUP 2
|
|
#define PE_PENMOVE 3
|
|
#define PE_TERMINATING 4
|
|
#define PE_TERMINATED 5
|
|
#define PE_BUFFERWARNING 6
|
|
#define PE_BEGININPUT 7
|
|
#define PE_SETTARGETS 8
|
|
#define PE_BEGINDATA 9
|
|
#define PE_MOREDATA 10
|
|
#define PE_ENDDATA 11
|
|
#define PE_GETPCMINFO 12
|
|
#define PE_GETINKINGINFO 13
|
|
#define PE_ENDINPUT 14
|
|
|
|
#define PE_RESULT 15
|
|
#endif
|
|
|
|
#ifndef RC_INVOKED
|
|
|
|
#ifndef NOPENDRIVER
|
|
|
|
#define FPenUpX(x) ((WINBOOL)(((x) & BITPENUP)!=0))
|
|
#define GetWEventRef() (LOWORD(GetMessageExtraInfo()))
|
|
#endif
|
|
|
|
#ifndef NOPENALC
|
|
|
|
#define MpAlcB(lprc,i) ((lprc)->rgbfAlc[((i) & 0xff) >> 3])
|
|
#define MpIbf(i) ((BYTE)(1 << ((i) & 7)))
|
|
#define SetAlcBitAnsi(lprc,i) do {MpAlcB(lprc,i) |= MpIbf(i);} while (0)
|
|
#define ResetAlcBitAnsi(lprc,i) do {MpAlcB(lprc,i) &= ~MpIbf(i);} while (0)
|
|
#define IsAlcBitAnsi(lprc,i) ((MpAlcB(lprc,i) & MpIbf(i))!=0)
|
|
#endif
|
|
|
|
#ifndef NOPENDATA
|
|
|
|
#define DrawPenDataFmt(hdc,lprect,hpndt) DrawPenDataEx(hdc,lprect,hpndt,0,IX_END,0,IX_END,NULL,NULL,0)
|
|
#endif
|
|
|
|
#ifndef NOPENHRC
|
|
|
|
#define dwDiffAT(at1,at2) (1000*((at2).sec - (at1).sec) - (DWORD)(at1).ms + (DWORD)(at2).ms)
|
|
#define FLTAbsTime(at1,at2) ((at1).sec < (at2).sec || ((at1).sec==(at2).sec && (at1).ms < (at2).ms))
|
|
#define FLTEAbsTime(at1,at2) ((at1).sec < (at2).sec || ((at1).sec==(at2).sec && (at1).ms <= (at2).ms))
|
|
#define FEQAbsTime(at1,at2) ((at1).sec==(at2).sec && (at1).ms==(at2).ms)
|
|
#define FAbsTimeInInterval(at,lpi) (FLTEAbsTime((lpi)->atBegin,at) && FLTEAbsTime(at,(lpi)->atEnd))
|
|
#define FIntervalInInterval(lpiT,lpiS) (FLTEAbsTime((lpiS)->atBegin,(lpiT)->atBegin) && FLTEAbsTime((lpiT)->atEnd,(lpiS)->atEnd))
|
|
#define FIntervalXInterval(lpiT,lpiS) (!(FLTAbsTime((lpiT)->atEnd,(lpiS)->atBegin) || FLTAbsTime((lpiS)->atEnd,(lpiT)->atBegin)))
|
|
#define dwDurInterval(lpi) dwDiffAT((lpi)->atBegin,(lpi)->atEnd)
|
|
#define MakeAbsTime(lpat,sec,ms) do { (lpat)->sec = sec + ((ms) / 1000); (lpat)->ms = (ms) % 1000; } while (0)
|
|
|
|
#define FIsSpecial(syv) (HIWORD((syv))==SYVHI_SPECIAL)
|
|
#define FIsAnsi(syv) (HIWORD((syv))==SYVHI_ANSI)
|
|
#define FIsGesture(syv) (HIWORD((syv))==SYVHI_GESTURE)
|
|
#define FIsKanji(syv) (HIWORD((syv))==SYVHI_KANJI)
|
|
#define FIsShape(syv) (HIWORD((syv))==SYVHI_SHAPE)
|
|
#define FIsUniCode(syv) (HIWORD((syv))==SYVHI_UNICODE)
|
|
#define FIsVKey(syv) (HIWORD((syv))==SYVHI_VKEY)
|
|
|
|
#define ChSyvToAnsi(syv) ((BYTE) (LOBYTE(LOWORD((syv)))))
|
|
#define WSyvToKanji(syv) ((WORD) (LOWORD((syv))))
|
|
#define SyvCharacterToSymbol(c) ((LONG)(unsigned char)(c) | 0x00010000)
|
|
#define SyvKanjiToSymbol(c) ((LONG)(UINT)(c) | 0x00030000)
|
|
|
|
#define FIsSelectGesture(syv) ((syv) >= SYVSELECTFIRST && (syv) <= SYVSELECTLAST)
|
|
|
|
#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)
|
|
|
|
#define FIsAnsiGesture(syv) ((syv)==SYV_BACKSPACE || (syv)==SYV_TAB || (syv)==SYV_RETURN || (syv)==SYV_SPACE)
|
|
#endif
|
|
|
|
#ifndef NOPENINKPUT
|
|
#define SubPenMsgFromWpLp(wp,lp) (LOWORD(wp))
|
|
#define EventRefFromWpLp(wp,lp) (HIWORD(wp))
|
|
#define TerminationFromWpLp(wp,lp) ((int)HIWORD(wp))
|
|
#define HpcmFromWpLp(wp,lp) ((HPCM)(lp))
|
|
#endif
|
|
|
|
#ifndef NOPENTARGET
|
|
#define HwndFromHtrg(htrg) ((HWND)(DWORD)(htrg))
|
|
#define HtrgFromHwnd(hwnd) ((HTRG)(UINT)(hwnd))
|
|
#endif
|
|
|
|
typedef LONG ALC;
|
|
typedef int CL;
|
|
typedef UINT HKP;
|
|
typedef int REC;
|
|
typedef LONG SYV;
|
|
|
|
#ifndef DECLARE_HANDLE32
|
|
#define DECLARE_HANDLE32(name) struct name##__ { int unused; }; typedef const struct name##__ *name
|
|
#endif
|
|
|
|
DECLARE_HANDLE32(HTRG);
|
|
DECLARE_HANDLE(HPCM);
|
|
DECLARE_HANDLE(HPENDATA);
|
|
DECLARE_HANDLE(HREC);
|
|
|
|
typedef ALC *LPALC;
|
|
typedef LPVOID LPOEM;
|
|
typedef SYV *LPSYV;
|
|
typedef HPENDATA *LPHPENDATA;
|
|
|
|
typedef int (CALLBACK *ENUMPROC)(LPSYV,int,VOID *);
|
|
typedef int (CALLBACK *LPDF)(int,LPVOID,LPVOID,int,DWORD,DWORD);
|
|
typedef WINBOOL (CALLBACK *RCYIELDPROC)(VOID);
|
|
|
|
typedef struct tagABSTIME {
|
|
DWORD sec;
|
|
UINT ms;
|
|
} ABSTIME,*LPABSTIME;
|
|
|
|
#ifndef NOPENHEDIT
|
|
typedef struct tagCTLINITHEDIT {
|
|
DWORD cbSize;
|
|
HWND hwnd;
|
|
int id;
|
|
DWORD dwFlags;
|
|
DWORD dwReserved;
|
|
} CTLINITHEDIT,*LPCTLINITHEDIT;
|
|
#endif
|
|
|
|
#ifndef NOPENBEDIT
|
|
|
|
typedef struct tagBOXLAYOUT {
|
|
int cyCusp;
|
|
int cyEndCusp;
|
|
UINT style;
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
DWORD dwReserved3;
|
|
} BOXLAYOUT,*LPBOXLAYOUT;
|
|
|
|
typedef struct tagCTLINITBEDIT {
|
|
DWORD cbSize;
|
|
HWND hwnd;
|
|
int id;
|
|
WORD wSizeCategory;
|
|
WORD wFlags;
|
|
DWORD dwReserved;
|
|
} CTLINITBEDIT,*LPCTLINITBEDIT;
|
|
|
|
typedef struct tagBOXEDITINFO {
|
|
int cxBox;
|
|
int cyBox;
|
|
int cxBase;
|
|
int cyBase;
|
|
int cyMid;
|
|
BOXLAYOUT boxlayout;
|
|
UINT wFlags;
|
|
BYTE szFaceName[BEI_FACESIZE];
|
|
UINT wFontHeight;
|
|
UINT rgwReserved[8];
|
|
} BOXEDITINFO,*LPBOXEDITINFO;
|
|
#endif
|
|
|
|
#ifndef NOPENCTL
|
|
|
|
typedef struct tagRECTOFS {
|
|
int dLeft;
|
|
int dTop;
|
|
int dRight;
|
|
int dBottom;
|
|
} RECTOFS,*LPRECTOFS;
|
|
#endif
|
|
|
|
#ifndef NOPENDATA
|
|
typedef struct tagPENDATAHEADER {
|
|
UINT wVersion;
|
|
UINT cbSizeUsed;
|
|
UINT cStrokes;
|
|
UINT cPnt;
|
|
UINT cPntStrokeMax;
|
|
RECT rectBound;
|
|
UINT wPndts;
|
|
int nInkWidth;
|
|
DWORD rgbInk;
|
|
} PENDATAHEADER,*LPPENDATAHEADER,*LPPENDATA;
|
|
|
|
typedef struct tagSTROKEINFO {
|
|
UINT cPnt;
|
|
UINT cbPnts;
|
|
UINT wPdk;
|
|
DWORD dwTick;
|
|
} STROKEINFO,*LPSTROKEINFO;
|
|
|
|
typedef struct tagPENTIP {
|
|
DWORD cbSize;
|
|
BYTE btype;
|
|
BYTE bwidth;
|
|
BYTE bheight;
|
|
BYTE bOpacity;
|
|
COLORREF rgb;
|
|
DWORD dwFlags;
|
|
DWORD dwReserved;
|
|
} PENTIP,*LPPENTIP;
|
|
|
|
typedef WINBOOL (CALLBACK *ANIMATEPROC)(HPENDATA,UINT,UINT,UINT *,LPARAM);
|
|
|
|
typedef struct tagANIMATEINFO {
|
|
DWORD cbSize;
|
|
UINT uSpeedPct;
|
|
UINT uPeriodCB;
|
|
UINT fuFlags;
|
|
LPARAM lParam;
|
|
DWORD dwReserved;
|
|
} ANIMATEINFO,*LPANIMATEINFO;
|
|
#endif
|
|
|
|
#ifndef NOPENDRIVER
|
|
typedef struct tagOEMPENINFO {
|
|
UINT wPdt;
|
|
UINT wValueMax;
|
|
UINT wDistinct;
|
|
} OEMPENINFO,*LPOEMPENINFO;
|
|
|
|
typedef struct tagPENPACKET {
|
|
UINT wTabletX;
|
|
UINT wTabletY;
|
|
UINT wPDK;
|
|
UINT rgwOemData[MAXOEMDATAWORDS];
|
|
} PENPACKET,*LPPENPACKET;
|
|
|
|
typedef struct tagOEM_PENPACKET {
|
|
UINT wTabletX;
|
|
UINT wTabletY;
|
|
UINT wPDK;
|
|
UINT rgwOemData[MAXOEMDATAWORDS];
|
|
DWORD dwTime;
|
|
} OEM_PENPACKET,*LPOEM_PENPACKET;
|
|
|
|
typedef struct tagPENINFO {
|
|
UINT cxRawWidth;
|
|
UINT cyRawHeight;
|
|
UINT wDistinctWidth;
|
|
UINT wDistinctHeight;
|
|
int nSamplingRate;
|
|
int nSamplingDist;
|
|
LONG lPdc;
|
|
int cPens;
|
|
int cbOemData;
|
|
OEMPENINFO rgoempeninfo[MAXOEMDATAWORDS];
|
|
UINT rgwReserved[7];
|
|
UINT fuOEM;
|
|
} PENINFO,*LPPENINFO;
|
|
|
|
typedef struct tagCALBSTRUCT {
|
|
int wOffsetX;
|
|
int wOffsetY;
|
|
int wDistinctWidth;
|
|
int wDistinctHeight;
|
|
} CALBSTRUCT,*LPCALBSTRUCT;
|
|
|
|
typedef WINBOOL (CALLBACK *LPFNRAWHOOK)(LPPENPACKET);
|
|
#endif
|
|
|
|
#ifndef NOPENHRC
|
|
DECLARE_HANDLE32(HRC);
|
|
DECLARE_HANDLE32(HRCRESULT);
|
|
DECLARE_HANDLE32(HWL);
|
|
DECLARE_HANDLE32(HRECHOOK);
|
|
|
|
typedef HRC *LPHRC;
|
|
typedef HRCRESULT *LPHRCRESULT;
|
|
typedef HWL *LPHWL;
|
|
|
|
typedef WINBOOL (CALLBACK *HRCRESULTHOOKPROC)(HREC,HRC,UINT,UINT,UINT,LPVOID);
|
|
|
|
DECLARE_HANDLE(HINKSET);
|
|
typedef HINKSET *LPHINKSET;
|
|
|
|
typedef struct tagINTERVAL {
|
|
ABSTIME atBegin;
|
|
ABSTIME atEnd;
|
|
} INTERVAL,*LPINTERVAL;
|
|
|
|
typedef struct tagBOXRESULTS {
|
|
UINT indxBox;
|
|
HINKSET hinksetBox;
|
|
SYV rgSyv[1];
|
|
} BOXRESULTS,*LPBOXRESULTS;
|
|
|
|
typedef struct tagGUIDE {
|
|
int xOrigin;
|
|
int yOrigin;
|
|
int cxBox;
|
|
int cyBox;
|
|
int cxBase;
|
|
int cyBase;
|
|
int cHorzBox;
|
|
int cVertBox;
|
|
int cyMid;
|
|
} GUIDE,*LPGUIDE;
|
|
#endif
|
|
|
|
#ifndef NOPENIEDIT
|
|
typedef struct tagCTLINITIEDIT {
|
|
DWORD cbSize;
|
|
HWND hwnd;
|
|
int id;
|
|
WORD ieb;
|
|
WORD iedo;
|
|
WORD iei;
|
|
WORD ien;
|
|
WORD ierec;
|
|
WORD ies;
|
|
WORD iesec;
|
|
WORD pdts;
|
|
HPENDATA hpndt;
|
|
HGDIOBJ hgdiobj;
|
|
HPEN hpenGrid;
|
|
POINT ptOrgGrid;
|
|
WORD wVGrid;
|
|
WORD wHGrid;
|
|
DWORD dwApp;
|
|
DWORD dwReserved;
|
|
} CTLINITIEDIT,*LPCTLINITIEDIT;
|
|
|
|
typedef struct tagPDEVENT {
|
|
DWORD cbSize;
|
|
HWND hwnd;
|
|
UINT wm;
|
|
WPARAM wParam;
|
|
LPARAM lParam;
|
|
POINT pt;
|
|
WINBOOL fPen;
|
|
LONG lExInfo;
|
|
DWORD dwReserved;
|
|
} PDEVENT,*LPPDEVENT;
|
|
|
|
typedef struct tagSTRKFMT {
|
|
DWORD cbSize;
|
|
UINT iesf;
|
|
UINT iStrk;
|
|
PENTIP tip;
|
|
DWORD dwUser;
|
|
DWORD dwReserved;
|
|
} STRKFMT,*LPSTRKFMT;
|
|
#endif
|
|
|
|
#ifndef NOPENINKPUT
|
|
|
|
typedef struct tagPCMINFO {
|
|
DWORD cbSize;
|
|
DWORD dwPcm;
|
|
RECT rectBound;
|
|
RECT rectExclude;
|
|
HRGN hrgnBound;
|
|
HRGN hrgnExclude;
|
|
DWORD dwTimeout;
|
|
} PCMINFO,*LPPCMINFO;
|
|
|
|
typedef struct tagINKINGINFO {
|
|
DWORD cbSize;
|
|
UINT wFlags;
|
|
PENTIP tip;
|
|
RECT rectClip;
|
|
RECT rectInkStop;
|
|
HRGN hrgnClip;
|
|
HRGN hrgnInkStop;
|
|
} INKINGINFO,*LPINKINGINFO;
|
|
#endif
|
|
|
|
#ifndef NOPENRC1
|
|
|
|
typedef struct tagSYC {
|
|
UINT wStrokeFirst;
|
|
UINT wPntFirst;
|
|
UINT wStrokeLast;
|
|
UINT wPntLast;
|
|
WINBOOL fLastSyc;
|
|
} SYC,*LPSYC;
|
|
|
|
typedef struct tagSYE {
|
|
SYV syv;
|
|
LONG lRecogVal;
|
|
CL cl;
|
|
int iSyc;
|
|
} SYE,*LPSYE;
|
|
|
|
typedef struct tagSYG {
|
|
POINT rgpntHotSpots[MAXHOTSPOT];
|
|
int cHotSpot;
|
|
int nFirstBox;
|
|
LONG lRecogVal;
|
|
LPSYE lpsye;
|
|
int cSye;
|
|
LPSYC lpsyc;
|
|
int cSyc;
|
|
} SYG,*LPSYG;
|
|
|
|
typedef struct tagRC {
|
|
HREC hrec;
|
|
HWND hwnd;
|
|
UINT wEventRef;
|
|
UINT wRcPreferences;
|
|
LONG lRcOptions;
|
|
RCYIELDPROC lpfnYield;
|
|
BYTE lpUser[cbRcUserMax];
|
|
UINT wCountry;
|
|
UINT wIntlPreferences;
|
|
char lpLanguage[cbRcLanguageMax];
|
|
LPDF rglpdf[MAXDICTIONARIES];
|
|
UINT wTryDictionary;
|
|
CL clErrorLevel;
|
|
ALC alc;
|
|
ALC alcPriority;
|
|
BYTE rgbfAlc[cbRcrgbfAlcMax];
|
|
UINT wResultMode;
|
|
UINT wTimeOut;
|
|
LONG lPcm;
|
|
RECT rectBound;
|
|
RECT rectExclude;
|
|
GUIDE guide;
|
|
UINT wRcOrient;
|
|
UINT wRcDirect;
|
|
int nInkWidth;
|
|
COLORREF rgbInk;
|
|
DWORD dwAppParam;
|
|
DWORD dwDictParam;
|
|
DWORD dwRecognizer;
|
|
UINT rgwReserved[cwRcReservedMax];
|
|
} RC,*LPRC;
|
|
|
|
typedef struct tagRCRESULT {
|
|
SYG syg;
|
|
UINT wResultsType;
|
|
int cSyv;
|
|
LPSYV lpsyv;
|
|
HANDLE hSyv;
|
|
int nBaseLine;
|
|
int nMidLine;
|
|
HPENDATA hpendata;
|
|
RECT rectBoundInk;
|
|
POINT pntEnd;
|
|
LPRC lprc;
|
|
} RCRESULT,*LPRCRESULT;
|
|
|
|
typedef int (CALLBACK *LPFUNCRESULTS)(LPRCRESULT,REC);
|
|
#endif
|
|
|
|
#ifndef NOPENTARGET
|
|
|
|
typedef struct tagTARGET {
|
|
DWORD dwFlags;
|
|
DWORD idTarget;
|
|
HTRG htrgTarget;
|
|
RECTL rectBound;
|
|
DWORD dwData;
|
|
RECTL rectBoundInk;
|
|
RECTL rectBoundLastInk;
|
|
} TARGET,*LPTARGET;
|
|
|
|
typedef struct tagTARGINFO {
|
|
DWORD cbSize;
|
|
DWORD dwFlags;
|
|
HTRG htrgOwner;
|
|
WORD cTargets;
|
|
WORD iTargetLast;
|
|
TARGET rgTarget[1];
|
|
} TARGINFO,*LPTARGINFO;
|
|
|
|
typedef struct tagINPPARAMS {
|
|
DWORD cbSize;
|
|
DWORD dwFlags;
|
|
HPENDATA hpndt;
|
|
TARGET target;
|
|
} INPPARAMS,*LPINPPARAMS;
|
|
#endif
|
|
|
|
#ifdef JAPAN
|
|
typedef struct tagCWX {
|
|
DWORD cbSize;
|
|
WORD wApplyFlags;
|
|
HWND hwndText;
|
|
HRC hrc;
|
|
char szCaption[CBCAPTIONCWX];
|
|
DWORD dwEditStyle;
|
|
DWORD dwSel;
|
|
DWORD dwFlags;
|
|
WORD ixkb;
|
|
WORD rgState[CKBCWX];
|
|
POINT ptUL;
|
|
SIZE sizeHW;
|
|
} CWX,*LPCWX;
|
|
#endif
|
|
|
|
LRESULT CALLBACK DefPenWindowProc(HWND,UINT,WPARAM,LPARAM);
|
|
|
|
#ifndef NOPENAPPS
|
|
WINBOOL WINAPI ShowKeyboard(HWND,UINT,LPPOINT,LPSKBINFO);
|
|
#endif
|
|
|
|
#ifndef NOPENDATA
|
|
|
|
#ifndef NOPENAPIFUN
|
|
LPPENDATA WINAPI BeginEnumStrokes(HPENDATA);
|
|
LPPENDATA WINAPI EndEnumStrokes(HPENDATA);
|
|
HPENDATA WINAPI CompactPenData(HPENDATA,UINT);
|
|
HPENDATA WINAPI CreatePenData(LPPENINFO,int,UINT,UINT);
|
|
VOID WINAPI DrawPenData(HDC,LPRECT,HPENDATA);
|
|
WINBOOL WINAPI GetPenDataStroke(LPPENDATA,UINT,LPPOINT *,LPVOID *,LPSTROKEINFO);
|
|
#endif
|
|
HPENDATA WINAPI AddPointsPenData(HPENDATA,LPPOINT,LPVOID,LPSTROKEINFO);
|
|
int WINAPI CompressPenData(HPENDATA,UINT,DWORD);
|
|
HPENDATA WINAPI CreatePenDataEx(LPPENINFO,UINT,UINT,UINT);
|
|
HRGN WINAPI CreatePenDataRegion(HPENDATA,UINT);
|
|
WINBOOL WINAPI DestroyPenData(HPENDATA);
|
|
int WINAPI DrawPenDataEx(HDC,LPRECT,HPENDATA,UINT,UINT,UINT,UINT,ANIMATEPROC,LPANIMATEINFO,UINT);
|
|
HPENDATA WINAPI DuplicatePenData(HPENDATA,UINT);
|
|
int WINAPI ExtractPenDataPoints(HPENDATA,UINT,UINT,UINT,LPPOINT,LPVOID,UINT);
|
|
int WINAPI ExtractPenDataStrokes(HPENDATA,UINT,LPARAM,LPHPENDATA,UINT);
|
|
int WINAPI GetPenDataAttributes(HPENDATA,LPVOID,UINT);
|
|
WINBOOL WINAPI GetPenDataInfo(HPENDATA,LPPENDATAHEADER,LPPENINFO,DWORD);
|
|
WINBOOL WINAPI GetPointsFromPenData(HPENDATA,UINT,UINT,UINT,LPPOINT);
|
|
int WINAPI GetStrokeAttributes(HPENDATA,UINT,LPVOID,UINT);
|
|
int WINAPI GetStrokeTableAttributes(HPENDATA,UINT,LPVOID,UINT);
|
|
int WINAPI HitTestPenData(HPENDATA,LPPOINT,UINT,UINT *,UINT *);
|
|
int WINAPI InsertPenData(HPENDATA,HPENDATA,UINT);
|
|
int WINAPI InsertPenDataPoints(HPENDATA,UINT,UINT,UINT,LPPOINT,LPVOID);
|
|
int WINAPI InsertPenDataStroke(HPENDATA,UINT,LPPOINT,LPVOID,LPSTROKEINFO);
|
|
WINBOOL WINAPI MetricScalePenData(HPENDATA,UINT);
|
|
WINBOOL WINAPI OffsetPenData(HPENDATA,int,int);
|
|
LONG WINAPI PenDataFromBuffer(LPHPENDATA,UINT,LPBYTE,LONG,LPDWORD);
|
|
LONG WINAPI PenDataToBuffer(HPENDATA,LPBYTE,LONG,LPDWORD);
|
|
WINBOOL WINAPI RedisplayPenData(HDC,HPENDATA,LPPOINT,LPPOINT,int,DWORD);
|
|
int WINAPI RemovePenDataStrokes(HPENDATA,UINT,UINT);
|
|
WINBOOL WINAPI ResizePenData(HPENDATA,LPRECT);
|
|
int WINAPI SetStrokeAttributes(HPENDATA,UINT,LPARAM,UINT);
|
|
int WINAPI SetStrokeTableAttributes(HPENDATA,UINT,LPARAM,UINT);
|
|
int WINAPI TrimPenData(HPENDATA,DWORD,DWORD);
|
|
#endif
|
|
|
|
#ifndef NOPENDICT
|
|
WINBOOL WINAPI DictionarySearch(LPRC,LPSYE,int,LPSYV,int);
|
|
#endif
|
|
|
|
#ifndef NOPENDRIVER
|
|
|
|
#ifndef NOPENAPIFUN
|
|
WINBOOL WINAPI EndPenCollection(REC);
|
|
REC WINAPI GetPenHwData(LPPOINT,LPVOID,int,UINT,LPSTROKEINFO);
|
|
REC WINAPI GetPenHwEventData(UINT,UINT,LPPOINT,LPVOID,int,LPSTROKEINFO);
|
|
WINBOOL WINAPI SetPenHook(HKP,LPFNRAWHOOK);
|
|
VOID WINAPI UpdatePenInfo(LPPENINFO);
|
|
#endif
|
|
WINBOOL WINAPI GetPenAsyncState(UINT);
|
|
WINBOOL WINAPI IsPenEvent(UINT,LONG);
|
|
#endif
|
|
|
|
#ifndef NOPENHRC
|
|
int WINAPI AddPenDataHRC(HRC,HPENDATA);
|
|
int WINAPI AddPenInputHRC(HRC,LPPOINT,LPVOID,UINT,LPSTROKEINFO);
|
|
int WINAPI AddWordsHWL(HWL,LPSTR,UINT);
|
|
int WINAPI ConfigHREC(HREC,UINT,WPARAM,LPARAM);
|
|
HRC WINAPI CreateCompatibleHRC(HRC,HREC);
|
|
HWL WINAPI CreateHWL(HREC,LPSTR,UINT,DWORD);
|
|
HINKSET WINAPI CreateInksetHRCRESULT(HRCRESULT,UINT,UINT);
|
|
HPENDATA WINAPI CreatePenDataHRC(HRC);
|
|
int WINAPI DestroyHRC(HRC);
|
|
int WINAPI DestroyHRCRESULT(HRCRESULT);
|
|
int WINAPI DestroyHWL(HWL);
|
|
int WINAPI EnableGestureSetHRC(HRC,SYV,WINBOOL);
|
|
int WINAPI EnableSystemDictionaryHRC(HRC,WINBOOL);
|
|
int WINAPI EndPenInputHRC(HRC);
|
|
int WINAPI GetAlphabetHRC(HRC,LPALC,LPBYTE);
|
|
int WINAPI GetAlphabetPriorityHRC(HRC,LPALC,LPBYTE);
|
|
int WINAPI GetAlternateWordsHRCRESULT(HRCRESULT,UINT,UINT,LPHRCRESULT,UINT);
|
|
int WINAPI GetBoxMappingHRCRESULT(HRCRESULT,UINT,UINT,UINT *);
|
|
int WINAPI GetBoxResultsHRC(HRC,UINT,UINT,UINT,LPBOXRESULTS,WINBOOL);
|
|
int WINAPI GetGuideHRC(HRC,LPGUIDE,UINT *);
|
|
int WINAPI GetHotspotsHRCRESULT(HRCRESULT,UINT,LPPOINT,UINT);
|
|
HREC WINAPI GetHRECFromHRC(HRC);
|
|
int WINAPI GetInternationalHRC(HRC,UINT *,LPSTR,UINT *,UINT *);
|
|
int WINAPI GetMaxResultsHRC(HRC);
|
|
int WINAPI GetResultsHRC(HRC,UINT,LPHRCRESULT,UINT);
|
|
int WINAPI GetSymbolCountHRCRESULT(HRCRESULT);
|
|
int WINAPI GetSymbolsHRCRESULT(HRCRESULT,UINT,LPSYV,UINT);
|
|
int WINAPI GetWordlistHRC(HRC,LPHWL);
|
|
int WINAPI GetWordlistCoercionHRC(HRC);
|
|
int WINAPI ProcessHRC(HRC,DWORD);
|
|
int WINAPI ReadHWL(HWL,HFILE);
|
|
int WINAPI SetAlphabetHRC(HRC,ALC,LPBYTE);
|
|
int WINAPI SetAlphabetPriorityHRC(HRC,ALC,LPBYTE);
|
|
int WINAPI SetBoxAlphabetHRC(HRC,LPALC,UINT);
|
|
int WINAPI SetGuideHRC(HRC,LPGUIDE,UINT);
|
|
int WINAPI SetInternationalHRC(HRC,UINT,LPCSTR,UINT,UINT);
|
|
int WINAPI SetMaxResultsHRC(HRC,UINT);
|
|
HRECHOOK WINAPI SetResultsHookHREC(HREC,HRCRESULTHOOKPROC);
|
|
int WINAPI SetWordlistCoercionHRC(HRC,UINT);
|
|
int WINAPI SetWordlistHRC(HRC,HWL);
|
|
int WINAPI TrainHREC(HREC,LPSYV,UINT,HPENDATA,UINT);
|
|
int WINAPI UnhookResultsHookHREC(HREC,HRECHOOK);
|
|
int WINAPI WriteHWL(HWL,HFILE);
|
|
HREC WINAPI InstallRecognizer(LPSTR);
|
|
VOID WINAPI UninstallRecognizer(HREC);
|
|
WINBOOL WINAPI AddInksetInterval(HINKSET,LPINTERVAL);
|
|
HINKSET WINAPI CreateInkset(UINT);
|
|
WINBOOL WINAPI DestroyInkset(HINKSET);
|
|
int WINAPI GetInksetInterval(HINKSET,UINT,LPINTERVAL);
|
|
int WINAPI GetInksetIntervalCount(HINKSET);
|
|
int WINAPI CharacterToSymbol(LPSTR,int,LPSYV);
|
|
WINBOOL WINAPI SymbolToCharacter(LPSYV,int,LPSTR,LPINT);
|
|
#endif
|
|
|
|
#ifndef NOPENINKPUT
|
|
int WINAPI DoDefaultPenInput(HWND,UINT);
|
|
int WINAPI GetPenInput(HPCM,LPPOINT,LPVOID,UINT,UINT,LPSTROKEINFO);
|
|
int WINAPI PeekPenInput(HPCM,UINT,LPPOINT,LPVOID,UINT);
|
|
int WINAPI StartInking(HPCM,UINT,LPINKINGINFO);
|
|
HPCM WINAPI StartPenInput(HWND,UINT,LPPCMINFO,LPINT);
|
|
int WINAPI StopInking(HPCM);
|
|
int WINAPI StopPenInput(HPCM,UINT,int);
|
|
#endif
|
|
|
|
#ifndef NOPENMISC
|
|
VOID WINAPI BoundingRectFromPoints(LPPOINT,UINT,LPRECT);
|
|
WINBOOL WINAPI DPtoTP(LPPOINT,int);
|
|
UINT WINAPI GetPenAppFlags(VOID);
|
|
VOID WINAPI SetPenAppFlags(UINT,UINT);
|
|
LONG WINAPI GetPenMiscInfo(WPARAM,LPARAM);
|
|
UINT WINAPI GetVersionPenWin(VOID);
|
|
LONG WINAPI SetPenMiscInfo(WPARAM,LPARAM);
|
|
WINBOOL WINAPI TPtoDP(LPPOINT,int);
|
|
WINBOOL WINAPI CorrectWriting(HWND,LPSTR,UINT,LPVOID,DWORD,DWORD);
|
|
#ifdef JAPAN
|
|
int WINAPI CorrectWritingEx(HWND,LPSTR,UINT,LPCWX);
|
|
#endif
|
|
#ifdef JAPAN
|
|
HANDLE WINAPI GetPenResource(WPARAM);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef NOPENRC1
|
|
VOID WINAPI EmulatePen(WINBOOL);
|
|
UINT WINAPI EnumSymbols(LPSYG,UINT,ENUMPROC,LPVOID);
|
|
WINBOOL WINAPI ExecuteGesture(HWND,SYV,LPRCRESULT);
|
|
VOID WINAPI FirstSymbolFromGraph(LPSYG,LPSYV,int,LPINT);
|
|
UINT WINAPI GetGlobalRC(LPRC,LPSTR,LPSTR,int);
|
|
int WINAPI GetSymbolCount(LPSYG);
|
|
int WINAPI GetSymbolMaxLength(LPSYG);
|
|
VOID WINAPI InitRC(HWND,LPRC);
|
|
REC WINAPI ProcessWriting(HWND,LPRC);
|
|
REC WINAPI Recognize(LPRC);
|
|
REC WINAPI RecognizeData(LPRC,HPENDATA);
|
|
UINT WINAPI SetGlobalRC(LPRC,LPSTR,LPSTR);
|
|
WINBOOL WINAPI SetRecogHook(UINT,UINT,HWND);
|
|
WINBOOL WINAPI TrainContext(LPRCRESULT,LPSYE,int,LPSYC,int);
|
|
WINBOOL WINAPI TrainInk(LPRC,HPENDATA,LPSYV);
|
|
|
|
VOID WINAPI CloseRecognizer(VOID);
|
|
UINT WINAPI ConfigRecognizer(UINT,WPARAM,LPARAM);
|
|
WINBOOL WINAPI InitRecognizer(LPRC);
|
|
REC WINAPI RecognizeDataInternal(LPRC,HPENDATA,LPFUNCRESULTS);
|
|
REC WINAPI RecognizeInternal(LPRC,LPFUNCRESULTS);
|
|
WINBOOL WINAPI TrainContextInternal(LPRCRESULT,LPSYE,int,LPSYC,int);
|
|
WINBOOL WINAPI TrainInkInternal(LPRC,HPENDATA,LPSYV);
|
|
#endif
|
|
|
|
#ifndef NOPENTARGET
|
|
int WINAPI TargetPoints(LPTARGINFO,LPPOINT,DWORD,UINT,LPSTROKEINFO);
|
|
#endif
|
|
|
|
#ifndef NOPENVIRTEVENT
|
|
|
|
VOID WINAPI AtomicVirtualEvent(WINBOOL);
|
|
VOID WINAPI PostVirtualKeyEvent(UINT,WINBOOL);
|
|
VOID WINAPI PostVirtualMouseEvent(UINT,int,int);
|
|
#endif
|
|
|
|
#ifdef JAPAN
|
|
WINBOOL WINAPI KKConvert(HWND hwndConvert,HWND hwndCaller,LPSTR lpBuf,UINT cbBuf,LPPOINT lpPnt);
|
|
#endif
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|