X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/76645ab3e55e068e8f1b7d8d752990a1d9a6199e..68cb648117282847685d626d6fab58bf4f3618f3:/samples/notebook/notebook.h diff --git a/samples/notebook/notebook.h b/samples/notebook/notebook.h index ca8b05d3af..2d32a1f064 100644 --- a/samples/notebook/notebook.h +++ b/samples/notebook/notebook.h @@ -9,7 +9,31 @@ // License: wxWindows license ///////////////////////////////////////////////////////////////////////////// -#include "wx/notebook.h" +// this sample can be used to test both wxNotebook and wxListbook +//#define TEST_LISTBOOK + +#ifdef TEST_LISTBOOK + #include "wx/listbook.h" + + #define wxNotebook wxListbook + #define wxNotebookEvent wxListbookEvent + + #define wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED wxEVT_COMMAND_LISTBOOK_PAGE_CHANGED + #define wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING wxEVT_COMMAND_LISTBOOK_PAGE_CHANGING + #define EVT_NOTEBOOK_PAGE_CHANGED EVT_LISTBOOK_PAGE_CHANGED + #define EVT_NOTEBOOK_PAGE_CHANGING EVT_LISTBOOK_PAGE_CHANGING + + #undef wxNB_TOP + #define wxNB_TOP wxLB_TOP + #undef wxNB_BOTTOM + #define wxNB_BOTTOM wxLB_BOTTOM + #undef wxNB_LEFT + #define wxNB_LEFT wxLB_LEFT + #undef wxNB_RIGHT + #define wxNB_RIGHT wxLB_RIGHT +#else + #include "wx/notebook.h" +#endif // Define a new application class MyApp : public wxApp @@ -48,7 +72,7 @@ class MyFrame : public wxFrame { public: MyFrame(const wxString& title, const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE); + const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE|wxCLIP_CHILDREN|wxNO_FULL_REPAINT_ON_RESIZE); virtual ~MyFrame(); @@ -60,15 +84,17 @@ public: void OnButtonAddPage(wxCommandEvent& event); void OnButtonInsertPage(wxCommandEvent& event); - void OnButtonDeletePage(wxCommandEvent& event); + void OnButtonDeleteCurPage(wxCommandEvent& event); + void OnButtonDeleteLastPage(wxCommandEvent& event); void OnButtonNextPage(wxCommandEvent& event); - void OnButtonExit(wxCommandEvent& event); void OnNotebook(wxNotebookEvent& event); - void OnIdle(wxIdleEvent& event); + void OnUpdateUIBtnDeleteCurPage(wxUpdateUIEvent& event); + void OnUpdateUIBtnDeleteLastPage(wxUpdateUIEvent& event); + void OnIdle(wxIdleEvent& event); private: wxLog *m_logTargetOld; @@ -79,11 +105,13 @@ private: wxPanel *m_panel; // Panel containing notebook and other controls wxRadioBox *m_radioOrient; - wxCheckBox *m_chkShowImages; + wxCheckBox *m_chkShowImages, + *m_chkMultiLine; wxButton *m_btnAddPage; wxButton *m_btnInsertPage; - wxButton *m_btnDeletePage; + wxButton *m_btnDeleteCurPage; + wxButton *m_btnDeleteLastPage; wxButton *m_btnNextPage; wxButton *m_btnExit; @@ -103,7 +131,7 @@ private: wxBoxSizer *m_sizerTop; // Sizer for m_notebook - wxNotebookSizer *m_sizerNotebook; + wxBookCtrlSizer *m_sizerNotebook; wxImageList *m_imageList; @@ -114,9 +142,11 @@ enum ID_CONTROLS { ID_RADIO_ORIENT = wxID_HIGHEST, ID_CHK_SHOWIMAGES, + ID_CHK_MULTILINE, ID_BTN_ADD_PAGE, ID_BTN_INSERT_PAGE, - ID_BTN_DELETE_PAGE, + ID_BTN_DELETE_CUR_PAGE, + ID_BTN_DELETE_LAST_PAGE, ID_BTN_NEXT_PAGE, ID_NOTEBOOK };