static void ScrollEnd( HWND hWnd ) /************************************************************************/ { if ( !bScrolling ) return; if ( lpProc ) { // Call the display hook and turn it back on lpProc->DisplayHookProc( hWnd, Window.hDC, NULL ); SetDisplayHook( hWnd, lpProc ); lpProc = NULL; } EnableMarquee( YES ); SetupRulers(hWnd); ZoomMainViewChanged( hWnd ); bScrolling = NO; }
static void ScrollStart( HWND hWnd ) /************************************************************************/ { if ( bScrolling ) return; // Rely on the fact that we always get an SB_ENDSCROLL when done if ( hWnd == GetActiveDoc() ) DisplayBrush(0, 0, 0, OFF); if ( lpProc = GetDisplayHook(hWnd) ) { // Call the display hook and turn it off lpProc->DisplayHookProc( hWnd, Window.hDC, NULL ); SetDisplayHook( hWnd, NULL ); } EnableMarquee( NO ); RemoveMarquee(); AstralUpdateWindow( hWnd ); bScrolling = YES; }
LOCAL BOOL ZoomBox_OnCreate(HWND hWnd, LPCREATESTRUCT lpCreateStruct) /***********************************************************************/ { LPDISPLAY lpMyDisplay; hZoomWindow = hWnd; if ( !(lpMyDisplay = (LPDISPLAY)Alloc((long)sizeof(DISPLAY))) ) return( (BOOL)-1 ); StuffZoomDisplay(hWnd, lpMyDisplay); SetImagePtr (hWnd, NULL); SetDisplayPtr (hWnd, lpMyDisplay); SetWindowWord( hWnd, GWW_ZOOMBOXLEFT, 0); // postion in pixels SetWindowWord( hWnd, GWW_ZOOMBOXTOP, 0); // '' SetWindowWord( hWnd, GWW_ZOOMBOXRIGHT, 0); // '' SetWindowWord( hWnd, GWW_ZOOMBOXBOTTOM, 0); // '' SetDisplayHook(hWnd, &UpdateBoxHook); return(TRUE); }