X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/11eff56a7aa3791c5226f953d667ef87e5157169..79c3b7b216a5fc6b105acb49690e5b4e626080e2:/src/msw/frame.cpp diff --git a/src/msw/frame.cpp b/src/msw/frame.cpp index 40ef132187..d766cb0992 100644 --- a/src/msw/frame.cpp +++ b/src/msw/frame.cpp @@ -64,7 +64,6 @@ // ---------------------------------------------------------------------------- extern wxWindowList wxModelessWindows; -extern wxList WXDLLEXPORT wxPendingDelete; extern const wxChar *wxFrameClassName; #if wxUSE_MENUS_NATIVE @@ -156,17 +155,12 @@ bool wxFrameMSW::Create(wxWindow *parent, m_iconized = FALSE; - // the frame must have NULL parent HWND or it would be always on top of its - // parent which is not what we usually want (in fact, we only want it for - // frames with the special wxFRAME_FLOAT_ON_PARENT style) - if ( !(m_windowStyle & wxFRAME_FLOAT_ON_PARENT) ) - { - parent = NULL; - } - wxTopLevelWindows.Append(this); - MSWCreate(m_windowId, parent, wxFrameClassName, this, title, + // the frame must have NULL parent HWND or it would be always on top of its + // parent which is not what we usually want (in fact, we only want it for + // frames with the special wxFRAME_TOOL_WINDOW style handled elsewhere) + MSWCreate(m_windowId, NULL, wxFrameClassName, this, title, x, y, width, height, style); wxModelessWindows.Append(this); @@ -353,6 +347,16 @@ bool wxFrameMSW::Show(bool show) return TRUE; } +void wxFrameMSW::Raise() +{ +#ifdef __WIN16__ + // no SetForegroundWindow() in Win16 + wxFrameBase::Raise(); +#else // Win32 + ::SetForegroundWindow(GetHwnd()); +#endif // Win16/32 +} + void wxFrameMSW::Iconize(bool iconize) { DoShowWindow(iconize ? SW_MINIMIZE : SW_RESTORE); @@ -611,7 +615,7 @@ bool wxFrameMSW::ShowFullScreen(bool show, long style) LONG offFlags = 0; if (style & wxFULLSCREEN_NOBORDER) - offFlags |= WS_BORDER; + offFlags |= WS_BORDER | WS_THICKFRAME; if (style & wxFULLSCREEN_NOCAPTION) offFlags |= (WS_CAPTION | WS_SYSMENU);