mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 06:15:04 +00:00
(svn r21760) -Fix (r20452): Restore wheeling of vertical scrollbars.
This commit is contained in:
parent
f5364269b5
commit
352fd000ea
@ -442,7 +442,7 @@ static void DispatchHoverEvent(Window *w, int x, int y)
|
||||
* @param nwid the widget where the scrollwheel was used
|
||||
* @param wheel scroll up or down
|
||||
*/
|
||||
static void DispatchMouseWheelEvent(Window *w, const NWidgetCore *nwid, int wheel)
|
||||
static void DispatchMouseWheelEvent(Window *w, NWidgetCore *nwid, int wheel)
|
||||
{
|
||||
if (nwid == NULL) return;
|
||||
|
||||
@ -452,6 +452,16 @@ static void DispatchMouseWheelEvent(Window *w, const NWidgetCore *nwid, int whee
|
||||
return;
|
||||
}
|
||||
|
||||
/* Wheeling a vertical scrollbar. */
|
||||
if (nwid->type == NWID_VSCROLLBAR) {
|
||||
NWidgetScrollbar *sb = static_cast<NWidgetScrollbar *>(nwid);
|
||||
if (sb->GetCount() > sb->GetCapacity()) {
|
||||
sb->UpdatePosition(wheel);
|
||||
w->SetDirty();
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
/* Scroll the widget attached to the scrollbar. */
|
||||
Scrollbar *sb = (nwid->scrollbar_index >= 0 ? w->GetScrollbar(nwid->scrollbar_index) : NULL);
|
||||
if (sb != NULL && sb->GetCount() > sb->GetCapacity()) {
|
||||
|
Loading…
Reference in New Issue
Block a user