From: Robert Roebling Date: Sat, 5 Sep 1998 08:37:40 +0000 (+0000) Subject: Fixed a small wxDialog thing X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/5b011451bd5444fd5aea14811ef7a172a249c4ef Fixed a small wxDialog thing Fixed transparency in wxNotebook Turned the controls sample in way the coolest of all smaples git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/.cvsignore b/.cvsignore index 93f47969ce..a4555c2e92 100644 --- a/.cvsignore +++ b/.cvsignore @@ -5,3 +5,4 @@ Test config.cashe config.status system.list +linux.system.cashe \ No newline at end of file diff --git a/lib/.cvsignore b/lib/.cvsignore index 4daa84b813..4646a42c35 100644 --- a/lib/.cvsignore +++ b/lib/.cvsignore @@ -1,2 +1,3 @@ Linux linux-gnu +linux diff --git a/samples/controls/icons/choice.xpm b/samples/controls/icons/choice.xpm index 486adf4a97..c46aaf5dba 100644 --- a/samples/controls/icons/choice.xpm +++ b/samples/controls/icons/choice.xpm @@ -1,53 +1,27 @@ /* XPM */ static char * choice_xpm[] = { -"64 48 2 1", -" c #FFFFFFFFFFFF", -". c #FAFA13134040", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" .. . .. ", -" . . . ", -" . . ", -" .. ... .. .. .. .. . ", -" . . . . . . . . . . . . ", -" . . . . . . . .... . ", -" . . . . . . . . . ", -" . . . . . . . . . .. . ", -" .. ... .. .. ... .. ... . ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" "}; +/* width height ncolors chars_per_pixel */ +"16 16 5 1", +/* colors */ +" s None c None", +". c #000000", +"+ c #c0c0c0", +"@ c #808080", +"# c #ffffff", +/* pixels */ +"@@@@@@@@@@@@@@@@", +"@..............@", +"@.########+++++@", +"@.########.....@", +"@.########+...+@", +"@.########++.++@", +"@.+++++++++++++@", +"@@@@@@@@@@@@@@@@", +" ##############", +" ..............", +" .#########+.+.", +" .#########....", +" .#########+++.", +" .#########....", +" .#########+.+.", +" .............."}; diff --git a/samples/controls/icons/combo.xpm b/samples/controls/icons/combo.xpm index 6a72bcbd11..554d2a2a08 100644 --- a/samples/controls/icons/combo.xpm +++ b/samples/controls/icons/combo.xpm @@ -1,53 +1,27 @@ /* XPM */ static char * combo_xpm[] = { -"64 48 2 1", -" c #FFFFFFFFFFFF", -". c #3B3BFAFA3434", -" ", -" ", -" ", -" ", -" .. ", -" . ", -" . . ", -" .. .. . .. .. ... .. . ", -" . . . . . . . . . . . . ", -" . . . . . . . . . . . ", -" . . . . . . . . . . . ", -" . . . . . . . . . . . . ", -" .. .. ... .. .. ... .. . ", -" ", -" . ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ..... ..... ..... ..... ..... ..... ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" "}; +/* width height ncolors chars_per_pixel */ +"16 16 5 1", +/* colors */ +" s None c None", +". c #000000", +"+ c #c0c0c0", +"@ c #808080", +"# c #ffffff", +/* pixels */ +"@@@@@@@@@@@@@@@@", +"@..............@", +"@....#####+++++@", +"@.#.######.....@", +"@.#.######+...+@", +"@....#####++.++@", +"@.+++++++++++++@", +"@@@@@@@@@@@@@@@@", +" ##############", +" ..............", +" .#########+.+.", +" .#########....", +" .#########+++.", +" .#########....", +" .#########+.+.", +" .............."}; diff --git a/samples/controls/icons/list.xpm b/samples/controls/icons/list.xpm index 57f985f436..a7da5be9c9 100644 --- a/samples/controls/icons/list.xpm +++ b/samples/controls/icons/list.xpm @@ -1,53 +1,27 @@ /* XPM */ static char * list_xpm[] = { -"64 48 2 1", -" c #FFFFFFFFFFFF", -". c #51515151FBFB", -" ", -" ", -" ", -" ", -" .. . ", -" . ", -" . . ", -" . .. ... .... ", -" . . . . . ", -" . . .. . ", -" . . .. . ", -" . . . . . ", -" ...... ... .. ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" .. . ", -" . ", -" . . ", -" . .. ... .... ", -" . . . . . ", -" . . .. . ", -" . . .. . ", -" . . . . . ", -" ...... ... .. ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" .. . ", -" . ", -" . . ", -" . .. ... .... ", -" . . . . . ", -" . . .. . ", -" . . .. . ", -" . . . . . ", -" ...... ... .. ", -" ", -" ", -" "}; +/* width height ncolors chars_per_pixel */ +"16 16 5 1", +/* colors */ +" s None c None", +". c #000000", +"+ c #c0c0c0", +"@ c #808080", +"# c #ffffff", +/* pixels */ +"@@@@@@@@@@@@@@@@", +"@..............@", +"@.##########+++@", +"@.##########+.+@", +"@.++++++++++...@", +"@.##########+++@", +"@.##########+++@", +"@.+++++++++++++@", +"@.##########+++@", +"@.##########+++@", +"@.+++++++++++++@", +"@.##########+++@", +"@.##########...@", +"@.##########+.+@", +"@.+++++++++++++@", +"@@@@@@@@@@@@@@@@"}; diff --git a/samples/controls/icons/radio.xpm b/samples/controls/icons/radio.xpm index c69bf9fbcd..e4695e828f 100644 --- a/samples/controls/icons/radio.xpm +++ b/samples/controls/icons/radio.xpm @@ -1,53 +1,27 @@ /* XPM */ static char * radio_xpm[] = { -"64 48 2 1", -" c #FFFFFFFFFFFF", -". c #FFFF0000FFFF", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ...... .. . . . . ", -" . .. . . . . . . ", -" . . . . ... . ", -" . .. .. ... .. .. . . . . . ", -" ..... . . . . . . . . . . ", -" . . ... . . . . . . . ", -" . . . . . . . . . . . ", -" . . . . . . . . . . . ", -" ... .. .. . .. .... .. . . ", -" . . ", -" . . ", -" . . ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" "}; +/* width height ncolors chars_per_pixel */ +"16 16 5 1", +/* colors */ +" s None c None", +". c #000000", +"+ c #c0c0c0", +"@ c #808080", +"# c #ffffff", +/* pixels */ +" . ", +" .. .. ", +"+++.+.++...++++.", +"+@.@...@@..@@@@.", +"+@.+++.+....++@.", +"+@++++++++++++@.", +"+@++++++++++++@.", +"+@++++...+++++@.", +"+@+++.###@++++@.", +"+@+++.#.#@++++@.", +"+@+++.###@++++@.", +"+@++++@@@+++++@.", +"+@++++++++++++@.", +"+@++++++++++++@.", +"+@@@@@@@@@@@@@@.", +"................"}; diff --git a/samples/controls/icons/text.xpm b/samples/controls/icons/text.xpm index 3d68886446..f4bea54bd8 100644 --- a/samples/controls/icons/text.xpm +++ b/samples/controls/icons/text.xpm @@ -1,53 +1,27 @@ /* XPM */ static char * text_xpm[] = { -"64 48 2 1", -" c #FFFFFFFFFFFF", -". c #000000000000", -" ", -" ", -" ", -" .. ", -" . ", -" . ", -" .. .. .. .. .. . . . .. .. ... .. .. ", -" . . . . . . . . . . . . . . . ", -" . .. . . . . .. . . . . .. . .. ", -" . . . . . . . . . . . . . . . ", -" .. . . . . . . . . . . .. . ", -" . .. .. . . ..... .. .. . . ", -" . ", -" . ", -" .. ", -" ", -" ", -" ", -" ", -" .. .. . ", -" . . . ", -" . . . . ", -" ... .. .. ... .. .... . .. .... ", -" . . . . . . . . . . . ", -" .. . .. . . ... . . . . ", -" . . . . . . . . . . . ", -" .. . . . . . . . . ", -" . . ... .. .. . .. . ... .. ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" .. . ", -" . . ", -" . . ", -" ... .. .. .. . .. . . ... . ", -" . . . . . .. . . . . . ", -" .. . .. . . . .. .. . ", -" . . . . . . . . .. . ", -" .. . . . . . . . . ", -" . . .. ... . .. ... . ", -" ", -" ", -" ", -" "}; +/* width height ncolors chars_per_pixel */ +"16 16 5 1", +/* colors */ +" s None c None", +". c #000000", +"+ c #c0c0c0", +"@ c #808080", +"# c #ffffff", +/* pixels */ +" ", +" ", +" ", +"@@@@@@@@@@@@@@@@", +"@..............@", +"@.############+@", +"@.#...########+@", +"@.##.#########+@", +"@.##.#########+@", +"@.#...########+@", +"@.############+@", +"@.+++++++++++++@", +"@@@@@@@@@@@@@@@@", +" ", +" ", +" "}; diff --git a/src/gtk/dialog.cpp b/src/gtk/dialog.cpp index 929a4ecd77..dda9d0a2c2 100644 --- a/src/gtk/dialog.cpp +++ b/src/gtk/dialog.cpp @@ -229,7 +229,13 @@ void wxDialog::SetModal(bool flag) int wxDialog::ShowModal(void) { - if (m_modalShowing) return GetReturnCode(); + SetModal(TRUE); + + if (m_modalShowing) + { + wxFAIL_MSG( "wxDialog:ShowModal called twice" ); + return GetReturnCode(); + } Show( TRUE ); @@ -248,13 +254,15 @@ void wxDialog::EndModal( int retCode ) if (!m_modalShowing) { - wxFAIL_MSG( "wxDialog: called EndModal twice" ); + wxFAIL_MSG( "wxDialog:EndModal called twice" ); return; } m_modalShowing = FALSE; gtk_main_quit(); + + Show( FALSE ); } void wxDialog::InitDialog(void) diff --git a/src/gtk/notebook.cpp b/src/gtk/notebook.cpp index dd41046ec1..2794bebe86 100644 --- a/src/gtk/notebook.cpp +++ b/src/gtk/notebook.cpp @@ -49,10 +49,9 @@ public: }; //----------------------------------------------------------------------------- -// GTK callbacks +// "switch_page" //----------------------------------------------------------------------------- -// page change callback static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget), GtkNotebookPage *WXUNUSED(page), gint nPage, @@ -60,21 +59,24 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget), { wxNotebook *notebook = (wxNotebook *)data; - int nOld = notebook->GetSelection(); + int old = notebook->GetSelection(); // TODO: emulate PAGE_CHANGING event wxNotebookEvent event(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, notebook->GetId(), nPage, - nOld); - event.SetEventObject(notebook); - notebook->ProcessEvent(event); + old); + event.SetEventObject( notebook ); + notebook->ProcessEvent( event ); } +//----------------------------------------------------------------------------- +// "size_allocate" +//----------------------------------------------------------------------------- + static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win ) { - if ( win->GetAutoLayout() ) - win->Layout(); + if (win->GetAutoLayout()) win->Layout(); if ((win->m_x == alloc->x) && (win->m_y == alloc->y) && @@ -84,28 +86,7 @@ static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* return; } -/* - printf( "OnResize from " ); - if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) - printf( win->GetClassInfo()->GetClassName() ); - printf( " .\n" ); - - printf( " Old: X: %d Y: %d ", win->m_x, win->m_y ); - printf( " W: %d H: %d ", win->m_width, win->m_height ); - printf( " .\n" ); - - printf( " New: X: %d Y: %d ", alloc->x, alloc->y ); - printf( " W: %d H: %d ", alloc->width, alloc->height ); - printf( " .\n" ); -*/ - win->SetSize( alloc->x, alloc->y, alloc->width, alloc->height ); - -/* - printf( " Res: X: %d Y: %d ", win->m_x, win->m_y ); - printf( " W: %d H: %d ", win->m_width, win->m_height ); - printf( " .\n" ); -*/ } //----------------------------------------------------------------------------- @@ -137,7 +118,7 @@ wxNotebook::wxNotebook( wxWindow *parent, wxWindowID id, wxNotebook::~wxNotebook() { // don't generate change page events any more - if ( m_idHandler != 0 ) + if (m_idHandler != 0) gtk_signal_disconnect(GTK_OBJECT(m_widget), m_idHandler); DeleteAllPages(); @@ -171,8 +152,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id, int wxNotebook::GetSelection() const { - if (m_pages.Number() == 0) - return -1; + if (m_pages.Number() == 0) return -1; GtkNotebookPage *g_page = GTK_NOTEBOOK(m_widget)->cur_page; @@ -242,15 +222,14 @@ int wxNotebook::SetSelection( int page ) { int selOld = GetSelection(); wxNotebookPage* nb_page = GetNotebookPage(page); - if (!nb_page) - return -1; + + if (!nb_page) return -1; int page_num = 0; GList *child = GTK_NOTEBOOK(m_widget)->children; while (child) { - if (nb_page->m_page == (GtkNotebookPage*)child->data) - break; + if (nb_page->m_page == (GtkNotebookPage*)child->data) break; page_num++; child = child->next; } @@ -262,17 +241,15 @@ int wxNotebook::SetSelection( int page ) return selOld; } -void wxNotebook::AdvanceSelection(bool bForward) +void wxNotebook::AdvanceSelection( bool bForward ) { - int nSel = GetSelection(), - nMax = GetPageCount(); + int sel = GetSelection(); + int max = GetPageCount(); - if ( bForward ) { - SetSelection(nSel == nMax ? 0 : nSel + 1); - } - else { - SetSelection(nSel == 0 ? nMax : nSel - 1); - } + if (bForward) + SetSelection( sel == max ? 0 : sel + 1 ); + else + SetSelection( sel == 0 ? max : sel - 1 ); } void wxNotebook::SetImageList( wxImageList* imageList ) @@ -283,8 +260,8 @@ void wxNotebook::SetImageList( wxImageList* imageList ) bool wxNotebook::SetPageText( int page, const wxString &text ) { wxNotebookPage* nb_page = GetNotebookPage(page); - if (!nb_page) - return FALSE; + + if (!nb_page) return FALSE; nb_page->m_text = text; @@ -294,8 +271,8 @@ bool wxNotebook::SetPageText( int page, const wxString &text ) bool wxNotebook::SetPageImage( int page, int image ) { wxNotebookPage* nb_page = GetNotebookPage(page); - if (!nb_page) - return FALSE; + + if (!nb_page) return FALSE; nb_page->m_image = image; @@ -304,12 +281,12 @@ bool wxNotebook::SetPageImage( int page, int image ) void wxNotebook::SetPageSize( const wxSize &WXUNUSED(size) ) { - wxFAIL_MSG(_("wxNotebook::SetPageSize not implemented")); + wxFAIL_MSG( "wxNotebook::SetPageSize not implemented" ); } void wxNotebook::SetPadding( const wxSize &WXUNUSED(padding) ) { - wxFAIL_MSG(_("wxNotebook::SetPadding not implemented")); + wxFAIL_MSG( "wxNotebook::SetPadding not implemented" ); } bool wxNotebook::DeleteAllPages() @@ -359,28 +336,27 @@ bool wxNotebook::AddPage(wxWindow* win, const wxString& text, // we've created the notebook page in AddChild(). Now we just have to set // the caption for the page and set the others parameters. - // first, find the page wxNotebookPage *page = (wxNotebookPage *) NULL; wxNode *node = m_pages.First(); while (node) { page = (wxNotebookPage*)node->Data(); - if ( page->m_client == win ) - break; // found + if ( page->m_client == win ) break; node = node->Next(); } - wxCHECK_MSG(page != NULL, FALSE, - "Can't add a page whose parent is not the notebook!"); + wxCHECK_MSG( page != NULL, FALSE, "Can't add a page whose parent is not the notebook!" ); - // create the image if any - if ( imageId != -1 ) { + if (imageId != -1) + { wxASSERT( m_imageList != NULL ); wxBitmap *bmp = m_imageList->GetBitmap(imageId); GdkPixmap *pixmap = bmp->GetPixmap(); - GtkWidget *pixmapwid = gtk_pixmap_new (pixmap, NULL /* @@@@ */); + GdkBitmap *mask = (GdkBitmap*) NULL; + if (bmp->GetMask()) mask = bmp->GetMask()->GetBitmap(); + GtkWidget *pixmapwid = gtk_pixmap_new (pixmap, mask ); gtk_box_pack_start(GTK_BOX(page->m_box), pixmapwid, FALSE, FALSE, 3); @@ -389,21 +365,17 @@ bool wxNotebook::AddPage(wxWindow* win, const wxString& text, // then set the attributes page->m_text = text; - if ( page->m_text.IsEmpty() ) - page->m_text = ""; + if (page->m_text.IsEmpty()) page->m_text = ""; page->m_image = imageId; page->m_label = (GtkLabel *)gtk_label_new(page->m_text); - gtk_box_pack_start(GTK_BOX(page->m_box), (GtkWidget *)page->m_label, - FALSE, FALSE, 3); + gtk_box_pack_start( GTK_BOX(page->m_box), (GtkWidget *)page->m_label, FALSE, FALSE, 3); // @@@: 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()); - } + if (bSelect) SetSelection(GetPageCount()); return TRUE; } @@ -429,8 +401,7 @@ void wxNotebook::AddChild( wxWindow *win ) 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 ); + 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); @@ -442,7 +413,7 @@ void wxNotebook::AddChild( wxWindow *win ) if (!page->m_page) { - wxLogFatalError( _("Notebook page creation error") ); + wxLogFatalError( "Notebook page creation error" ); return; } @@ -466,3 +437,4 @@ bool wxNotebook::DoPhase( int WXUNUSED(nPhase) ) //----------------------------------------------------------------------------- IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxCommandEvent) + diff --git a/src/gtk1/dialog.cpp b/src/gtk1/dialog.cpp index 929a4ecd77..dda9d0a2c2 100644 --- a/src/gtk1/dialog.cpp +++ b/src/gtk1/dialog.cpp @@ -229,7 +229,13 @@ void wxDialog::SetModal(bool flag) int wxDialog::ShowModal(void) { - if (m_modalShowing) return GetReturnCode(); + SetModal(TRUE); + + if (m_modalShowing) + { + wxFAIL_MSG( "wxDialog:ShowModal called twice" ); + return GetReturnCode(); + } Show( TRUE ); @@ -248,13 +254,15 @@ void wxDialog::EndModal( int retCode ) if (!m_modalShowing) { - wxFAIL_MSG( "wxDialog: called EndModal twice" ); + wxFAIL_MSG( "wxDialog:EndModal called twice" ); return; } m_modalShowing = FALSE; gtk_main_quit(); + + Show( FALSE ); } void wxDialog::InitDialog(void) diff --git a/src/gtk1/notebook.cpp b/src/gtk1/notebook.cpp index dd41046ec1..2794bebe86 100644 --- a/src/gtk1/notebook.cpp +++ b/src/gtk1/notebook.cpp @@ -49,10 +49,9 @@ public: }; //----------------------------------------------------------------------------- -// GTK callbacks +// "switch_page" //----------------------------------------------------------------------------- -// page change callback static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget), GtkNotebookPage *WXUNUSED(page), gint nPage, @@ -60,21 +59,24 @@ static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget), { wxNotebook *notebook = (wxNotebook *)data; - int nOld = notebook->GetSelection(); + int old = notebook->GetSelection(); // TODO: emulate PAGE_CHANGING event wxNotebookEvent event(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, notebook->GetId(), nPage, - nOld); - event.SetEventObject(notebook); - notebook->ProcessEvent(event); + old); + event.SetEventObject( notebook ); + notebook->ProcessEvent( event ); } +//----------------------------------------------------------------------------- +// "size_allocate" +//----------------------------------------------------------------------------- + static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win ) { - if ( win->GetAutoLayout() ) - win->Layout(); + if (win->GetAutoLayout()) win->Layout(); if ((win->m_x == alloc->x) && (win->m_y == alloc->y) && @@ -84,28 +86,7 @@ static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* return; } -/* - printf( "OnResize from " ); - if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) - printf( win->GetClassInfo()->GetClassName() ); - printf( " .\n" ); - - printf( " Old: X: %d Y: %d ", win->m_x, win->m_y ); - printf( " W: %d H: %d ", win->m_width, win->m_height ); - printf( " .\n" ); - - printf( " New: X: %d Y: %d ", alloc->x, alloc->y ); - printf( " W: %d H: %d ", alloc->width, alloc->height ); - printf( " .\n" ); -*/ - win->SetSize( alloc->x, alloc->y, alloc->width, alloc->height ); - -/* - printf( " Res: X: %d Y: %d ", win->m_x, win->m_y ); - printf( " W: %d H: %d ", win->m_width, win->m_height ); - printf( " .\n" ); -*/ } //----------------------------------------------------------------------------- @@ -137,7 +118,7 @@ wxNotebook::wxNotebook( wxWindow *parent, wxWindowID id, wxNotebook::~wxNotebook() { // don't generate change page events any more - if ( m_idHandler != 0 ) + if (m_idHandler != 0) gtk_signal_disconnect(GTK_OBJECT(m_widget), m_idHandler); DeleteAllPages(); @@ -171,8 +152,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id, int wxNotebook::GetSelection() const { - if (m_pages.Number() == 0) - return -1; + if (m_pages.Number() == 0) return -1; GtkNotebookPage *g_page = GTK_NOTEBOOK(m_widget)->cur_page; @@ -242,15 +222,14 @@ int wxNotebook::SetSelection( int page ) { int selOld = GetSelection(); wxNotebookPage* nb_page = GetNotebookPage(page); - if (!nb_page) - return -1; + + if (!nb_page) return -1; int page_num = 0; GList *child = GTK_NOTEBOOK(m_widget)->children; while (child) { - if (nb_page->m_page == (GtkNotebookPage*)child->data) - break; + if (nb_page->m_page == (GtkNotebookPage*)child->data) break; page_num++; child = child->next; } @@ -262,17 +241,15 @@ int wxNotebook::SetSelection( int page ) return selOld; } -void wxNotebook::AdvanceSelection(bool bForward) +void wxNotebook::AdvanceSelection( bool bForward ) { - int nSel = GetSelection(), - nMax = GetPageCount(); + int sel = GetSelection(); + int max = GetPageCount(); - if ( bForward ) { - SetSelection(nSel == nMax ? 0 : nSel + 1); - } - else { - SetSelection(nSel == 0 ? nMax : nSel - 1); - } + if (bForward) + SetSelection( sel == max ? 0 : sel + 1 ); + else + SetSelection( sel == 0 ? max : sel - 1 ); } void wxNotebook::SetImageList( wxImageList* imageList ) @@ -283,8 +260,8 @@ void wxNotebook::SetImageList( wxImageList* imageList ) bool wxNotebook::SetPageText( int page, const wxString &text ) { wxNotebookPage* nb_page = GetNotebookPage(page); - if (!nb_page) - return FALSE; + + if (!nb_page) return FALSE; nb_page->m_text = text; @@ -294,8 +271,8 @@ bool wxNotebook::SetPageText( int page, const wxString &text ) bool wxNotebook::SetPageImage( int page, int image ) { wxNotebookPage* nb_page = GetNotebookPage(page); - if (!nb_page) - return FALSE; + + if (!nb_page) return FALSE; nb_page->m_image = image; @@ -304,12 +281,12 @@ bool wxNotebook::SetPageImage( int page, int image ) void wxNotebook::SetPageSize( const wxSize &WXUNUSED(size) ) { - wxFAIL_MSG(_("wxNotebook::SetPageSize not implemented")); + wxFAIL_MSG( "wxNotebook::SetPageSize not implemented" ); } void wxNotebook::SetPadding( const wxSize &WXUNUSED(padding) ) { - wxFAIL_MSG(_("wxNotebook::SetPadding not implemented")); + wxFAIL_MSG( "wxNotebook::SetPadding not implemented" ); } bool wxNotebook::DeleteAllPages() @@ -359,28 +336,27 @@ bool wxNotebook::AddPage(wxWindow* win, const wxString& text, // we've created the notebook page in AddChild(). Now we just have to set // the caption for the page and set the others parameters. - // first, find the page wxNotebookPage *page = (wxNotebookPage *) NULL; wxNode *node = m_pages.First(); while (node) { page = (wxNotebookPage*)node->Data(); - if ( page->m_client == win ) - break; // found + if ( page->m_client == win ) break; node = node->Next(); } - wxCHECK_MSG(page != NULL, FALSE, - "Can't add a page whose parent is not the notebook!"); + wxCHECK_MSG( page != NULL, FALSE, "Can't add a page whose parent is not the notebook!" ); - // create the image if any - if ( imageId != -1 ) { + if (imageId != -1) + { wxASSERT( m_imageList != NULL ); wxBitmap *bmp = m_imageList->GetBitmap(imageId); GdkPixmap *pixmap = bmp->GetPixmap(); - GtkWidget *pixmapwid = gtk_pixmap_new (pixmap, NULL /* @@@@ */); + GdkBitmap *mask = (GdkBitmap*) NULL; + if (bmp->GetMask()) mask = bmp->GetMask()->GetBitmap(); + GtkWidget *pixmapwid = gtk_pixmap_new (pixmap, mask ); gtk_box_pack_start(GTK_BOX(page->m_box), pixmapwid, FALSE, FALSE, 3); @@ -389,21 +365,17 @@ bool wxNotebook::AddPage(wxWindow* win, const wxString& text, // then set the attributes page->m_text = text; - if ( page->m_text.IsEmpty() ) - page->m_text = ""; + if (page->m_text.IsEmpty()) page->m_text = ""; page->m_image = imageId; page->m_label = (GtkLabel *)gtk_label_new(page->m_text); - gtk_box_pack_start(GTK_BOX(page->m_box), (GtkWidget *)page->m_label, - FALSE, FALSE, 3); + gtk_box_pack_start( GTK_BOX(page->m_box), (GtkWidget *)page->m_label, FALSE, FALSE, 3); // @@@: 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()); - } + if (bSelect) SetSelection(GetPageCount()); return TRUE; } @@ -429,8 +401,7 @@ void wxNotebook::AddChild( wxWindow *win ) 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 ); + 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); @@ -442,7 +413,7 @@ void wxNotebook::AddChild( wxWindow *win ) if (!page->m_page) { - wxLogFatalError( _("Notebook page creation error") ); + wxLogFatalError( "Notebook page creation error" ); return; } @@ -466,3 +437,4 @@ bool wxNotebook::DoPhase( int WXUNUSED(nPhase) ) //----------------------------------------------------------------------------- IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxCommandEvent) +