+ // @@@: what does this do? do we still need it?
+ // gtk_misc_set_alignment(GTK_MISC(page->m_label), 0.0, 0.5);
+
+ gtk_widget_show((GtkWidget *)page->m_label);
+
+ if (bSelect) SetSelection(GetPageCount());
+
+ return TRUE;
+}
+
+wxWindow *wxNotebook::GetPage( int page ) const
+{
+ wxCHECK_MSG( m_widget != NULL, (wxWindow*) NULL, "invalid notebook" );
+
+ wxNotebookPage* nb_page = GetNotebookPage(page);
+ if (!nb_page)
+ return (wxWindow *) NULL;
+ else
+ return nb_page->m_client;
+}
+
+void wxNotebook::AddChild( wxWindow *win )
+{
+ wxCHECK_RET( m_widget != NULL, "invalid notebook" );
+
+ m_children.Append(win);
+
+ wxNotebookPage *page = new wxNotebookPage();
+
+ page->m_id = GetPageCount();
+
+ page->m_box = gtk_hbox_new (FALSE, 0);
+ gtk_container_border_width(GTK_CONTAINER(page->m_box), 2);
+
+ page->m_client = win;
+ gtk_notebook_append_page( GTK_NOTEBOOK(m_widget), win->m_widget, page->m_box );
+
+ page->m_page =
+ (GtkNotebookPage*) (g_list_last(GTK_NOTEBOOK(m_widget)->children)->data);
+
+ page->m_parent = GTK_NOTEBOOK(m_widget);
+
+ gtk_signal_connect( GTK_OBJECT(win->m_widget), "size_allocate",
+ GTK_SIGNAL_FUNC(gtk_page_size_callback), (gpointer)win );