// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "mdi.h"
#endif
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
#include "wx/mdi.h"
-#if wxUSE_MDI_ARCHITECTURE
+#if wxUSE_MDI
#include "wx/dialog.h"
#include "wx/menu.h"
#include "wx/intl.h"
+#include "wx/gtk/private.h"
#include <glib.h>
#include <gdk/gdk.h>
wxMDIChildFrame *child = parent->GetActiveChild();
if (child)
{
- wxActivateEvent event1( wxEVT_ACTIVATE, FALSE, child->GetId() );
+ wxActivateEvent event1( wxEVT_ACTIVATE, false, child->GetId() );
event1.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event1 );
}
child = (wxMDIChildFrame*) NULL;
- wxNode *node = client_window->GetChildren().First();
+ wxWindowList::compatibility_iterator node = client_window->GetChildren().GetFirst();
while (node)
{
- wxMDIChildFrame *child_frame = (wxMDIChildFrame *)node->Data();
+ wxMDIChildFrame *child_frame = wxDynamicCast( node->GetData(), wxMDIChildFrame );
+
+ wxASSERT_MSG( child_frame, _T("child is not a wxMDIChildFrame") );
+
if (child_frame->m_page == page)
{
child = child_frame;
break;
}
- node = node->Next();
+ node = node->GetNext();
}
if (!child)
return;
- wxActivateEvent event2( wxEVT_ACTIVATE, TRUE, child->GetId() );
+ wxActivateEvent event2( wxEVT_ACTIVATE, true, child->GetId() );
event2.SetEventObject( child);
child->GetEventHandler()->ProcessEvent( event2 );
}
void wxMDIParentFrame::Init()
{
- m_justInserted = FALSE;
+ m_justInserted = false;
m_clientWindow = (wxMDIClientWindow *) NULL;
}
OnCreateClient();
- return TRUE;
+ return true;
}
void wxMDIParentFrame::GtkOnSize( int x, int y, int width, int height )
GtkNotebook *notebook = GTK_NOTEBOOK(m_clientWindow->m_widget);
gtk_notebook_set_page( notebook, g_list_length( notebook->children ) - 1 );
- m_justInserted = FALSE;
+ m_justInserted = false;
return;
}
wxFrame::OnInternalIdle();
wxMDIChildFrame *active_child_frame = GetActiveChild();
- bool visible_child_menu = FALSE;
+ bool visible_child_menu = false;
- wxNode *node = m_clientWindow->GetChildren().First();
+ wxWindowList::compatibility_iterator node = m_clientWindow->GetChildren().GetFirst();
while (node)
{
- wxObject *child = node->Data();
- wxMDIChildFrame *child_frame = wxDynamicCast(child, wxMDIChildFrame);
+ wxMDIChildFrame *child_frame = wxDynamicCast( node->GetData(), wxMDIChildFrame );
+
if ( child_frame )
{
wxMenuBar *menu_bar = child_frame->m_menuBar;
{
if (child_frame == active_child_frame)
{
- if (menu_bar->Show(TRUE))
+ if (menu_bar->Show(true))
{
menu_bar->m_width = m_width;
menu_bar->m_height = wxMENU_HEIGHT;
0, 0, m_width, wxMENU_HEIGHT );
menu_bar->SetInvokingWindow( child_frame );
}
- visible_child_menu = TRUE;
+ visible_child_menu = true;
}
else
{
- if (menu_bar->Show(FALSE))
+ if (menu_bar->Show(false))
{
menu_bar->UnsetInvokingWindow( child_frame );
}
}
}
- node = node->Next();
+ node = node->GetNext();
}
/* show/hide parent menu bar as required */
{
if (visible_child_menu)
{
- m_frameMenuBar->Show( FALSE );
+ m_frameMenuBar->Show( false );
m_frameMenuBar->UnsetInvokingWindow( this );
}
else
{
- m_frameMenuBar->Show( TRUE );
+ m_frameMenuBar->Show( true );
m_frameMenuBar->SetInvokingWindow( this );
m_frameMenuBar->m_width = m_width;
GtkNotebookPage* page = (GtkNotebookPage*) (g_list_nth(notebook->children,i)->data);
if (!page) return (wxMDIChildFrame*) NULL;
- wxNode *node = m_clientWindow->GetChildren().First();
+ wxWindowList::compatibility_iterator node = m_clientWindow->GetChildren().GetFirst();
while (node)
{
- wxMDIChildFrame *child_frame = (wxMDIChildFrame *)node->Data();
+ wxMDIChildFrame *child_frame = wxDynamicCast( node->GetData(), wxMDIChildFrame );
+
+ wxASSERT_MSG( child_frame, _T("child is not a wxMDIChildFrame") );
+
if (child_frame->m_page == page)
return child_frame;
- node = node->Next();
+ node = node->GetNext();
}
return (wxMDIChildFrame*) NULL;
wxMDIParentFrame* parent = (wxMDIParentFrame*) GetParent();
GtkNotebook* notebook = GTK_NOTEBOOK(parent->m_widget);
- gtk_notebook_set_tab_label_text(notebook, m_widget, title.mbc_str());
+ gtk_notebook_set_tab_label_text(notebook, m_widget, wxGTK_CONV( title ) );
}
//-----------------------------------------------------------------------------
child->m_page = (GtkNotebookPage*) (g_list_last(notebook->children)->data);
wxMDIParentFrame *parent_frame = (wxMDIParentFrame*) parent->GetParent();
- parent_frame->m_justInserted = TRUE;
+ parent_frame->m_justInserted = true;
}
//-----------------------------------------------------------------------------
bool wxMDIClientWindow::CreateClient( wxMDIParentFrame *parent, long style )
{
- m_needParent = TRUE;
+ m_needParent = true;
m_insertCallback = (wxInsertChildFunction)wxInsertChildInMDI;
!CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, wxT("wxMDIClientWindow") ))
{
wxFAIL_MSG( wxT("wxMDIClientWindow creation failed") );
- return FALSE;
+ return false;
}
m_widget = gtk_notebook_new();
PostCreation();
- Show( TRUE );
+ Show( true );
- return TRUE;
+ return true;
}
#endif