diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-08-29 23:18:42 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-08-29 23:18:42 (GMT) |
| commit | 6dbcd3cc5980f06496a8f2e0f15245d08b150a60 (patch) | |
| tree | 30f124739590021b11714bdb161978a00c3fc201 /src/game/GameController.cpp | |
| parent | 58dc2559aad5abb3ae23f89155a4cdf37e0de885 (diff) | |
| download | powder-6dbcd3cc5980f06496a8f2e0f15245d08b150a60.zip powder-6dbcd3cc5980f06496a8f2e0f15245d08b150a60.tar.gz | |
Fix cursour falling just out zoom window
Diffstat (limited to 'src/game/GameController.cpp')
| -rw-r--r-- | src/game/GameController.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/game/GameController.cpp b/src/game/GameController.cpp index 47c9c0f..2258239 100644 --- a/src/game/GameController.cpp +++ b/src/game/GameController.cpp @@ -336,6 +336,15 @@ void GameController::AdjustZoomSize(int direction, bool logarithmic) ui::Point GameController::PointTranslate(ui::Point point) { + if(point.X >= XRES) + point.X = XRES-1; + if(point.Y >= YRES) + point.Y = YRES+1; + if(point.Y < 0) + point.Y = 0; + if(point.X < 0) + point.X = 0; + bool zoomEnabled = gameModel->GetZoomEnabled(); if(!zoomEnabled) return point; @@ -344,7 +353,7 @@ ui::Point GameController::PointTranslate(ui::Point point) ui::Point zoomWindowPosition = gameModel->GetZoomWindowPosition(); ui::Point zoomWindowSize = ui::Point(gameModel->GetZoomSize()*zoomFactor, gameModel->GetZoomSize()*zoomFactor); - if(point.X > zoomWindowPosition.X && point.X > zoomWindowPosition.Y && point.X < zoomWindowPosition.X+zoomWindowSize.X && point.Y < zoomWindowPosition.Y+zoomWindowSize.Y) + if(point.X >= zoomWindowPosition.X && point.X >= zoomWindowPosition.Y && point.X <= zoomWindowPosition.X+zoomWindowSize.X && point.Y <= zoomWindowPosition.Y+zoomWindowSize.Y) return ((point-zoomWindowPosition)/gameModel->GetZoomFactor())+gameModel->GetZoomPosition(); return point; } |
