X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0f278d7763de93b4ddacb3f553de0006585407c8..591cc82deb5bc6dd0af6047ecfa7ce7cf4f8d859:/src/msw/toplevel.cpp diff --git a/src/msw/toplevel.cpp b/src/msw/toplevel.cpp index 93e36350df..4ab30907af 100644 --- a/src/msw/toplevel.cpp +++ b/src/msw/toplevel.cpp @@ -78,17 +78,6 @@ static inline bool IsZoomed(HWND WXUNUSED(hwnd)) { return false; } LONG APIENTRY _EXPORT wxDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); -// ---------------------------------------------------------------------------- -// globals -// ---------------------------------------------------------------------------- - -// the name of the default wxWidgets class -#ifdef __WXWINCE__ -extern wxChar *wxCanvasClassName; -#else -extern const wxChar *wxCanvasClassName; -#endif - // ---------------------------------------------------------------------------- // wxTLWHiddenParentModule: used to manage the hidden parent window (we need a // module to ensure that the window is always deleted) @@ -139,7 +128,7 @@ void wxTopLevelWindowMSW::Init() m_fsIsMaximized = false; m_fsIsShowing = false; - m_winLastFocused = (wxWindow *)NULL; + m_winLastFocused = NULL; #if defined(__SMARTPHONE__) && defined(__WXWINCE__) m_MenuBarHWND = 0; @@ -494,7 +483,8 @@ bool wxTopLevelWindowMSW::CreateFrame(const wxString& title, exflags |= WS_EX_LAYOUTRTL; #endif - return MSWCreate(wxCanvasClassName, title.wx_str(), pos, sz, flags, exflags); + return MSWCreate(MSWGetRegisteredClassName(), + title.wx_str(), pos, sz, flags, exflags); } bool wxTopLevelWindowMSW::Create(wxWindow *parent, @@ -993,11 +983,19 @@ void wxTopLevelWindowMSW::SetIcons(const wxIconBundle& icons) { wxTopLevelWindowBase::SetIcons(icons); - bool ok = DoSelectAndSetIcon(icons, SM_CXSMICON, SM_CYSMICON, ICON_SMALL); - if ( DoSelectAndSetIcon(icons, SM_CXICON, SM_CYICON, ICON_BIG) ) - ok = true; + if ( icons.IsEmpty() ) + { + // FIXME: SetIcons(wxNullIconBundle) should unset existing icons, + // but we currently don't do that + wxASSERT_MSG( m_icons.IsEmpty(), "unsetting icons doesn't work" ); + return; + } - wxASSERT_MSG( ok, "icon bundle doesn't contain any suitable icon" ); + if ( !DoSelectAndSetIcon(icons, SM_CXSMICON, SM_CYSMICON, ICON_SMALL) && + !DoSelectAndSetIcon(icons, SM_CXICON, SM_CYICON, ICON_BIG) ) + { + wxFAIL_MSG( "icon bundle doesn't contain any suitable icon" ); + } } bool wxTopLevelWindowMSW::EnableCloseButton(bool enable)