X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3cbab64109b007fa1d939fe588f5e79f9105b915..f363cee882672e147340240cf0bb194a68e37833:/src/gtk1/frame.cpp diff --git a/src/gtk1/frame.cpp b/src/gtk1/frame.cpp index 9b703f28d8..ba31a23433 100644 --- a/src/gtk1/frame.cpp +++ b/src/gtk1/frame.cpp @@ -1,12 +1,14 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: frame.cpp +// Name: src/gtk1/frame.cpp // Purpose: // Author: Robert Roebling -// Id: $Id$ // Copyright: (c) 1998 Robert Roebling // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +// For compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" + // ============================================================================ // declarations // ============================================================================ @@ -15,23 +17,17 @@ // headers // ---------------------------------------------------------------------------- -// For compilers that support precompilation, includes "wx.h". -#include "wx/wxprec.h" - -#include "wx/defs.h" - #include "wx/frame.h" -#include "wx/dialog.h" -#include "wx/control.h" -#include "wx/app.h" -#include "wx/menu.h" -#if wxUSE_TOOLBAR + +#ifndef WX_PRECOMP + #include "wx/app.h" + #include "wx/dcclient.h" + #include "wx/menu.h" + #include "wx/dialog.h" + #include "wx/control.h" #include "wx/toolbar.h" -#endif -#if wxUSE_STATUSBAR #include "wx/statusbr.h" -#endif -#include "wx/dcclient.h" +#endif // WX_PRECOMP #include #include "wx/gtk1/private.h" @@ -59,8 +55,6 @@ extern bool g_isIdle; // event tables // ---------------------------------------------------------------------------- -IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow) - // ============================================================================ // implementation // ============================================================================ @@ -232,7 +226,8 @@ bool wxFrame::Create( wxWindow *parent, wxFrame::~wxFrame() { - m_isBeingDeleted = true; + SendDestroyEvent(); + DeleteAllBars(); } @@ -388,7 +383,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), geom.max_width = maxWidth; geom.max_height = maxHeight; gtk_window_set_geometry_hints( GTK_WINDOW(m_widget), - (GtkWidget*) NULL, + NULL, &geom, (GdkWindowHints) flag ); @@ -489,7 +484,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), gtk_pizza_set_size( GTK_PIZZA(m_wxwindow), m_frameStatusBar->m_widget, xx, yy, ww, hh ); - gtk_widget_draw( m_frameStatusBar->m_widget, (GdkRectangle*) NULL ); + gtk_widget_draw( m_frameStatusBar->m_widget, NULL ); } #endif // wxUSE_STATUSBAR @@ -498,7 +493,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), // send size event to frame wxSizeEvent event( wxSize(m_width,m_height), GetId() ); event.SetEventObject( this ); - GetEventHandler()->ProcessEvent( event ); + HandleWindowEvent( event ); #if wxUSE_STATUSBAR // send size event to status bar @@ -506,7 +501,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), { wxSizeEvent event2( wxSize(m_frameStatusBar->m_width,m_frameStatusBar->m_height), m_frameStatusBar->GetId() ); event2.SetEventObject( m_frameStatusBar ); - m_frameStatusBar->GetEventHandler()->ProcessEvent( event2 ); + m_frameStatusBar->HandleWindowEvent( event2 ); } #endif // wxUSE_STATUSBAR @@ -554,7 +549,7 @@ void wxFrame::DetachMenuBar() if ( m_frameMenuBar ) { - m_frameMenuBar->UnsetInvokingWindow( this ); + m_frameMenuBar->Attach( this ); if (m_frameMenuBar->GetWindowStyle() & wxMB_DOCKABLE) { @@ -579,8 +574,6 @@ void wxFrame::AttachMenuBar( wxMenuBar *menuBar ) if (m_frameMenuBar) { - m_frameMenuBar->SetInvokingWindow( this ); - m_frameMenuBar->SetParent(this); gtk_pizza_put( GTK_PIZZA(m_mainWidget), m_frameMenuBar->m_widget,