#define  MAINWINCLASS            "ISMMAINCLS"
#define  MAINWINNAME             "Input Subsystem Messages Sample"
#define  RESOURCEDLL             "ISM_DLL.DLL"

#define  WM_PROCESSDIALOG        WM_USER + 1
#define  WM_INITMYWINDOW         WM_USER + 2

#define  ID_MAIN_RES             1000
#define  ID_HELP                 1100
#define  ID_QUIT                 1101
#define  ID_MENUITEM             1102

#define  ID_TEST_RES             1200
#define  ID_INKEDITGESTUREHELP   1201

#define  ID_STATUS_TEXT          8000
#define  ID_STATUS_BOX           8001
#define  ID_CHILD_BOX            8002
#define  ID_VALUE_SET_INK        8003

#define  STATUS_BAR_HEIGHT         20

#define  ID_TEST                10000
#define  ID_ISMF01_S_000        10100
#define  ID_ISMF01_T_001        10101
#define  ID_ISMF01_T_002        10102
#define  ID_ISMF01_T_003        10103
#define  ID_ISMF01_T_004        10104
#define  ID_ISMF01_T_005        10105
#define  ID_ISMF01_T_006        10106
#define  ID_ISMF01_T_007        10107
#define  ID_ISMF01_T_008        10108
#define  ID_ISMF01_T_009        10109
#define  ID_ISMF01_T_010        10110
#define  ID_ISMF01_T_011        10111

#define  ID_ISMF02_S_000        10200
#define  ID_ISMF02_T_001        10201
#define  ID_ISMF02_T_002        10202
#define  ID_ISMF02_T_003        10203

#define  ID_ISMF03_S_000        10300
#define  ID_ISMF03_T_001        10301
#define  ID_ISMF03_T_002        10302

#define  ID_ISMF04_S_000        10400
#define  ID_ISMF04_T_001        10401

#define  ID_ISMF05_S_000        10500
#define  ID_ISMF05_T_001        10501
#define  ID_ISMF05_T_002        10502

#define  ID_ISMF06_S_000        10600
#define  ID_ISMF06_T_001        10601
#define  ID_ISMF06_T_002        10602

#define  ID_ISMF07_S_000        10700
#define  ID_ISMF07_T_001        10701
#define  ID_ISMF07_T_002        10702

#define  ID_ISMF10_S_000        11000
#define  ID_ISMF10_T_001        11001

#define  ID_ISMF11_S_000        11100
#define  ID_ISMF11_T_001        11101

#define  ID_ISMF12_S_000        11200
#define  ID_ISMF12_T_001        11201

#define  ID_ISMF13_T_001        11301

LONG     InkColor[16]  = {
                            CLR_BLACK,
                            CLR_WHITE,
                            CLR_BLUE,
                            CLR_DARKBLUE,
                            CLR_RED,
                            CLR_DARKRED,
                            CLR_PINK,
                            CLR_DARKPINK,
                            CLR_GREEN,
                            CLR_DARKGREEN,
                            CLR_YELLOW,
                            CLR_BROWN,
                            CLR_CYAN,
                            CLR_DARKCYAN,
                            CLR_PALEGRAY,
                            CLR_DARKGRAY };

typedef struct
{
   HWND     StatusWindow;
   HWND     MyWindow;
   HAB      hab;
   HWND     InkColors;
   LONG     CurrentColor;
   HDC      hdc;
   HPS      hps;
   HPS      hpsPaint;
   BOOL     freehand;
   BOOL     NewSegment;
   RECTL    Boundary;
   LONG     SegmentName;
   LONG     ElementName;
   struct   {
            LONG     Segment;
            LONG     Element;
            } SegmentHits[10];
   BOOL     td;
   POINTL   points;
   POINTL   HotSpot;
   RECODATA RecoData;
}  MYWINDOWDATA;
typedef MYWINDOWDATA *PMYWINDOWDATA;

typedef struct
{
   BYTE     ORDER;
   BYTE     len;
   BYTE     resevered[2];
   LONG     width;
} LINEWIDTHORDER;
typedef LINEWIDTHORDER LWO;


#define LABEL_BEGIN_SEGMENT    1000
#define LABEL_END_SEGMENT      1100
#define LABEL_BEGIN_STROKE     2000
#define LABEL_END_STROKE       2100
#define LABEL_BEGIN_COLOR      3000
#define LABEL_END_COLOR        3100
#define LABEL_BEGIN_WIDTH      4000
#define LABEL_END_WIDTH        4100
#define LABEL_BEGIN_BEGIN_PATH 5000
#define LABEL_END_BEGIN_PATH   5100
#define LABEL_BEGIN_END_PATH   6000
#define LABEL_END_END_PATH     6100


