Fl_Roller can now be controlled via the mouse wheel (STR #3120).
This commit is contained in:
parent
67f0bf6fee
commit
0cac8d52e3
@ -102,6 +102,7 @@ Changes in FLTK 1.4.0 Released: ??? ?? 2019
|
||||
Other Improvements
|
||||
|
||||
- (add new items here)
|
||||
- Fl_Roller can now be controlled via the mouse wheel (STR #3120).
|
||||
- Tooltips hide by themselves after 12 seconds (STR #2584).
|
||||
- Added widget visibility indicator to Fluid (STR #2669).
|
||||
- Added Fl_Input_::append() method (STR #2953).
|
||||
|
@ -29,6 +29,11 @@
|
||||
/**
|
||||
The Fl_Roller widget is a "dolly" control commonly used to
|
||||
move 3D objects.
|
||||
|
||||
The Roller can be controlled by clicking an ddragging the mouse, by the
|
||||
corresponding arrow keys when the roller has the keyboard focus, or by the
|
||||
mousewheels when the mouse pointer is positioned over the roller widget.
|
||||
|
||||
<P ALIGN=CENTER>\image html Fl_Roller.png
|
||||
\image latex Fl_Roller.png "Fl_Roller" width=4cm
|
||||
*/
|
||||
|
@ -41,6 +41,21 @@ int Fl_Roller::handle(int event) {
|
||||
case FL_RELEASE:
|
||||
handle_release();
|
||||
return 1;
|
||||
case FL_MOUSEWHEEL :
|
||||
if (Fl::belowmouse()==this) {
|
||||
if (horizontal()) {
|
||||
if (Fl::e_dx!=0) {
|
||||
handle_drag(clamp(round(increment(value(),-Fl::e_dx))));
|
||||
}
|
||||
} else {
|
||||
if (Fl::e_dy!=0) {
|
||||
handle_drag(clamp(round(increment(value(),-Fl::e_dy))));
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
case FL_KEYBOARD :
|
||||
switch (Fl::event_key()) {
|
||||
case FL_Up:
|
||||
|
Loading…
Reference in New Issue
Block a user