X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8138a3b0c6a322bd447fdee137a32ab37db97f6f..f443043db08932a6439fb5f5fe421731b51fbf81:/src/os2/window.cpp?ds=inline diff --git a/src/os2/window.cpp b/src/os2/window.cpp index 3ec349cf48..75900f1d95 100644 --- a/src/os2/window.cpp +++ b/src/os2/window.cpp @@ -1674,12 +1674,12 @@ bool wxWindow::OS2ProcessMessage( } } } + // + // Let Dialogs process + // + if (::WinSendMsg(pQMsg->hwnd, WM_QUERYDLGCODE, pQMsg, 0)); + return TRUE; } - // - // Let Dialogs process - // - if (::WinSendMsg(pQMsg->hwnd, WM_QUERYDLGCODE, pQMsg, 0)); - return TRUE; #if wxUSE_TOOLTIPS if ( m_tooltip ) @@ -1699,7 +1699,7 @@ bool wxWindow::OS2TranslateMessage( WXMSG* pMsg ) { - return m_acceleratorTable.Translate(this, pMsg); + return m_acceleratorTable.Translate(m_hWnd, pMsg); } // end of wxWindow::OS2TranslateMessage // --------------------------------------------------------------------------- @@ -1813,7 +1813,7 @@ MRESULT EXPENTRY wxWndProc( { if (pWnd) rc = pWnd->OS2WindowProc(ulMsg, wParam, lParam); - else + if (!rc) rc = ::WinDefWindowProc(hWnd, ulMsg, wParam, lParam); } return rc; @@ -1954,7 +1954,6 @@ MRESULT wxWindow::OS2WindowProc( bProcessed = HandleMouseEvent(uMsg, x, y, (WXUINT)wParam); } break; - case WM_SYSCOMMAND: bProcessed = HandleSysCommand(wParam, lParam); break; @@ -2154,7 +2153,7 @@ MRESULT wxWindow::OS2WindowProc( // wxFrame specific message case WM_MINMAXFRAME: - bProcessed = HandleGetMinMaxInfo((PSWP)lParam); + bProcessed = HandleGetMinMaxInfo((PSWP)wParam); break; case WM_SYSVALUECHANGED: @@ -2357,7 +2356,7 @@ bool wxWindow::OS2Create( (ULONG)zClass == (ULONG)WC_COMBOBOX || (ULONG)zClass == (ULONG)WC_CONTAINER || (ULONG)zClass == (ULONG)WC_ENTRYFIELD || - (ULONG)zClass == (ULONG)WC_FRAME || + (ULONG)zClass == (ULONG)WC_FRAME || (ULONG)zClass == (ULONG)WC_LISTBOX || (ULONG)zClass == (ULONG)WC_MENU || (ULONG)zClass == (ULONG)WC_NOTEBOOK || @@ -2395,6 +2394,7 @@ bool wxWindow::OS2Create( wxLogError("Can't create window of class %s!. Error: %s\n", zClass, sError); return FALSE; } + ::WinSetWindowULong(m_hWnd, QWL_USER, (ULONG) this); wxWndHook = NULL; #ifdef __WXDEBUG__ @@ -2796,6 +2796,9 @@ void wxWindow::OnSysColourChanged( bool wxWindow::HandlePaint() { HRGN hRgn = NULLHANDLE; + wxPaintEvent vEvent; + HPS hPS; + RECTL vRect; if (::WinQueryUpdateRegion(GetHwnd(), hRgn) == RGN_NULL) { @@ -2804,7 +2807,9 @@ bool wxWindow::HandlePaint() } m_updateRegion = wxRegion(hRgn); - wxPaintEvent vEvent; + hPS = WinBeginPaint(GetHwnd(), 0L, &vRect); + WinFillRect(hPS, &vRect, SYSCLR_WINDOW); + WinEndPaint(hPS); vEvent.SetEventObject(this); return (GetEventHandler()->ProcessEvent(vEvent));