--- mstools/samples/mandel/julia.h 2018/08/09 18:20:41 1.1 +++ mstools/samples/mandel/julia.h 2018/08/09 18:23:43 1.1.1.2 @@ -30,11 +30,18 @@ #define FIRST_PIXEL 429496796 // +// Threshold value (pixels) for blting drawing from shadow bitmap to +// screen. Used in fractal drawing algorithm. Minimize device access. +// +#define BATCH 25000 + +// // menu item IDs // #define MM_ABOUT 8000 #define MM_JULIA 8001 #define MM_MANDEL 8002 +#define MM_RLEVIEWER 8006 #define MM_SAVE 8003 #define MM_SAVE_MONO 8004 #define MM_LOAD 8005 @@ -46,10 +53,17 @@ #define MM_FLOAT 7009 #define MM_FIX 7010 -#define MM_ITERATION_TEN 7011 -#define MM_ITERATION_TWENTY 7012 -#define MM_ITERATION_THIRTY 7013 -#define MM_ITERATION_FIFTY 7014 +#define MM_TP_IDLE 7030 +#define MM_TP_LOW 7031 +#define MM_TP_BELOW_NORMAL 7032 +#define MM_TP_NORMAL 7033 +#define MM_TP_ABOVE_NORMAL 7034 +#define MM_TP_HIGH 7035 +#define MM_TP_TIME_CRITICAL 7036 +#define MM_ITERATION_100 7011 +#define MM_ITERATION_500 7012 +#define MM_ITERATION_1000 7013 +#define MM_ITERATION_5000 7014 #define MM_ITERATION_DOUBLE 7015 #define MM_STEP_ONE 7016 #define MM_STEP_TWO 7017 @@ -66,6 +80,24 @@ #define MM_ERASE 7028 #define MM_SETDIB2DEVICE 7029 +// defined in bndscan.h +// +// #define MM_SELCLIPRGN 7050 + +// defined in printer.h +// +// #define MM_PORTRAIT 7040 +// #define MM_LANDSCAPE 7041 +// #define MM_PRINTER 9000 + + +#define MM_RLELOAD_DEMO 9800 +#define MM_RLELOAD 9801 +#define MM_RLESAVE 9802 +#define MM_CLEAR 9803 +#define MM_RLEPLAY 9804 +#define MM_RLEPLAYCONT 9805 + #define IDM_CASCADE 30 #define IDM_TILE 31 #define IDM_ARRANGE 32 @@ -76,6 +108,7 @@ // #define ACCEL_ID 100 #define APPICON 1001 +#define VIEWICON 1003 #define PAINTCURSOR 1002 // @@ -84,7 +117,6 @@ HPEN hpnRed; HPEN hpnBlack; HPEN hpnGreen; -PVOID *gprghPen; INT giPen = 0; HANDLE ghModule; @@ -92,8 +124,8 @@ HWND ghwndMain = NULL; HWND ghwndClient = NULL; HANDLE ghAccel; -HMENU hMenu, hChildMenu; -HMENU hSubMenuOne, hSubMenuThree; +HMENU hMenu, hChildMenu, hViewMenu; +HMENU hViewSubOne, hSubMenuOne, hSubMenuThree; HMENU hPrinterMenu; CHAR gszFile[20]; @@ -102,12 +134,14 @@ char gtext[256]; BOOL gFloat = TRUE; LONG gStep = 2; -LONG gIteration = 30; +LONG gIteration = 500; BOOL gbStretch = TRUE; -INT giStretchMode = HALFTONE; +INT giStretchMode = COLORONCOLOR; INT giDmOrient = DMORIENT_PORTRAIT; INT giNPrinters = 0; +HPALETTE ghPal, ghPalOld; + double xFrom, xTo, yFrom, yTo, c1, c2; LONG lxFrom, lxTo, lyFrom, lyTo, lc1, lc2; @@ -115,8 +149,19 @@ extern PPRINTER_INFO_1 gpPrinters; extern PSZ *gpszPrinterNames; extern PSZ *gpszDeviceNames; +extern BOOL bCycle(HWND); +extern BOOL bCleanupPrinter(VOID); +extern INT iCreatePenFrPal(HDC, PVOID *, INT, HPALETTE *); extern BOOL bBoundaryScanFix(PINFO); -extern BOOL SaveBitmapFile(HDC, HBITMAP, PSTR); -extern BOOL LoadBitmapFile(HDC, PINFO, PSTR); extern BOOL bChangeDIBColor(HDC, PINFO, INT); extern BOOL bInitPrinter(HWND); +extern BOOL bCleanupPrinter(VOID); + + +extern BOOL SaveBitmapFile(HDC, HBITMAP, PSTR); +extern BOOL LoadBitmapFile(HDC, PINFO, PSTR); + +extern HPALETTE CopyPalette(HPALETTE); + +extern void cdecl ErrorOut(char errstring[30]); +extern int FAR PASCAL ShellAbout(HWND, LPCSTR, LPCSTR, HICON);