X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fd76d9633a4235abc1faa3175bc43bcf099aa3ca..f5058cd7d926d45a6b0673a0b557ca0792f60e48:/samples/widgets/notebook.cpp diff --git a/samples/widgets/notebook.cpp b/samples/widgets/notebook.cpp index 68d6647d5d..0d15102e26 100644 --- a/samples/widgets/notebook.cpp +++ b/samples/widgets/notebook.cpp @@ -24,6 +24,8 @@ #pragma hdrstop #endif +#if wxUSE_NOTEBOOK + // for all others, include the necessary headers #ifndef WX_PRECOMP #include "wx/app.h" @@ -44,7 +46,6 @@ #include "wx/artprov.h" #include "widgets.h" -#if 1 #include "icons/notebook.xpm" // ---------------------------------------------------------------------------- @@ -78,11 +79,6 @@ enum Orient Orient_Max }; -// old versions of wxWidgets don't define this style -#ifndef wxNB_TOP - #define wxNB_TOP (0) -#endif - // ---------------------------------------------------------------------------- // NotebookWidgetsPage // ---------------------------------------------------------------------------- @@ -90,9 +86,12 @@ enum Orient class NotebookWidgetsPage : public WidgetsPage { public: - NotebookWidgetsPage(wxNotebook *notebook, wxImageList *imaglist); + NotebookWidgetsPage(wxBookCtrlBase *book, wxImageList *imaglist); virtual ~NotebookWidgetsPage(); + virtual wxControl *GetWidget() const { return m_notebook; } + virtual void RecreateWidget() { CreateNotebook(); } + protected: // event handlers void OnPageChanging(wxNotebookEvent& event); @@ -194,9 +193,9 @@ END_EVENT_TABLE() IMPLEMENT_WIDGETS_PAGE(NotebookWidgetsPage, _T("Notebook")); -NotebookWidgetsPage::NotebookWidgetsPage(wxNotebook *notebook, +NotebookWidgetsPage::NotebookWidgetsPage(wxBookCtrlBase *book, wxImageList *imaglist) - : WidgetsPage(notebook) + : WidgetsPage(book) { imaglist->Add(wxBitmap(notebook_xpm)); @@ -213,22 +212,19 @@ NotebookWidgetsPage::NotebookWidgetsPage(wxNotebook *notebook, wxStaticBox *box = new wxStaticBox(this, wxID_ANY, _T("&Set style")); // must be in sync with Orient enum - wxString orientations[] = - { - _T("&top"), - _T("&bottom"), - _T("&left"), - _T("&right"), - }; + wxArrayString orientations; + orientations.Add(_T("&top")); + orientations.Add(_T("&bottom")); + orientations.Add(_T("&left")); + orientations.Add(_T("&right")); - wxASSERT_MSG( WXSIZEOF(orientations) == Orient_Max, + wxASSERT_MSG( orientations.GetCount() == Orient_Max, _T("forgot to update something") ); m_chkImages = new wxCheckBox(this, wxID_ANY, _T("Show &images")); m_radioOrient = new wxRadioBox(this, wxID_ANY, _T("&Tab orientation"), wxDefaultPosition, wxDefaultSize, - WXSIZEOF(orientations), orientations, - 1, wxRA_SPECIFY_COLS); + orientations, 1, wxRA_SPECIFY_COLS); wxSizer *sizerLeft = new wxStaticBoxSizer(box, wxVERTICAL); @@ -349,7 +345,7 @@ void NotebookWidgetsPage::CreateImageList() void NotebookWidgetsPage::CreateNotebook() { - int flags; + int flags = ms_defaultFlags; switch ( m_radioOrient->GetSelection() ) { default: @@ -357,19 +353,19 @@ void NotebookWidgetsPage::CreateNotebook() // fall through case Orient_Top: - flags = wxNB_TOP; + flags |= wxBK_TOP; break; case Orient_Bottom: - flags = wxNB_BOTTOM; + flags |= wxBK_BOTTOM; break; case Orient_Left: - flags = wxNB_LEFT; + flags |= wxBK_LEFT; break; case Orient_Right: - flags = wxNB_RIGHT; + flags |= wxBK_RIGHT; break; } @@ -393,7 +389,7 @@ void NotebookWidgetsPage::CreateNotebook() m_notebook->AddPage(CreateNewPage(), old_note->GetPageText(n), false, - m_chkImages->GetValue() ? + m_chkImages->GetValue() ? GetIconIndex() : -1); } @@ -508,7 +504,7 @@ void NotebookWidgetsPage::OnUpdateUIRemoveButton(wxUpdateUIEvent& event) void NotebookWidgetsPage::OnUpdateUIResetButton(wxUpdateUIEvent& event) { event.Enable( !m_chkImages->GetValue() || - m_radioOrient->GetSelection() != wxNB_TOP ); + m_radioOrient->GetSelection() != wxBK_TOP ); } void NotebookWidgetsPage::OnUpdateUINumPagesText(wxUpdateUIEvent& event) @@ -546,4 +542,4 @@ void NotebookWidgetsPage::OnPageChanged(wxNotebookEvent& event) event.Skip(); } -#endif +#endif // wxUSE_NOTEBOOK