]> O.S.I.I.S - jp/crow.git/commitdiff
scrolling limit debug
authorjpbruyere <jp.bruyere@hotmail.com>
Sun, 13 Sep 2015 12:55:15 +0000 (14:55 +0200)
committerjpbruyere <jp.bruyere@hotmail.com>
Sun, 13 Sep 2015 12:55:15 +0000 (14:55 +0200)
src/GraphicObjects/Scroller.cs

index 8996c4648380bbcc2cbb53b3f07a7c47d21cedf9..1ee4e1bbba7bf215f92ac1c0745f546f2ab4d2b0 100644 (file)
@@ -52,7 +52,12 @@ namespace go
                        set {\r
                                if (_scrollX == value)\r
                                        return;\r
-                               _scrollX = value;\r
+                               if (value < 0.0)\r
+                                       _scrollX = 0.0;\r
+                               else if (value > Child.Slot.Width - ClientRectangle.Width)\r
+                                       _scrollX = Math.Max(0.0, Child.Slot.Width - ClientRectangle.Width);\r
+                               else\r
+                                       _scrollX = value;\r
                                ValueChanged.Raise(this, new ValueChangeEventArgs("ScrollX", _scrollX));\r
                                RegisterForRedraw();\r
                        }\r
@@ -67,7 +72,12 @@ namespace go
                        set {\r
                                if (_scrollY == value)\r
                                        return;\r
-                               _scrollY = value;\r
+                               if (value < 0.0)\r
+                                       _scrollY = 0.0;\r
+                               else if (value > Child.Slot.Height - ClientRectangle.Height)\r
+                                       _scrollY = Math.Max(0.0,Child.Slot.Height - ClientRectangle.Height);\r
+                               else\r
+                                       _scrollY = value;\r
                                ValueChanged.Raise(this, new ValueChangeEventArgs("ScrollY", _scrollY));\r
                                RegisterForRedraw();\r
                        }\r
@@ -133,24 +143,9 @@ namespace go
                                return;\r
                        \r
                        if (VerticalScrolling )\r
-            {\r
                                ScrollY -= e.Delta * ScrollSpeed;\r
-\r
-                if (ScrollY < 0.0)\r
-                    ScrollY = 0.0;\r
-                               else if (ScrollY > Child.Slot.Height - ClientRectangle.Height)\r
-                                       ScrollY = Child.Slot.Height - ClientRectangle.Height;\r
-\r
-            }\r
             if (HorizontalScrolling )\r
-            {\r
                                ScrollX -= e.Delta * ScrollSpeed;\r
-\r
-                               if (ScrollX < 0.0)\r
-                                       ScrollX = 0.0;\r
-                               else if (ScrollX > Child.Slot.Width - ClientRectangle.Width)\r
-                                       ScrollX = Child.Slot.Width - ClientRectangle.Width;\r
-            }\r
         }\r
                #endregion\r
 \r