X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1b10056f6335f7d6b7a88e5e9e8509b167c1d85e..1d9fe50dc9ef6e605c04c1d01e064b3cc2769377:/src/gtk1/mdi.cpp diff --git a/src/gtk1/mdi.cpp b/src/gtk1/mdi.cpp index 36b2f789f0..295aef91fb 100644 --- a/src/gtk1/mdi.cpp +++ b/src/gtk1/mdi.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: mdi.cpp +// Name: src/gtk1/mdi.cpp // Purpose: // Author: Robert Roebling // Id: $Id$ @@ -7,27 +7,26 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "mdi.h" -#endif - // 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/gtk/private.h" +#include "wx/notebook.h" +#include "wx/gtk1/private.h" #include #include #include -#include "wx/gtk/win_gtk.h" +#include "wx/gtk1/win_gtk.h" //----------------------------------------------------------------------------- // constants @@ -46,12 +45,11 @@ extern bool g_isIdle; // globals //----------------------------------------------------------------------------- -extern wxList wxPendingDelete; - //----------------------------------------------------------------------------- // "switch_page" //----------------------------------------------------------------------------- +extern "C" { static void gtk_mdi_page_change_callback( GtkNotebook *WXUNUSED(widget), GtkNotebookPage *page, @@ -104,6 +102,7 @@ gtk_mdi_page_change_callback( GtkNotebook *WXUNUSED(widget), event2.SetEventObject( child); child->GetEventHandler()->ProcessEvent( event2 ); } +} //----------------------------------------------------------------------------- // wxMDIParentFrame @@ -338,7 +337,7 @@ wxMDIChildFrame::~wxMDIChildFrame() { if (m_menuBar) delete m_menuBar; -} +} bool wxMDIChildFrame::Create( wxMDIParentFrame *parent, wxWindowID id, const wxString& title, @@ -410,7 +409,7 @@ void wxMDIChildFrame::OnMenuHighlight( wxMenuEvent& event ) { #if wxUSE_STATUSBAR wxMDIParentFrame *mdi_frame = (wxMDIParentFrame*)m_parent->GetParent(); - if ( !ShowMenuHelp(mdi_frame->GetStatusBar(), event.GetMenuId()) ) + if ( !ShowMenuHelp(event.GetMenuId()) ) { // we don't have any help text for this item, but may be the MDI frame // does? @@ -435,6 +434,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(); @@ -450,6 +450,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 @@ -457,7 +458,7 @@ static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* static void wxInsertChildInMDI( wxMDIClientWindow* parent, wxMDIChildFrame* child ) { - wxString s = child->m_title; + wxString s = child->GetTitle(); if (s.IsNull()) s = _("MDI child"); GtkWidget *label_widget = gtk_label_new( s.mbc_str() ); @@ -503,7 +504,7 @@ bool wxMDIClientWindow::CreateClient( wxMDIParentFrame *parent, long style ) m_insertCallback = (wxInsertChildFunction)wxInsertChildInMDI; if (!PreCreation( parent, wxDefaultPosition, wxDefaultSize ) || - !CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, wxT("wxMDIClientWindow") )) + !CreateBase( parent, wxID_ANY, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, wxT("wxMDIClientWindow") )) { wxFAIL_MSG( wxT("wxMDIClientWindow creation failed") ); return false;