diff --git a/bazaar/SurfaceCtrl/SketchupCamera.h b/bazaar/SurfaceCtrl/SketchupCamera.h index af18b075f..54583d73d 100644 --- a/bazaar/SurfaceCtrl/SketchupCamera.h +++ b/bazaar/SurfaceCtrl/SketchupCamera.h @@ -64,6 +64,7 @@ class SketchupCamera : public UOGL_Camera { virtual SketchupCamera& ProcessMouveMouvement(float xoffset, float yoffset){ if(MouseMiddlePressed) return ProcessMouseWheelMouvement(xoffset,yoffset); if(MouseLeftPressed) return ProcessMouseLeftMouvement(xoffset,yoffset); + return *this; } virtual bool ProcessKeyBoard(unsigned long Key,int count){ diff --git a/bazaar/SurfaceCtrl/SurfaceCtrl.cpp b/bazaar/SurfaceCtrl/SurfaceCtrl.cpp index ef351593c..7dd919fcf 100644 --- a/bazaar/SurfaceCtrl/SurfaceCtrl.cpp +++ b/bazaar/SurfaceCtrl/SurfaceCtrl.cpp @@ -242,6 +242,7 @@ void SurfaceCtrl::MiddleUp(Point p, dword keyflags){ } void SurfaceCtrl::MouseLeave(){ camera.MouseMiddlePressed = false; + camera.MouseLeftPressed = false; return; } } \ No newline at end of file diff --git a/bazaar/SurfaceCtrl/TrackBallCamera.h b/bazaar/SurfaceCtrl/TrackBallCamera.h index 4f2edc447..db7e29eb9 100644 --- a/bazaar/SurfaceCtrl/TrackBallCamera.h +++ b/bazaar/SurfaceCtrl/TrackBallCamera.h @@ -141,6 +141,7 @@ class TrackBallCamera : public UOGL_Camera { virtual TrackBallCamera& ProcessMouveMouvement(float xoffset, float yoffset){ if(MouseMiddlePressed) return ProcessMouseWheelMouvement(xoffset,yoffset); if(MouseLeftPressed) return ProcessMouseLeftMouvement(xoffset,yoffset); + return *this; }