X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5bd9e5192b0299100b06a1b982d031b87538961b..1ecffbff714ff707ded9266bf27c3347946cbcd9:/src/gtk1/frame.cpp diff --git a/src/gtk1/frame.cpp b/src/gtk1/frame.cpp index c33bf7f0cf..61259fad4b 100644 --- a/src/gtk1/frame.cpp +++ b/src/gtk1/frame.cpp @@ -16,8 +16,12 @@ #include "wx/control.h" #include "wx/app.h" #include "wx/menu.h" +#if wxUSE_TOOLBAR #include "wx/toolbar.h" +#endif +#if wxUSE_STATUSBAR #include "wx/statusbr.h" +#endif #include "wx/dcclient.h" #include "glib.h" @@ -148,19 +152,28 @@ static void gtk_toolbar_detached_callback( GtkWidget *widget, GtkWidget *WXUNUSE // "configure_event" //----------------------------------------------------------------------------- -static gint gtk_frame_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *WXUNUSED(event), wxFrame *win ) +static gint +#if (GTK_MINOR_VERSON > 0) +gtk_frame_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *WXUNUSED(event), wxFrame *win ) +#else +gtk_frame_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *event, wxFrame *win ) +#endif { - if (g_isIdle) + if (g_isIdle) wxapp_install_idle_handler(); if (!win->m_hasVMT) return FALSE; +#if (GTK_MINOR_VERSON > 0) int x = 0; int y = 0; gdk_window_get_root_origin( win->m_widget->window, &x, &y ); - win->m_x = x; win->m_y = y; +#else + win->m_x = event->x; + win->m_y = event->y; +#endif wxMoveEvent mevent( wxPoint(win->m_x,win->m_y), win->GetId() ); mevent.SetEventObject( win ); @@ -560,9 +573,12 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const (*height) -= wxPLACE_HOLDER; } +#if wxUSE_STATUSBAR /* status bar */ if (m_frameStatusBar) (*height) -= wxSTATUS_HEIGHT; +#endif +#if wxUSE_TOOLBAR /* tool bar */ if (m_frameToolBar) { @@ -575,6 +591,7 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const else (*height) -= wxPLACE_HOLDER; } +#endif /* mini edge */ (*height) -= m_miniEdge*2 + m_miniTitle; @@ -598,9 +615,12 @@ void wxFrame::DoSetClientSize( int width, int height ) height += wxPLACE_HOLDER; } +#if wxUSE_STATUSBAR /* status bar */ if (m_frameStatusBar) height += wxSTATUS_HEIGHT; +#endif +#if wxUSE_TOOLBAR /* tool bar */ if (m_frameToolBar) { @@ -613,6 +633,7 @@ void wxFrame::DoSetClientSize( int width, int height ) else height += wxPLACE_HOLDER; } +#endif wxWindow::DoSetClientSize( width + m_miniEdge*2, height + m_miniEdge*2 + m_miniTitle ); } @@ -674,6 +695,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height client_area_y_offset += hh; } +#if wxUSE_TOOLBAR if (m_frameToolBar) { int xx = m_miniEdge; @@ -697,6 +719,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height xx, yy, ww, hh ); client_area_y_offset += hh; } +#endif int client_x = m_miniEdge; int client_y = client_area_y_offset + m_miniEdge + m_miniTitle; @@ -712,6 +735,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height is no need to set the size or position of m_wxwindow. */ } +#if wxUSE_STATUSBAR if (m_frameStatusBar) { int xx = 0 + m_miniEdge; @@ -726,6 +750,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height m_frameStatusBar->m_widget, xx, yy, ww, hh ); } +#endif /* we actually set the size of a frame here and no-where else */ gtk_widget_set_usize( m_widget, m_width, m_height ); @@ -764,8 +789,12 @@ void wxFrame::OnInternalIdle() DoMenuUpdates(); if (m_frameMenuBar) m_frameMenuBar->OnInternalIdle(); +#if wxUSE_TOOLBAR if (m_frameToolBar) m_frameToolBar->OnInternalIdle(); +#endif +#if wxUSE_STATUSBAR if (m_frameStatusBar) m_frameStatusBar->OnInternalIdle(); +#endif } void wxFrame::OnCloseWindow( wxCloseEvent& WXUNUSED(event) )