make wxFrame a wxControlContainer too, so that it behaves in the same way as wxDialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -40,8 +40,11 @@ BEGIN_EVENT_TABLE(wxTopLevelWindowBase, wxWindow)
|
||||
EVT_CLOSE(wxTopLevelWindowBase::OnCloseWindow)
|
||||
EVT_SIZE(wxTopLevelWindowBase::OnSize)
|
||||
EVT_WINDOW_DESTROY(wxTopLevelWindowBase::OnChildDestroy)
|
||||
WX_EVENT_TABLE_CONTROL_CONTAINER(wxTopLevelWindowBase)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
WX_DELEGATE_TO_CONTROL_CONTAINER(wxTopLevelWindowBase, wxWindow)
|
||||
|
||||
// ============================================================================
|
||||
// implementation
|
||||
// ============================================================================
|
||||
@@ -58,10 +61,14 @@ wxTopLevelWindowBase::wxTopLevelWindowBase()
|
||||
m_isShown = false;
|
||||
m_winDefault = NULL;
|
||||
m_winTmpDefault = NULL;
|
||||
|
||||
WX_INIT_CONTROL_CONTAINER();
|
||||
}
|
||||
|
||||
wxTopLevelWindowBase::~wxTopLevelWindowBase()
|
||||
{
|
||||
m_winDefault = m_winTmpDefault = NULL;
|
||||
|
||||
// don't let wxTheApp keep any stale pointers to us
|
||||
if ( wxTheApp && wxTheApp->GetTopWindow() == this )
|
||||
wxTheApp->SetTopWindow(NULL);
|
||||
@@ -412,14 +419,3 @@ void wxTopLevelWindowBase::RequestUserAttention(int WXUNUSED(flags))
|
||||
// it's probably better than do nothing, isn't it?
|
||||
Raise();
|
||||
}
|
||||
|
||||
void wxTopLevelWindowBase::RemoveChild(wxWindowBase *child)
|
||||
{
|
||||
if ( child == m_winDefault )
|
||||
m_winDefault = NULL;
|
||||
|
||||
if ( child == m_winTmpDefault )
|
||||
m_winTmpDefault = NULL;
|
||||
|
||||
wxWindow::RemoveChild(child);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user