m_id = -1;
m_text = "";
m_image = -1;
- m_page = NULL;
- m_client = NULL;
- m_parent = NULL;
+ m_page = (GtkNotebookPage *) NULL;
+ m_client = (wxWindow *) NULL;
+ m_parent = (GtkNotebook *) NULL;
+ m_box = (GtkWidget *) NULL;
}
//private:
GtkLabel *m_label;
wxWindow *m_client;
GtkNotebook *m_parent;
+ GtkWidget *m_box; // in which the label and image are packed
};
//-----------------------------------------------------------------------------
void wxNotebook::Init()
{
- m_imageList = NULL;
+ m_imageList = (wxImageList *) NULL;
m_pages.DeleteContents( TRUE );
m_idHandler = 0;
}
GtkNotebookPage *g_page = GTK_NOTEBOOK(m_widget)->cur_page;
- wxNotebookPage *page = NULL;
+ wxNotebookPage *page = (wxNotebookPage *) NULL;
wxNode *node = m_pages.First();
while (node)
wxNotebookPage* wxNotebook::GetNotebookPage(int page) const
{
- wxNotebookPage *nb_page = NULL;
+ wxNotebookPage *nb_page = (wxNotebookPage *) NULL;
wxNode *node = m_pages.First();
while (node)
wxLogDebug( "Notebook page %d not found!", page );
- return NULL;
+ return (wxNotebookPage *) NULL;
}
int wxNotebook::SetSelection( int page )
// the caption for the page and set the others parameters.
// first, find the page
- wxNotebookPage *page = NULL;
+ wxNotebookPage *page = (wxNotebookPage *) NULL;
wxNode *node = m_pages.First();
while (node)
}
wxCHECK_MSG(page != NULL, FALSE,
- _("Can't add a page whose parent is not the notebook!"));
+ "Can't add a page whose parent is not the notebook!");
// then set the attributes
page->m_text = text;
page->m_image = imageId;
gtk_label_set(page->m_label, page->m_text);
+ // create the image if any
+ if ( imageId != -1 ) {
+ wxASSERT( m_imageList != NULL );
+
+ wxBitmap *bmp = m_imageList->GetBitmap(imageId);
+ GdkPixmap *pixmap = bmp->GetPixmap();
+ GtkWidget *pixmapwid = gtk_pixmap_new (pixmap, NULL /* @@@@ */);
+
+ gtk_box_pack_start(GTK_BOX(page->m_box), pixmapwid, FALSE, FALSE, 3);
+
+ gtk_widget_show(pixmapwid);
+ }
+
if ( bSelect ) {
SetSelection(GetPageCount());
}
{
wxNotebookPage* nb_page = GetNotebookPage(page);
if (!nb_page)
- return NULL;
+ return (wxWindow *) NULL;
else
return nb_page->m_client;
}
wxNotebookPage *page = new wxNotebookPage();
page->m_id = GetPageCount();
- page->m_label = (GtkLabel *)gtk_label_new(_("Handle"));
+
+ page->m_box = gtk_hbox_new (FALSE, 0);
+ gtk_container_border_width(GTK_CONTAINER(page->m_box), 2);
+
+ page->m_label = (GtkLabel *)gtk_label_new("");
+ gtk_box_pack_start(GTK_BOX(page->m_box), (GtkWidget *)page->m_label,
+ FALSE, FALSE, 3);
+ gtk_widget_show((GtkWidget *)page->m_label);
+
page->m_client = win;
gtk_notebook_append_page( GTK_NOTEBOOK(m_widget), win->m_widget,
- (GtkWidget *)page->m_label);
+ page->m_box );
gtk_misc_set_alignment(GTK_MISC(page->m_label), 0.0, 0.5);
page->m_page =