Since wxPanel is now AutoLayout aware, removed indirect auto layouting

of child windows from wxNotebook and wxSplitter, as per Robert's
request.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
1999-10-20 18:30:47 +00:00
parent 50073cf24c
commit a6aa9b1ee8
5 changed files with 58 additions and 74 deletions

View File

@@ -1720,8 +1720,10 @@ from within wxWindow::OnSize functions.}
\wxheading{Remarks} \wxheading{Remarks}
Note that this function is actually disabled for wxWindow. It has Note that this function is actually disabled for wxWindow. It has
effect for wxDialog, wxFrame, wxPanel and wxScrolledWindow as well as indirectly for effect for wxDialog, wxFrame, wxPanel and wxScrolledWindow. Windows
children of wxNotebook and wxSplitterWindow. of other types that need to invoke the Layout algorithm should provide
an EVT_SIZE handler and call
\helpref{wxWindow::Layout}{wxwindowlayout} from within it.
\wxheading{See also} \wxheading{See also}

View File

@@ -185,7 +185,7 @@ void wxSplitterWindow::OnMouseEvent(wxMouseEvent& event)
{ {
DrawSashTracker(x, y); DrawSashTracker(x, y);
} }
m_oldX = x; m_oldX = x;
m_oldY = y; m_oldY = y;
return; return;
@@ -279,7 +279,7 @@ void wxSplitterWindow::OnMouseEvent(wxMouseEvent& event)
} }
#endif // __WXGTK__ #endif // __WXGTK__
} }
else if (event.Dragging() && (m_dragMode == wxSPLIT_DRAG_DRAGGING)) else if (event.Dragging() && (m_dragMode == wxSPLIT_DRAG_DRAGGING))
{ {
// Obtain window size. We are only interested in the dimension the sash // Obtain window size. We are only interested in the dimension the sash
// splits up // splits up
@@ -433,7 +433,7 @@ void wxSplitterWindow::DrawBorders(wxDC& dc)
if ( GetWindowStyleFlag() & wxSP_3D ) if ( GetWindowStyleFlag() & wxSP_3D )
{ {
dc.SetPen(*m_facePen); dc.SetPen(*m_facePen);
dc.SetBrush(*m_faceBrush); dc.SetBrush(*m_faceBrush);
dc.DrawRectangle(1, 1 , w-1, m_borderSize-2 ); //high dc.DrawRectangle(1, 1 , w-1, m_borderSize-2 ); //high
@@ -618,9 +618,7 @@ void wxSplitterWindow::SizeWindows()
if ( m_windowOne && !m_windowTwo ) if ( m_windowOne && !m_windowTwo )
{ {
m_windowOne->SetSize(m_borderSize, m_borderSize, w - 2*m_borderSize, h - 2*m_borderSize); m_windowOne->SetSize(m_borderSize, m_borderSize, w - 2*m_borderSize, h - 2*m_borderSize);
if (m_windowOne->GetAutoLayout())
m_windowOne->Layout();
} }
else if ( m_windowOne && m_windowTwo ) else if ( m_windowOne && m_windowTwo )
{ {
@@ -638,11 +636,7 @@ void wxSplitterWindow::SizeWindows()
m_windowOne->SetSize(x1, y1, w1, h1); m_windowOne->SetSize(x1, y1, w1, h1);
m_windowTwo->SetSize(x2, y2, w2, h2); m_windowTwo->SetSize(x2, y2, w2, h2);
if (m_windowOne->GetAutoLayout())
m_windowOne->Layout();
if (m_windowTwo->GetAutoLayout())
m_windowTwo->Layout();
} }
else else
{ {
@@ -650,11 +644,7 @@ void wxSplitterWindow::SizeWindows()
w - 2*m_borderSize, m_sashPosition - m_borderSize); w - 2*m_borderSize, m_sashPosition - m_borderSize);
m_windowTwo->SetSize(m_borderSize, m_sashPosition + m_sashSize, m_windowTwo->SetSize(m_borderSize, m_sashPosition + m_sashSize,
w - 2*m_borderSize, h - 2*m_borderSize - m_sashSize - (m_sashPosition - m_borderSize)); w - 2*m_borderSize, h - 2*m_borderSize - m_sashSize - (m_sashPosition - m_borderSize));
if (m_windowOne->GetAutoLayout())
m_windowOne->Layout();
if (m_windowTwo->GetAutoLayout())
m_windowTwo->Layout();
} }
} }
wxClientDC dc(this); wxClientDC dc(this);

View File

@@ -82,7 +82,7 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget),
gint page, gint page,
wxNotebook *notebook ) wxNotebook *notebook )
{ {
if (g_isIdle) if (g_isIdle)
wxapp_install_idle_handler(); wxapp_install_idle_handler();
int old = notebook->GetSelection(); int old = notebook->GetSelection();
@@ -90,7 +90,7 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget),
wxNotebookEvent event1( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, wxNotebookEvent event1( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING,
notebook->GetId(), page, old ); notebook->GetId(), page, old );
event1.SetEventObject( notebook ); event1.SetEventObject( notebook );
if ((notebook->GetEventHandler()->ProcessEvent( event1 )) && if ((notebook->GetEventHandler()->ProcessEvent( event1 )) &&
!event1.IsAllowed() ) !event1.IsAllowed() )
{ {
@@ -111,7 +111,7 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget),
static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win ) static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win )
{ {
if (g_isIdle) if (g_isIdle)
wxapp_install_idle_handler(); wxapp_install_idle_handler();
if ((win->m_x == alloc->x) && if ((win->m_x == alloc->x) &&
@@ -121,18 +121,16 @@ static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation*
{ {
return; return;
} }
win->SetSize( alloc->x, alloc->y, alloc->width, alloc->height ); win->SetSize( alloc->x, alloc->y, alloc->width, alloc->height );
if (win->GetAutoLayout())
win->Layout();
} }
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// "realize" from m_widget // "realize" from m_widget
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
/* GTK 1.2 up to version 1.2.5 is broken so that we have to call a queue_resize /* GTK 1.2 up to version 1.2.5 is broken so that we have to call a queue_resize
here in order to take repositioning before showing to take effect. */ here in order to take repositioning before showing to take effect. */
static gint static gint
@@ -188,7 +186,7 @@ wxNotebook::wxNotebook( wxWindow *parent, wxWindowID id,
wxNotebook::~wxNotebook() wxNotebook::~wxNotebook()
{ {
/* don't generate change page events any more */ /* don't generate change page events any more */
gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget), gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget),
GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this ); GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this );
DeleteAllPages(); DeleteAllPages();
@@ -234,7 +232,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id,
gtk_signal_connect( GTK_OBJECT(m_widget), "realize", gtk_signal_connect( GTK_OBJECT(m_widget), "realize",
GTK_SIGNAL_FUNC(gtk_notebook_realized_callback), (gpointer) this ); GTK_SIGNAL_FUNC(gtk_notebook_realized_callback), (gpointer) this );
Show( TRUE ); Show( TRUE );
return TRUE; return TRUE;
@@ -262,9 +260,9 @@ int wxNotebook::GetSelection() const
if (g_list_length(pages) == 0) return -1; if (g_list_length(pages) == 0) return -1;
GtkNotebook *notebook = GTK_NOTEBOOK(m_widget); GtkNotebook *notebook = GTK_NOTEBOOK(m_widget);
if (notebook->cur_page == NULL) return m_lastSelection; if (notebook->cur_page == NULL) return m_lastSelection;
return g_list_index( pages, (gpointer)(notebook->cur_page) ); return g_list_index( pages, (gpointer)(notebook->cur_page) );
} }
@@ -305,9 +303,9 @@ wxNotebookPage* wxNotebook::GetNotebookPage( int page ) const
wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, wxT("invalid notebook") ); wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, wxT("invalid notebook") );
wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, wxT("invalid notebook index") ); wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, wxT("invalid notebook index") );
wxNode *node = m_pages.Nth( page ); wxNode *node = m_pages.Nth( page );
return (wxNotebookPage *) node->Data(); return (wxNotebookPage *) node->Data();
} }
@@ -318,7 +316,7 @@ int wxNotebook::SetSelection( int page )
wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, wxT("invalid notebook index") ); wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, wxT("invalid notebook index") );
int selOld = GetSelection(); int selOld = GetSelection();
gtk_notebook_set_page( GTK_NOTEBOOK(m_widget), page ); gtk_notebook_set_page( GTK_NOTEBOOK(m_widget), page );
return selOld; return selOld;
@@ -353,7 +351,7 @@ bool wxNotebook::SetPageText( int page, const wxString &text )
nb_page->m_text = text; nb_page->m_text = text;
gtk_label_set( nb_page->m_label, nb_page->m_text.mbc_str() ); gtk_label_set( nb_page->m_label, nb_page->m_text.mbc_str() );
return TRUE; return TRUE;
} }
@@ -475,10 +473,10 @@ bool wxNotebook::DeletePage( int page )
/* GTK sets GtkNotebook.cur_page to NULL before sending /* GTK sets GtkNotebook.cur_page to NULL before sending
the switvh page event */ the switvh page event */
m_lastSelection = GetSelection(); m_lastSelection = GetSelection();
nb_page->m_client->Destroy(); nb_page->m_client->Destroy();
m_pages.DeleteObject( nb_page ); m_pages.DeleteObject( nb_page );
m_lastSelection = -1; m_lastSelection = -1;
return TRUE; return TRUE;
@@ -487,7 +485,7 @@ bool wxNotebook::DeletePage( int page )
bool wxNotebook::RemovePage( int page ) bool wxNotebook::RemovePage( int page )
{ {
wxNotebookPage* nb_page = GetNotebookPage(page); wxNotebookPage* nb_page = GetNotebookPage(page);
if (!nb_page) return FALSE; if (!nb_page) return FALSE;
gtk_notebook_remove_page( GTK_NOTEBOOK(m_widget), page ); gtk_notebook_remove_page( GTK_NOTEBOOK(m_widget), page );
@@ -505,19 +503,19 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text,
wxCHECK_MSG( win->GetParent() == this, FALSE, wxCHECK_MSG( win->GetParent() == this, FALSE,
wxT("Can't add a page whose parent is not the notebook!") ); wxT("Can't add a page whose parent is not the notebook!") );
/* don't receive switch page during addition */ /* don't receive switch page during addition */
gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget), gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget),
GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this ); GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this );
GtkNotebook *notebook = GTK_NOTEBOOK(m_widget); GtkNotebook *notebook = GTK_NOTEBOOK(m_widget);
wxNotebookPage *page = new wxNotebookPage(); wxNotebookPage *page = new wxNotebookPage();
if (position < 0) if (position < 0)
m_pages.Append( page ); m_pages.Append( page );
else else
m_pages.Insert( m_pages.Nth( position ), page ); m_pages.Insert( m_pages.Nth( position ), page );
page->m_client = win; page->m_client = win;
page->m_box = gtk_hbox_new( FALSE, 0 ); page->m_box = gtk_hbox_new( FALSE, 0 );
@@ -528,14 +526,14 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text,
if (position < 0) if (position < 0)
gtk_notebook_append_page( notebook, win->m_widget, page->m_box ); gtk_notebook_append_page( notebook, win->m_widget, page->m_box );
else else
gtk_notebook_insert_page( notebook, win->m_widget, page->m_box, position ); gtk_notebook_insert_page( notebook, win->m_widget, page->m_box, position );
page->m_page = (GtkNotebookPage*) g_list_last(notebook->children)->data; page->m_page = (GtkNotebookPage*) g_list_last(notebook->children)->data;
/* set the label image */ /* set the label image */
page->m_image = imageId; page->m_image = imageId;
if (imageId != -1) if (imageId != -1)
{ {
wxASSERT( m_imageList != NULL ); wxASSERT( m_imageList != NULL );
@@ -558,7 +556,7 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text,
/* set the label text */ /* set the label text */
page->m_text = text; page->m_text = text;
if (page->m_text.IsEmpty()) page->m_text = wxT(""); if (page->m_text.IsEmpty()) page->m_text = wxT("");
page->m_label = GTK_LABEL( gtk_label_new(page->m_text.mbc_str()) ); page->m_label = GTK_LABEL( gtk_label_new(page->m_text.mbc_str()) );
gtk_box_pack_end( GTK_BOX(page->m_box), GTK_WIDGET(page->m_label), FALSE, FALSE, 3 ); gtk_box_pack_end( GTK_BOX(page->m_box), GTK_WIDGET(page->m_label), FALSE, FALSE, 3 );

View File

@@ -82,7 +82,7 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget),
gint page, gint page,
wxNotebook *notebook ) wxNotebook *notebook )
{ {
if (g_isIdle) if (g_isIdle)
wxapp_install_idle_handler(); wxapp_install_idle_handler();
int old = notebook->GetSelection(); int old = notebook->GetSelection();
@@ -90,7 +90,7 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget),
wxNotebookEvent event1( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, wxNotebookEvent event1( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING,
notebook->GetId(), page, old ); notebook->GetId(), page, old );
event1.SetEventObject( notebook ); event1.SetEventObject( notebook );
if ((notebook->GetEventHandler()->ProcessEvent( event1 )) && if ((notebook->GetEventHandler()->ProcessEvent( event1 )) &&
!event1.IsAllowed() ) !event1.IsAllowed() )
{ {
@@ -111,7 +111,7 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget),
static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win ) static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win )
{ {
if (g_isIdle) if (g_isIdle)
wxapp_install_idle_handler(); wxapp_install_idle_handler();
if ((win->m_x == alloc->x) && if ((win->m_x == alloc->x) &&
@@ -121,18 +121,16 @@ static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation*
{ {
return; return;
} }
win->SetSize( alloc->x, alloc->y, alloc->width, alloc->height ); win->SetSize( alloc->x, alloc->y, alloc->width, alloc->height );
if (win->GetAutoLayout())
win->Layout();
} }
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// "realize" from m_widget // "realize" from m_widget
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
/* GTK 1.2 up to version 1.2.5 is broken so that we have to call a queue_resize /* GTK 1.2 up to version 1.2.5 is broken so that we have to call a queue_resize
here in order to take repositioning before showing to take effect. */ here in order to take repositioning before showing to take effect. */
static gint static gint
@@ -188,7 +186,7 @@ wxNotebook::wxNotebook( wxWindow *parent, wxWindowID id,
wxNotebook::~wxNotebook() wxNotebook::~wxNotebook()
{ {
/* don't generate change page events any more */ /* don't generate change page events any more */
gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget), gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget),
GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this ); GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this );
DeleteAllPages(); DeleteAllPages();
@@ -234,7 +232,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id,
gtk_signal_connect( GTK_OBJECT(m_widget), "realize", gtk_signal_connect( GTK_OBJECT(m_widget), "realize",
GTK_SIGNAL_FUNC(gtk_notebook_realized_callback), (gpointer) this ); GTK_SIGNAL_FUNC(gtk_notebook_realized_callback), (gpointer) this );
Show( TRUE ); Show( TRUE );
return TRUE; return TRUE;
@@ -262,9 +260,9 @@ int wxNotebook::GetSelection() const
if (g_list_length(pages) == 0) return -1; if (g_list_length(pages) == 0) return -1;
GtkNotebook *notebook = GTK_NOTEBOOK(m_widget); GtkNotebook *notebook = GTK_NOTEBOOK(m_widget);
if (notebook->cur_page == NULL) return m_lastSelection; if (notebook->cur_page == NULL) return m_lastSelection;
return g_list_index( pages, (gpointer)(notebook->cur_page) ); return g_list_index( pages, (gpointer)(notebook->cur_page) );
} }
@@ -305,9 +303,9 @@ wxNotebookPage* wxNotebook::GetNotebookPage( int page ) const
wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, wxT("invalid notebook") ); wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, wxT("invalid notebook") );
wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, wxT("invalid notebook index") ); wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, wxT("invalid notebook index") );
wxNode *node = m_pages.Nth( page ); wxNode *node = m_pages.Nth( page );
return (wxNotebookPage *) node->Data(); return (wxNotebookPage *) node->Data();
} }
@@ -318,7 +316,7 @@ int wxNotebook::SetSelection( int page )
wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, wxT("invalid notebook index") ); wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, wxT("invalid notebook index") );
int selOld = GetSelection(); int selOld = GetSelection();
gtk_notebook_set_page( GTK_NOTEBOOK(m_widget), page ); gtk_notebook_set_page( GTK_NOTEBOOK(m_widget), page );
return selOld; return selOld;
@@ -353,7 +351,7 @@ bool wxNotebook::SetPageText( int page, const wxString &text )
nb_page->m_text = text; nb_page->m_text = text;
gtk_label_set( nb_page->m_label, nb_page->m_text.mbc_str() ); gtk_label_set( nb_page->m_label, nb_page->m_text.mbc_str() );
return TRUE; return TRUE;
} }
@@ -475,10 +473,10 @@ bool wxNotebook::DeletePage( int page )
/* GTK sets GtkNotebook.cur_page to NULL before sending /* GTK sets GtkNotebook.cur_page to NULL before sending
the switvh page event */ the switvh page event */
m_lastSelection = GetSelection(); m_lastSelection = GetSelection();
nb_page->m_client->Destroy(); nb_page->m_client->Destroy();
m_pages.DeleteObject( nb_page ); m_pages.DeleteObject( nb_page );
m_lastSelection = -1; m_lastSelection = -1;
return TRUE; return TRUE;
@@ -487,7 +485,7 @@ bool wxNotebook::DeletePage( int page )
bool wxNotebook::RemovePage( int page ) bool wxNotebook::RemovePage( int page )
{ {
wxNotebookPage* nb_page = GetNotebookPage(page); wxNotebookPage* nb_page = GetNotebookPage(page);
if (!nb_page) return FALSE; if (!nb_page) return FALSE;
gtk_notebook_remove_page( GTK_NOTEBOOK(m_widget), page ); gtk_notebook_remove_page( GTK_NOTEBOOK(m_widget), page );
@@ -505,19 +503,19 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text,
wxCHECK_MSG( win->GetParent() == this, FALSE, wxCHECK_MSG( win->GetParent() == this, FALSE,
wxT("Can't add a page whose parent is not the notebook!") ); wxT("Can't add a page whose parent is not the notebook!") );
/* don't receive switch page during addition */ /* don't receive switch page during addition */
gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget), gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget),
GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this ); GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this );
GtkNotebook *notebook = GTK_NOTEBOOK(m_widget); GtkNotebook *notebook = GTK_NOTEBOOK(m_widget);
wxNotebookPage *page = new wxNotebookPage(); wxNotebookPage *page = new wxNotebookPage();
if (position < 0) if (position < 0)
m_pages.Append( page ); m_pages.Append( page );
else else
m_pages.Insert( m_pages.Nth( position ), page ); m_pages.Insert( m_pages.Nth( position ), page );
page->m_client = win; page->m_client = win;
page->m_box = gtk_hbox_new( FALSE, 0 ); page->m_box = gtk_hbox_new( FALSE, 0 );
@@ -528,14 +526,14 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text,
if (position < 0) if (position < 0)
gtk_notebook_append_page( notebook, win->m_widget, page->m_box ); gtk_notebook_append_page( notebook, win->m_widget, page->m_box );
else else
gtk_notebook_insert_page( notebook, win->m_widget, page->m_box, position ); gtk_notebook_insert_page( notebook, win->m_widget, page->m_box, position );
page->m_page = (GtkNotebookPage*) g_list_last(notebook->children)->data; page->m_page = (GtkNotebookPage*) g_list_last(notebook->children)->data;
/* set the label image */ /* set the label image */
page->m_image = imageId; page->m_image = imageId;
if (imageId != -1) if (imageId != -1)
{ {
wxASSERT( m_imageList != NULL ); wxASSERT( m_imageList != NULL );
@@ -558,7 +556,7 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text,
/* set the label text */ /* set the label text */
page->m_text = text; page->m_text = text;
if (page->m_text.IsEmpty()) page->m_text = wxT(""); if (page->m_text.IsEmpty()) page->m_text = wxT("");
page->m_label = GTK_LABEL( gtk_label_new(page->m_text.mbc_str()) ); page->m_label = GTK_LABEL( gtk_label_new(page->m_text.mbc_str()) );
gtk_box_pack_end( GTK_BOX(page->m_box), GTK_WIDGET(page->m_label), FALSE, FALSE, 3 ); gtk_box_pack_end( GTK_BOX(page->m_box), GTK_WIDGET(page->m_label), FALSE, FALSE, 3 );

View File

@@ -414,8 +414,6 @@ bool wxNotebook::InsertPage(int nPage,
GetSize((int *)&rc.right, (int *)&rc.bottom); GetSize((int *)&rc.right, (int *)&rc.bottom);
TabCtrl_AdjustRect(m_hwnd, FALSE, &rc); TabCtrl_AdjustRect(m_hwnd, FALSE, &rc);
pPage->SetSize(rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top); pPage->SetSize(rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top);
if ( pPage->GetAutoLayout() )
pPage->Layout();
// some page should be selected: either this one or the first one if there is // some page should be selected: either this one or the first one if there is
@@ -448,8 +446,6 @@ void wxNotebook::OnSize(wxSizeEvent& event)
for ( size_t nPage = 0; nPage < nCount; nPage++ ) { for ( size_t nPage = 0; nPage < nCount; nPage++ ) {
wxNotebookPage *pPage = m_aPages[nPage]; wxNotebookPage *pPage = m_aPages[nPage];
pPage->SetSize(rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top); pPage->SetSize(rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top);
if ( pPage->GetAutoLayout() )
pPage->Layout();
} }
event.Skip(); event.Skip();