diff options
author | Yaroslav Kolomiiets <yarikos@gmail.com> | 2017-02-20 09:51:30 +0200 |
---|---|---|
committer | Yaroslav Kolomiiets <yarikos@gmail.com> | 2017-02-20 09:51:30 +0200 |
commit | 72960f684cf105ef9ee6940e9a485a19f355e3fb (patch) | |
tree | 95d201624bbb0bfe813a1a966c750f72df5acb08 | |
parent | fe5b4c4a7f69da34247f98cf46dcfcb485d614fb (diff) |
emu: windows scroll wheel
-rw-r--r-- | emu/Nt/win.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/emu/Nt/win.c b/emu/Nt/win.c index c1bccfa7..b1480fd7 100644 --- a/emu/Nt/win.c +++ b/emu/Nt/win.c @@ -308,6 +308,7 @@ WindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) LPMINMAXINFO mmi; LONG x, y, w, h, b; HCURSOR dcurs; + POINT m; switch(msg) { case WM_SETCURSOR: @@ -320,6 +321,15 @@ WindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) dcurs = LoadCursor(NULL, IDC_ARROW); SetCursor(dcurs); break; + case WM_MOUSEWHEEL: + if((int)wparam>0) + b = 8; + else + b = 16; + m.x = LOWORD(lparam); + m.y = HIWORD(lparam); + ScreenToClient(hwnd, &m); + goto mok; case WM_LBUTTONDBLCLK: b = (1<<8) | 1; goto process; @@ -338,8 +348,9 @@ WindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) case WM_RBUTTONDOWN: b = 0; process: - x = LOWORD(lparam); - y = HIWORD(lparam); + m.x = LOWORD(lparam); + m.y = HIWORD(lparam); + mok: if(wparam & MK_LBUTTON) b |= 1; if(wparam & MK_MBUTTON) @@ -350,7 +361,7 @@ WindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) else b |= 4; //right button } - mousetrack(b, x, y, 0); + mousetrack(b, m.x, m.y, 0); break; case WM_SYSKEYDOWN: if(gkscanq) @@ -446,10 +457,6 @@ WindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) gkbdputc(gkbdq, wparam); break; case WM_CLOSE: - // no longer used? - //m.b = 128; - //m.modify = 1; - //mousetrack(128, 0, 0, 1); DestroyWindow(hwnd); break; case WM_DESTROY: |