X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f605c2584f5450606af28a92633b6ce53691716a..da52d42b9da5513de2d7a7575ac0ef647b34cb43:/src/os2/toplevel.cpp diff --git a/src/os2/toplevel.cpp b/src/os2/toplevel.cpp index e076e50197..38d204d14b 100644 --- a/src/os2/toplevel.cpp +++ b/src/os2/toplevel.cpp @@ -150,7 +150,7 @@ void wxTopLevelWindowOS2::Init() m_hFrame = NULLHANDLE; memset(&m_vSwp, 0, sizeof(SWP)); memset(&m_vSwpClient, 0, sizeof(SWP)); - m_pWinLastFocused = (wxWindow *)NULL; + m_pWinLastFocused = NULL; } // end of wxTopLevelWindowIOS2::Init void wxTopLevelWindowOS2::OnActivate( @@ -484,8 +484,8 @@ bool wxTopLevelWindowOS2::CreateFrame( const wxString& rsTitle, hFrame = ::WinCreateStdWindow( hParent ,ulStyleFlags // frame-window style ,(PULONG)&lFlags // window style - ,wxFrameClassName // class name - ,rsTitle.c_str() // window title + ,wxString(wxFrameClassName).c_str() // class name + ,rsTitle.c_str() // window title ,0L // default client style ,NULLHANDLE // resource in executable file ,0 // resource id @@ -790,7 +790,7 @@ bool wxTopLevelWindowOS2::Show( bool bShow ) ::WinEnableWindow(m_hFrame, TRUE); vEvent.SetEventObject(this); - GetEventHandler()->ProcessEvent(vEvent); + HandleWindowEvent(vEvent); } else { @@ -872,17 +872,28 @@ void wxTopLevelWindowOS2::Restore() } // end of wxTopLevelWindowOS2::Restore // generate an artificial resize event -void wxTopLevelWindowOS2::SendSizeEvent() +void wxTopLevelWindowOS2::SendSizeEvent(int flags) { if (!m_bIconized) { RECTL vRect = wxGetWindowRect(GetHwnd()); - (void)::WinPostMsg( m_hFrame - ,WM_SIZE - ,MPFROM2SHORT(vRect.xRight - vRect.xLeft, vRect.yTop - vRect.yBottom) - ,MPFROM2SHORT(vRect.xRight - vRect.xLeft, vRect.yTop - vRect.yBottom) - ); + if ( flags & wxSEND_EVENT_POST ) + { + (void)::WinPostMsg( m_hFrame + ,WM_SIZE + ,MPFROM2SHORT(vRect.xRight - vRect.xLeft, vRect.yTop - vRect.yBottom) + ,MPFROM2SHORT(vRect.xRight - vRect.xLeft, vRect.yTop - vRect.yBottom) + ); + } + else // send it + { + (void)::WinSendMsg( m_hFrame + ,WM_SIZE + ,MPFROM2SHORT(vRect.xRight - vRect.xLeft, vRect.yTop - vRect.yBottom) + ,MPFROM2SHORT(vRect.xRight - vRect.xLeft, vRect.yTop - vRect.yBottom) + ); + } } } // end of wxTopLevelWindowOS2::SendSizeEvent @@ -965,7 +976,7 @@ bool wxTopLevelWindowOS2::ShowFullScreen( bool bShow, wxSize full( nWidth, nHeight ); wxSizeEvent vEvent( full, GetId() ); - GetEventHandler()->ProcessEvent(vEvent); + HandleWindowEvent(vEvent); return true; } else