// 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
{
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();
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;
wxButton *m_btnAddPage;
wxButton *m_btnInsertPage;
- wxButton *m_btnDeletePage;
+ wxButton *m_btnDeleteCurPage;
+ wxButton *m_btnDeleteLastPage;
wxButton *m_btnNextPage;
wxButton *m_btnExit;
wxBoxSizer *m_sizerTop;
// Sizer for m_notebook
- wxNotebookSizer *m_sizerNotebook;
+ wxBookCtrlSizer *m_sizerNotebook;
wxImageList *m_imageList;
ID_CHK_SHOWIMAGES,
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
};