|
|
1.1 ! root 1: //-------------------------- general definitions ----------------------------- ! 2: ! 3: extern HAB habMain; // main thread anchor block handle ! 4: extern HMQ hmqMain; // main thread queue handle ! 5: extern HWND hwndFrame; // frame control handle ! 6: extern HWND hwndClient; // client area handle ! 7: extern HWND hwndStatus; // status window handle ! 8: extern HWND hwndZoomScrollBar;// zoom scroll bar handle ! 9: extern HWND hwndMenu; // Menu handle ! 10: extern HWND hwndStatusOption; // status menu handle ! 11: extern HDC hdcClient; // window dc handle ! 12: extern HPS hpsClient; // client area Gpi ps handle ! 13: extern SIZEL sizlMaxClient; // max client area size ! 14: extern HPS hpsPaint; // ps for use in Main Thread ! 15: extern HRGN hrgnInvalid; // handle to the invalid region ! 16: ! 17: extern HAB habAsync; // async thread anchor block handle ! 18: extern HMQ hmqAsync; // async thread queue handle ! 19: extern TID tidAsync; // async thread id ! 20: extern SEL selStack; // async thread stack selector ! 21: extern SHORT sPrty; // async thread priority ! 22: ! 23: extern HWND hwndHorzScroll; // horizontal scroll bar window ! 24: extern HWND hwndVertScroll; // vertical scroll bar window ! 25: ! 26: extern POINTS ptsScrollPos; ! 27: extern POINTS ptsOldScrollPos; ! 28: extern POINTS ptsScrollMax; ! 29: extern POINTS ptsHalfScrollMax; ! 30: extern POINTS ptsScrollLine; ! 31: extern POINTS ptsScrollPage; ! 32: ! 33: extern MATRIXLF matlfIdentity; ! 34: extern LONG lScale; // current zoom level ! 35: extern POINTL ptlScaleRef; // scalefactor, detects size change ! 36: ! 37: extern POINTL ptlOffset; ! 38: extern POINTL ptlBotLeft; ! 39: extern POINTL ptlTopRight; ! 40: extern POINTL ptlMoveStart; // model space point at start of move ! 41: extern LONG lLastSegId; // last segment id assigned to a piece ! 42: extern LONG lPickedSeg; // seg id of piece selected for drag ! 43: extern POINTL ptlOffStart; // segment xform xlate at move start ! 44: extern RECTL rclBounds; // pict bounding box in model coords. ! 45: extern POINTL ptlOldMouse; // current mouse posn ! 46: extern POINTL ptlMouse; // current mouse posn ! 47: extern BOOL fButtonDownMain; // only drag if mouse down ! 48: extern BOOL fButtonDownAsync; // only drag if mouse down ! 49: ! 50: extern POINTL ptlUpdtRef; ! 51: extern POINTL aptlUpdt[3]; ! 52: extern BOOL fUpdtFirst; ! 53: extern BOOL fFirstLoad; ! 54: ! 55: //-------------------------- segment list ------------------------------------ ! 56: ! 57: extern PSEGLIST pslHead; // head of the list ! 58: extern PSEGLIST pslTail; // tail of the list ! 59: extern PSEGLIST pslPicked; // picked segment's list member ! 60: ! 61: //-------------------------- bitmap-related data ----------------------------- ! 62: ! 63: extern LOADINFO li; ! 64: extern PLOADINFO pli; ! 65: ! 66: extern HPS hpsBitmapFile; // bitmap straight from the file ! 67: ! 68: extern HDC hdcBitmapFile; ! 69: extern HBITMAP hbmBitmapFile; ! 70: ! 71: extern BITMAPINFOHEADER2 bmp2BitmapFile; ! 72: extern PBITMAPINFOHEADER2 pbmp2BitmapFile; ! 73: extern BITMAPINFOHEADER2 bmp2BitmapFileRef; ! 74: extern PBITMAPINFOHEADER2 pbmp2BitmapFileRef; ! 75: ! 76: extern HPS hpsBitmapSize; // bitmap sized to the current ! 77: // size ! 78: extern HDC hdcBitmapSize; ! 79: extern HBITMAP hbmBitmapSize; ! 80: ! 81: extern HPS hpsBitmapBuff; // image composed here, copied to ! 82: // screen ! 83: extern HDC hdcBitmapBuff; ! 84: extern HBITMAP hbmBitmapBuff; ! 85: ! 86: extern HPS hpsBitmapSave; // save part of screen during ! 87: // dragging ! 88: extern HDC hdcBitmapSave; ! 89: extern HBITMAP hbmBitmapSave; ! 90: ! 91: extern BITMAPINFOHEADER2 bmp2BitmapSave; ! 92: extern PBITMAPINFOHEADER2 pbmp2BitmapSave; ! 93: ! 94: extern DEVOPENSTRUC dop; ! 95: ! 96: //--------------------------- Miscellaneous ---------------------------------- ! 97: ! 98: extern HMTX hmtxSzFmt; ! 99: ! 100: extern CHAR szFmt[50]; // buffer used by sprintf() ! 101: extern CHAR szZoomFact[10]; ! 102: ! 103: extern HEV hevTerminate; ! 104: extern HEV hevDrawOn; ! 105: extern HEV hevMouse; ! 106: extern HEV hevLoadMsg; ! 107: extern HEV hevKillDraw; ! 108: ! 109: extern PSZ pszStartupMsg; ! 110: extern PSZ pszLoadMsg; ! 111: extern PSZ pszError; ! 112: extern PSZ pszBlankMsg; ! 113: ! 114: extern SWCNTRL swctl; ! 115: extern HSWITCH hsw; // handle to a switch list entry ! 116: extern char szTitle[80]; // Title bar text ! 117: ! 118: extern BOOL fErrMem; // set if alloc async stack fails ! 119: ! 120: extern LONG lByteAlignX, lByteAlignY; // memory alignment constants
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.