// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
+#if wxUSE_MDI
+
#include "wx/mdi.h"
-#include "wx/notebook.h"
-#if wxUSE_MDI
+#ifndef WX_PRECOMP
+ #include "wx/intl.h"
+ #include "wx/menu.h"
+ #include "wx/dialog.h"
+#endif
-#include "wx/dialog.h"
-#include "wx/menu.h"
-#include "wx/intl.h"
+#include "wx/notebook.h"
#include "wx/gtk/private.h"
#include <glib.h>
// globals
//-----------------------------------------------------------------------------
-extern wxList wxPendingDelete;
-
//-----------------------------------------------------------------------------
// "switch_page"
//-----------------------------------------------------------------------------
child = (wxMDIChildFrame*) NULL;
wxWindowList::compatibility_iterator node = client_window->GetChildren().GetFirst();
- while (node)
+ while ( node )
{
wxMDIChildFrame *child_frame = wxDynamicCast( node->GetData(), wxMDIChildFrame );
- // CE: we come here in the destructor with a null child_frame - I think because
- // g_signal_connect (m_widget, "switch_page", (see below)
- // isn't deleted early enough
- if (!child_frame)
- return ;
- if (child_frame->m_page == page)
+ // child_frame can be NULL when this is called from dtor, probably
+ // because g_signal_connect (m_widget, "switch_page", (see below)
+ // isn't deleted early enough
+ if ( child_frame && child_frame->m_page == page )
{
child = child_frame;
break;