#ifndef __DIALOGS_H_ #define __DIALOGS_H_ #define MIN_RESIZE_WH 10 #define MAX_RESIZE_WH 500 #define STEP_RESIZE_WH 10 #define MIN_ZOOM_FACTOR 100 #define MAX_ZOOM_FACTOR 1000 #define STEP_ZOOM_FACTOR 10 #define MIN_BORDER_SIZE 1 #define MAX_BORDER_SIZE 11 #define STEP_BORDER_SIZE 1 #define MAX_ROUNDRECTWIDTH 500 typedef struct tagSCROLLDLGDATA { L_INT Step; L_INT Value; L_INT MaxRange; L_INT MinRange; L_TCHAR szDlgText[60]; L_TCHAR szDlgMessage[260]; }SCROLLDLGDATA,L_FAR * LPSCROLLDLGDATA; typedef struct tagUPDATESHAPEDATA { L_INT right; /*for round rectangle*/ L_INT bottom; /*for round rectangle*/ L_INT nWidth; /*width of small ellipses in the round rectangles */ L_INT nHeight;/* height of small ellipses in the round rectangles */ }UPDATESHAPEDATA,L_FAR *LPUPDATESHAPEDATA; L_BOOL CALLBACK ResizeWHDlgProc(HWND hDlg,UINT msg,WPARAM wparam,LPARAM lparam); L_BOOL CALLBACK CurFileDlgProc(HWND hDlg,UINT msg,WPARAM wparam,LPARAM lparam); L_BOOL CALLBACK RoundRectDlgProc(HWND hDlg,UINT msg,WPARAM wparam,LPARAM lparam); L_BOOL CALLBACK FreeHandDlgProc(HWND hDlg,UINT msg,WPARAM wparam,LPARAM lparam); L_BOOL CALLBACK AboutDlgProc(HWND hDlg,UINT msg,WPARAM wparam,LPARAM lparam); L_VOID PaintTheShape(HWND hwnd,POINT *pPoints ,L_INT NOPoints); L_VOID AddNewPoint(POINT *pPoints,L_INT NOPoints,POINT point); L_VOID DrawShape(HWND hwnd,POINT prvPoint,POINT TmpPoint); #endif