X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3a95f73c001e70cd195ea1d46df3040dea7532e8..0364ac987d405a76385da84fa769f544bf50d40b:/src/msw/window.cpp diff --git a/src/msw/window.cpp b/src/msw/window.cpp index 506bc5175a..bf197f2e16 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -3023,8 +3023,8 @@ wxWindowMSW::MSWHandleMessage(WXLRESULT *result, case MM_JOY1BUTTONUP: case MM_JOY2BUTTONUP: processed = HandleJoystickEvent(message, - GET_X_LPARAM(lParam), - GET_Y_LPARAM(lParam), + LOWORD(lParam), + HIWORD(lParam), wParam); break; #endif // __WXMICROWIN__ @@ -5794,9 +5794,7 @@ int wxWindowMSW::HandleMenuChar(int WXUNUSED_IN_WINCE(chAccel), #ifndef __WXWINCE__ const HMENU hmenu = (HMENU)lParam; - MENUITEMINFO mii; - wxZeroMemory(mii); - mii.cbSize = sizeof(MENUITEMINFO); + WinStruct mii; // we could use MIIM_FTYPE here as we only need to know if the item is // ownerdrawn or not and not dwTypeData which MIIM_TYPE also returns, but @@ -5950,7 +5948,10 @@ bool wxWindowMSW::HandleJoystickEvent(WXUINT msg, int x, int y, WXUINT flags) } wxJoystickEvent event(eventType, buttons, joystick, change); - event.SetPosition(wxPoint(x, y)); + if ( eventType == wxEVT_JOY_ZMOVE ) + event.SetZPosition(x); + else + event.SetPosition(wxPoint(x, y)); event.SetEventObject(this); return HandleWindowEvent(event); @@ -6644,8 +6645,11 @@ wxKeyboardHook(int nCode, WORD wParam, DWORD lParam) if ( handler && handler->ProcessEvent(event) ) { - // processed - return 1; + if ( !event.IsNextEventAllowed() ) + { + // Stop processing of this event. + return 1; + } } } }