X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/147d666989aeeefe8c8f23be050d71891afbfd2e..222702b112dcc7bebe018d6f4d66fe469fefd02c:/src/gtk/mdi.cpp diff --git a/src/gtk/mdi.cpp b/src/gtk/mdi.cpp index 99c278b2d5..ddd65e82be 100644 --- a/src/gtk/mdi.cpp +++ b/src/gtk/mdi.cpp @@ -52,6 +52,7 @@ extern wxList wxPendingDelete; // "switch_page" //----------------------------------------------------------------------------- +extern "C" { static void gtk_mdi_page_change_callback( GtkNotebook *WXUNUSED(widget), GtkNotebookPage *page, @@ -104,6 +105,7 @@ gtk_mdi_page_change_callback( GtkNotebook *WXUNUSED(widget), event2.SetEventObject( child); child->GetEventHandler()->ProcessEvent( event2 ); } +} //----------------------------------------------------------------------------- // wxMDIParentFrame @@ -170,17 +172,19 @@ void wxMDIParentFrame::OnInternalIdle() /* need to set the menubar of the child */ wxMDIChildFrame *active_child_frame = GetActiveChild(); - wxMenuBar *menu_bar = active_child_frame->m_menuBar; - if (menu_bar) + if (active_child_frame != NULL) { - menu_bar->m_width = m_width; - menu_bar->m_height = wxMENU_HEIGHT; - gtk_pizza_set_size( GTK_PIZZA(m_mainWidget), - menu_bar->m_widget, - 0, 0, m_width, wxMENU_HEIGHT ); - menu_bar->SetInvokingWindow(active_child_frame); + wxMenuBar *menu_bar = active_child_frame->m_menuBar; + if (menu_bar) + { + menu_bar->m_width = m_width; + menu_bar->m_height = wxMENU_HEIGHT; + gtk_pizza_set_size( GTK_PIZZA(m_mainWidget), + menu_bar->m_widget, + 0, 0, m_width, wxMENU_HEIGHT ); + menu_bar->SetInvokingWindow(active_child_frame); + } } - m_justInserted = false; return; } @@ -433,6 +437,7 @@ void wxMDIChildFrame::SetTitle( const wxString &title ) // "size_allocate" //----------------------------------------------------------------------------- +extern "C" { static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win ) { if (g_isIdle) wxapp_install_idle_handler(); @@ -448,6 +453,7 @@ static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* win->SetSize( alloc->x, alloc->y, alloc->width, alloc->height ); } +} //----------------------------------------------------------------------------- // InsertChild callback for wxMDIClientWindow