SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE));
}
-bool wxDialog::Create(wxWindow *parent, wxWindowID id,
+bool wxDialog::Create(wxWindow *parent,
+ wxWindowID id,
const wxString& title,
const wxPoint& pos,
const wxSize& size,
wxTopLevelWindows.Append(this);
- // windowFont = wxTheFontList->FindOrCreateFont(11, wxSWISS, wxNORMAL, wxNORMAL);
-
- if (parent) parent->AddChild(this);
+ if ( parent )
+ parent->AddChild(this);
if ( id == -1 )
m_windowId = (int)NewControlId();
if (m_exStyle & wxDIALOG_EX_CONTEXTHELP)
extendedStyle |= WS_EX_CONTEXTHELP;
#endif
+
// Allows creation of dialogs with & without captions under MSWindows,
// resizeable or not (but a resizeable dialog always has caption -
// otherwise it would look too strange)
SubclassWin(GetHWND());
SetWindowText(hwnd, title);
- SetFont(wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT));
return TRUE;
}
wxTheApp->DoMessage();
}
-#if 0 //def __WIN32__
- if ( parent )
- ::SetActiveWindow(GetHwndOf(parent));
-#endif // __WIN32__
-
// and restore focus
// Note that this code MUST NOT access the dialog object's data
// in case the object has been deleted (which will be the case
{
// use it
m_parent = parent;
+
+ // VZ: to make dialog behave properly we should reparent
+ // the dialog for Windows as well - unfortunately,
+ // following the docs for SetParent() results in this
+ // code which plainly doesn't work
+#if 0
+ long dwStyle = ::GetWindowLong(GetHwnd(), GWL_STYLE);
+ dwStyle &= ~WS_POPUP;
+ dwStyle |= WS_CHILD;
+ ::SetWindowLong(GetHwnd(), GWL_STYLE, dwStyle);
+ ::SetParent(GetHwnd(), GetHwndOf(parent));
+#endif // 0
}
}