diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-07-27 19:06:17 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-07-27 19:06:17 (GMT) |
| commit | 5befe5c25f8f188e7588de44ab2c8bead22ae999 (patch) | |
| tree | 643b02af217770c1a3156be03e01442557795760 /src/interface/ScrollPanel.cpp | |
| parent | f8ca8af387b8611c18ca7c5357efd19c8bc28941 (diff) | |
| download | powder-5befe5c25f8f188e7588de44ab2c8bead22ae999.zip powder-5befe5c25f8f188e7588de44ab2c8bead22ae999.tar.gz | |
Local file browser + some more interesting things like Progress bar UI component
Diffstat (limited to 'src/interface/ScrollPanel.cpp')
| -rw-r--r-- | src/interface/ScrollPanel.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/interface/ScrollPanel.cpp b/src/interface/ScrollPanel.cpp index 36ce5f8..ecf527b 100644 --- a/src/interface/ScrollPanel.cpp +++ b/src/interface/ScrollPanel.cpp @@ -28,7 +28,7 @@ void ScrollPanel::XOnMouseWheelInside(int localx, int localy, int d) { if(!d) return; - yScrollVel -= d; + yScrollVel -= d*2; } void ScrollPanel::XDraw(const Point& screenPos) @@ -52,8 +52,8 @@ void ScrollPanel::XDraw(const Point& screenPos) void ScrollPanel::XTick(float dt) { - if(yScrollVel > 7.0f) yScrollVel = 7.0f; - if(yScrollVel < -7.0f) yScrollVel = -7.0f; + //if(yScrollVel > 7.0f) yScrollVel = 7.0f; + //if(yScrollVel < -7.0f) yScrollVel = -7.0f; if(yScrollVel > -0.5f && yScrollVel < 0.5) yScrollVel = 0; @@ -63,14 +63,16 @@ void ScrollPanel::XTick(float dt) xScrollVel = 0; maxOffset = InnerSize-Size; + maxOffset.Y = std::max(0, maxOffset.Y); + maxOffset.X = std::max(0, maxOffset.X); int oldOffsetY = offsetY; offsetY += yScrollVel; int oldOffsetX = offsetX; offsetX += xScrollVel; - yScrollVel*=0.99f; - xScrollVel*=0.99f; + yScrollVel*=0.98f; + xScrollVel*=0.98f; if(oldOffsetY!=int(offsetY)) { |
