X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4ce1efe123a9b5f7dbb5be4aaf3dd0a21b399f38..c15d9c859c64f28c56d1e61b7d031a74e6018583:/src/msw/toplevel.cpp diff --git a/src/msw/toplevel.cpp b/src/msw/toplevel.cpp index 21fc67e840..b12a323c5a 100644 --- a/src/msw/toplevel.cpp +++ b/src/msw/toplevel.cpp @@ -141,7 +141,7 @@ WXDWORD wxTopLevelWindowMSW::MSWGetStyle(long style, WXDWORD *exflags) const WXDWORD msflags = wxWindow::MSWGetStyle ( (style & ~wxBORDER_MASK) | wxBORDER_NONE, exflags - ) & ~WS_CHILD; + ) & ~WS_CHILD & ~WS_VISIBLE; // first select the kind of window being created // @@ -732,9 +732,9 @@ bool wxTopLevelWindowMSW::EnableCloseButton(bool enable) HMENU hmenu = ::GetSystemMenu(GetHwnd(), FALSE /* get it */); if ( !hmenu ) { - wxLogLastError(_T("GetSystemMenu")); - - return FALSE; + // no system menu at all -- ok if we want to remove the close button + // anyhow, but bad if we want to show it + return !enable; } // enabling/disabling the close item from it also automatically @@ -760,6 +760,9 @@ bool wxTopLevelWindowMSW::EnableCloseButton(bool enable) bool wxTopLevelWindowMSW::SetShape(const wxRegion& region) { + wxCHECK_MSG( HasFlag(wxFRAME_SHAPED), FALSE, + _T("Shaped windows must be created with the wxFRAME_SHAPED style.")); + // The empty region signifies that the shape should be removed from the // window. if ( region.IsEmpty() )