Minor Reparent() and SetToolBar() fix for wxFrame.

Corrected size reported by wxToolBar.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
1999-10-20 15:30:42 +00:00
parent 280132e34e
commit 3017f78d67
12 changed files with 75 additions and 60 deletions

View File

@@ -85,6 +85,7 @@ static void gtk_frame_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation*
(int)alloc->width,
(int)alloc->height );
*/
win->m_width = alloc->width;
win->m_height = alloc->height;
win->UpdateSize();
@@ -667,7 +668,7 @@ void wxFrame::DoSetClientSize( int width, int height )
}
#endif
wxWindow::DoSetClientSize( width + m_miniEdge*2, height + m_miniEdge*2 + m_miniTitle );
DoSetSize( -1, -1, width + m_miniEdge*2, height + m_miniEdge*2 + m_miniTitle, 0 );
}
void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height )
@@ -685,7 +686,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
m_width = width;
m_height = height;
/* space occupied by m_frameToolBar and m_frameMenuBar */
int client_area_y_offset = 0;
@@ -979,16 +980,13 @@ void wxFrame::SetToolBar(wxToolBar *toolbar)
if (m_frameToolBar)
{
/* insert into toolbar area if not already there */
if (m_frameToolBar->m_widget->parent != m_mainWidget)
if ((m_frameToolBar->m_widget->parent) &&
(m_frameToolBar->m_widget->parent != m_mainWidget))
{
gtk_widget_ref( m_frameToolBar->m_widget );
gtk_widget_unparent( m_frameToolBar->m_widget );
m_insertInClientArea = TRUE;
wxInsertChildInFrame( this, m_frameToolBar );
m_insertInClientArea = FALSE;
gtk_widget_unref( m_frameToolBar->m_widget );
GetChildren().DeleteObject( m_frameToolBar );
gtk_widget_reparent( m_frameToolBar->m_widget, m_mainWidget );
UpdateSize();
}
}
}