Fix scroll bars in zoomed editor viewports on Windows.

issue1247
Sven Eberhardt 2014-12-14 16:08:56 +01:00
parent 8df39d06e4
commit f50e2e9e3a
2 changed files with 6 additions and 6 deletions

View File

@ -90,16 +90,16 @@ bool C4Viewport::ScrollBarsByViewPosition()
// Vertical
scroll.fMask=SIF_ALL;
scroll.nMin=0;
scroll.nMax=GBackHgt;
scroll.nMax = GBackHgt * Zoom;
scroll.nPage=ViewHgt;
scroll.nPos=int(ViewY);
scroll.nPos=int(ViewY * Zoom);
SetScrollInfo(pWindow->hWindow,SB_VERT,&scroll,true);
// Horizontal
scroll.fMask=SIF_ALL;
scroll.nMin=0;
scroll.nMax=GBackWdt;
scroll.nMax=GBackWdt * Zoom;
scroll.nPage=ViewWdt;
scroll.nPos=int(ViewX);
scroll.nPos = int(ViewX * Zoom);
SetScrollInfo(pWindow->hWindow,SB_HORZ,&scroll,true);
return true;
}

View File

@ -317,7 +317,7 @@ LRESULT APIENTRY ViewportWinProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lPa
case WM_HSCROLL:
switch (LOWORD(wParam))
{
case SB_THUMBTRACK: case SB_THUMBPOSITION: cvp->ViewX=HIWORD(wParam); break;
case SB_THUMBTRACK: case SB_THUMBPOSITION: cvp->ViewX=float(HIWORD(wParam))/cvp->Zoom; break;
case SB_LINELEFT: cvp->ViewX-=ViewportScrollSpeed; break;
case SB_LINERIGHT: cvp->ViewX+=ViewportScrollSpeed; break;
case SB_PAGELEFT: cvp->ViewX-=cvp->ViewWdt; break;
@ -330,7 +330,7 @@ LRESULT APIENTRY ViewportWinProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lPa
case WM_VSCROLL:
switch (LOWORD(wParam))
{
case SB_THUMBTRACK: case SB_THUMBPOSITION: cvp->ViewY=HIWORD(wParam); break;
case SB_THUMBTRACK: case SB_THUMBPOSITION: cvp->ViewY = float(HIWORD(wParam))/cvp->Zoom; break;
case SB_LINEUP: cvp->ViewY-=ViewportScrollSpeed; break;
case SB_LINEDOWN: cvp->ViewY+=ViewportScrollSpeed; break;
case SB_PAGEUP: cvp->ViewY-=cvp->ViewWdt; break;