X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/376ef4a1f497822dd6e0de572e2d59ea192a7380..bad79f58afcf3602c4ea5da5f2f0d1594f4e393d:/src/os2/toplevel.cpp diff --git a/src/os2/toplevel.cpp b/src/os2/toplevel.cpp index 3f5d41eeba..c3bea8a366 100644 --- a/src/os2/toplevel.cpp +++ b/src/os2/toplevel.cpp @@ -6,7 +6,7 @@ // Created: 30.12.01 // RCS-ID: $Id$ // Copyright: (c) 2001 SciTech Software, Inc. (www.scitechsoft.com) -// License: wxWindows license +// License: wxWindows licence /////////////////////////////////////////////////////////////////////////////// // ============================================================================ @@ -39,6 +39,7 @@ #include "wx/containr.h" // wxSetFocusToChild() #endif //WX_PRECOMP +#include "wx/module.h" // wxSetFocusToChild() #include "wx/os2/private.h" // ---------------------------------------------------------------------------- @@ -363,9 +364,9 @@ bool wxTopLevelWindowOS2::CreateDialog( if ( !m_hWnd ) { - wxFAIL_MSG(_("Did you forget to include wx/os2/wx.rc in your resources?")); + wxFAIL_MSG(wxT("Did you forget to include wx/os2/wx.rc in your resources?")); - wxLogSysError(_("Can't create dialog using template '%ul'"), ulDlgTemplate); + wxLogSysError(wxT("Can't create dialog using template '%ul'"), ulDlgTemplate); return FALSE; } @@ -500,7 +501,7 @@ bool wxTopLevelWindowOS2::CreateFrame( { vError = ::WinGetLastError(vHabmain); sError = wxPMErrorToStr(vError); - wxLogError("Error creating frame. Error: %s\n", sError); + wxLogError("Error creating frame. Error: %s\n", sError.c_str()); return FALSE; } @@ -524,7 +525,7 @@ bool wxTopLevelWindowOS2::CreateFrame( { vError = ::WinGetLastError(vHabmain); sError = wxPMErrorToStr(vError); - wxLogError("Error creating frame. Error: %s\n", sError); + wxLogError("Error creating frame. Error: %s\n", sError.c_str()); return FALSE; } @@ -561,7 +562,7 @@ bool wxTopLevelWindowOS2::CreateFrame( { vError = ::WinGetLastError(vHabmain); sError = wxPMErrorToStr(vError); - wxLogError("Error sizing frame. Error: %s\n", sError); + wxLogError("Error sizing frame. Error: %s\n", sError.c_str()); return FALSE; } lStyle = ::WinQueryWindowULong( m_hWnd @@ -580,7 +581,7 @@ bool wxTopLevelWindowOS2::Create( , wxWindowID vId , const wxString& rsTitle , const wxPoint& rPos -, const wxSize& rSize +, const wxSize& rSizeOrig , long lStyle , const wxString& rsName ) @@ -592,6 +593,19 @@ bool wxTopLevelWindowOS2::Create( m_windowStyle = lStyle; SetName(rsName); m_windowId = vId == -1 ? NewControlId() : vId; + + // always create a frame of some reasonable, even if arbitrary, size (at + // least for MSW compatibility) + wxSize rSize = rSizeOrig; + if ( rSize.x == -1 || rSize.y == -1 ) + { + wxSize sizeDpy = wxGetDisplaySize(); + if ( rSize.x == -1 ) + rSize.x = sizeDpy.x / 3; + if ( rSize.y == -1 ) + rSize.y = sizeDpy.y / 5; + } + wxTopLevelWindows.Append(this); if (pParent) pParent->AddChild(this); @@ -800,7 +814,7 @@ void wxTopLevelWindowOS2::Maximize( // We can't maximize the hidden frame because it shows it as well, so // just remember that we should do it later in this case // - m_bMaximizeOnShow = TRUE; + m_bMaximizeOnShow = bMaximize; } } // end of wxTopLevelWindowOS2::Maximize