From fea00236753067282c3558a0bb9594bd7afb8993 Mon Sep 17 00:00:00 2001 From: veto-gh Date: Sat, 27 Jan 2018 18:57:41 +0100 Subject: [PATCH] swell-wnd-generic.cpp: mousewheel scroll on comboboxes (mirror windows behavior) --- WDL/swell/swell-wnd-generic.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/WDL/swell/swell-wnd-generic.cpp b/WDL/swell/swell-wnd-generic.cpp index 266f335fe..283c485e2 100644 --- a/WDL/swell/swell-wnd-generic.cpp +++ b/WDL/swell/swell-wnd-generic.cpp @@ -3363,6 +3363,17 @@ static LRESULT WINAPI comboWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM InvalidateRect(hwnd,NULL,FALSE); } return 0; + case WM_MOUSEWHEEL: + if (s) + { + s->selidx += (short)HIWORD(wParam) < 0 ? 1:-1; + s->selidx = wdl_max(0,wdl_min(s->items.GetSize()-1,s->selidx)); + char *ptr=s->items.Get(s->selidx)->desc; + SetWindowText(hwnd,ptr); + InvalidateRect(hwnd,NULL,FALSE); + SendMessage(GetParent(hwnd),WM_COMMAND,(GetWindowLong(hwnd,GWL_ID)&0xffff) | (CBN_SELCHANGE<<16),(LPARAM)hwnd); + } + return 0; case WM_KEYDOWN: if ((lParam&FVIRTKEY) && wParam == VK_DOWN) { s_capmode_state=5; goto popupMenu; } if ((hwnd->m_style & CBS_DROPDOWNLIST) != CBS_DROPDOWNLIST &&