handle WM_MOUSEWHEEL and WM_POINTERUPDATE for the Windows Ink stylus driver
This commit is contained in:
@@ -597,20 +597,42 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
App::I.key_char((int)wp);
|
||||
break;
|
||||
case WM_MOUSEMOVE:
|
||||
App::I.mouse_move(LOWORD(lp), HIWORD(lp));
|
||||
App::I.mouse_move((float)GET_X_LPARAM(lp), (float)GET_Y_LPARAM(lp));
|
||||
break;
|
||||
case WM_LBUTTONDOWN:
|
||||
App::I.mouse_down(0, LOWORD(lp), HIWORD(lp));
|
||||
App::I.mouse_down(0, (float)GET_X_LPARAM(lp), (float)GET_Y_LPARAM(lp));
|
||||
break;
|
||||
case WM_LBUTTONUP:
|
||||
App::I.mouse_up(0, LOWORD(lp), HIWORD(lp));
|
||||
App::I.mouse_up(0, (float)GET_X_LPARAM(lp), (float)GET_Y_LPARAM(lp));
|
||||
break;
|
||||
case WM_RBUTTONDOWN:
|
||||
App::I.mouse_down(1, LOWORD(lp), HIWORD(lp));
|
||||
App::I.mouse_down(1, (float)GET_X_LPARAM(lp), (float)GET_Y_LPARAM(lp));
|
||||
break;
|
||||
case WM_RBUTTONUP:
|
||||
App::I.mouse_up(1, LOWORD(lp), HIWORD(lp));
|
||||
App::I.mouse_up(1, (float)GET_X_LPARAM(lp), (float)GET_Y_LPARAM(lp));
|
||||
break;
|
||||
case WM_MOUSEWHEEL:
|
||||
App::I.mouse_scroll((float)GET_X_LPARAM(lp), (float)GET_Y_LPARAM(lp),
|
||||
(float)GET_WHEEL_DELTA_WPARAM(wp) / (float)WHEEL_DELTA);
|
||||
break;
|
||||
case WM_POINTERUPDATE:
|
||||
{
|
||||
POINTER_INFO pointerInfo;
|
||||
UINT32 pointerId = GET_POINTERID_WPARAM(wp);
|
||||
|
||||
// Retrieve common pointer information
|
||||
if (!GetPointerInfo(pointerId, &pointerInfo))
|
||||
{
|
||||
// failure, call GetLastError()
|
||||
}
|
||||
else
|
||||
{
|
||||
// success, process pointerInfo
|
||||
int i = 0;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
return DefWindowProc(hWnd, msg, wp, lp);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user