diff options
| author | Matthias Melcher <fltk@matthiasm.com> | 2002-06-29 00:10:05 +0000 |
|---|---|---|
| committer | Matthias Melcher <fltk@matthiasm.com> | 2002-06-29 00:10:05 +0000 |
| commit | 2d30a9e6fa5f7a328c942fe7b0b68908339c9076 (patch) | |
| tree | 0727ed8801c736d52d6b8cf2ea7cb282af99f3ff /src/Fl_Slider.cxx | |
| parent | fb54e063066c11bfe8d4918bd68453c3b64a68db (diff) | |
Small changes to make Metrowerks CodeWarrior for Windows work.
See seperate posting with CodeWarrior project file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2334 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_Slider.cxx')
| -rw-r--r-- | src/Fl_Slider.cxx | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/src/Fl_Slider.cxx b/src/Fl_Slider.cxx index c1c1e0b22..5233c5c56 100644 --- a/src/Fl_Slider.cxx +++ b/src/Fl_Slider.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Slider.cxx,v 1.8.2.10.2.7 2002/05/24 14:19:19 easysw Exp $" +// "$Id: Fl_Slider.cxx,v 1.8.2.10.2.8 2002/06/29 00:10:04 matthiaswm Exp $" // // Slider widget for the Fast Light Tool Kit (FLTK). // @@ -226,20 +226,24 @@ int Fl_Slider::handle(int event, int x, int y, int w, int h) { int X = mx-offcenter; double v; - TRY_AGAIN: - if (X < 0) { - X = 0; - offcenter = mx; if (offcenter < 0) offcenter = 0; - } else if (X > (W-S)) { - X = W-S; - offcenter = mx-X; if (offcenter > S) offcenter = S; - } - v = round(X*(maximum()-minimum())/(W-S) + minimum()); - // make sure a click outside the sliderbar moves it: - if (event == FL_PUSH && v == value()) { - offcenter = S/2; - event = FL_DRAG; - goto TRY_AGAIN; + char tryAgain = 1; + while (tryAgain) + { + tryAgain = 0; + if (X < 0) { + X = 0; + offcenter = mx; if (offcenter < 0) offcenter = 0; + } else if (X > (W-S)) { + X = W-S; + offcenter = mx-X; if (offcenter > S) offcenter = S; + } + v = round(X*(maximum()-minimum())/(W-S) + minimum()); + // make sure a click outside the sliderbar moves it: + if (event == FL_PUSH && v == value()) { + offcenter = S/2; + event = FL_DRAG; + tryAgain = 1; + } } handle_drag(clamp(v)); } return 1; @@ -291,5 +295,5 @@ int Fl_Slider::handle(int event) { } // -// End of "$Id: Fl_Slider.cxx,v 1.8.2.10.2.7 2002/05/24 14:19:19 easysw Exp $". +// End of "$Id: Fl_Slider.cxx,v 1.8.2.10.2.8 2002/06/29 00:10:04 matthiaswm Exp $". // |
