]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/notebook/notebook.cpp
correcting last commit
[wxWidgets.git] / samples / notebook / notebook.cpp
index 6a756a19bfb044f8c3295339432c88d110eba373..8f4127ef39b2db69fadc84e47af14e5c484791b7 100644 (file)
@@ -44,7 +44,7 @@ bool MyApp::OnInit()
     return true;
 }
 
-wxPanel *CreateUserCreatedPage(wxBookCtrl *parent)
+wxPanel *CreateUserCreatedPage(wxBookCtrlBase *parent)
 {
     wxPanel *panel = new wxPanel(parent);
 
@@ -54,7 +54,7 @@ wxPanel *CreateUserCreatedPage(wxBookCtrl *parent)
     return panel;
 }
 
-wxPanel *CreateRadioButtonsPage(wxBookCtrl *parent)
+wxPanel *CreateRadioButtonsPage(wxBookCtrlBase *parent)
 {
     wxPanel *panel = new wxPanel(parent);
 
@@ -79,7 +79,7 @@ wxPanel *CreateRadioButtonsPage(wxBookCtrl *parent)
     return panel;
 }
 
-wxPanel *CreateVetoPage(wxBookCtrl *parent)
+wxPanel *CreateVetoPage(wxBookCtrlBase *parent)
 {
     wxPanel *panel = new wxPanel(parent);
 
@@ -89,7 +89,7 @@ wxPanel *CreateVetoPage(wxBookCtrl *parent)
     return panel;
 }
 
-wxPanel *CreateBigButtonPage(wxBookCtrl *parent)
+wxPanel *CreateBigButtonPage(wxBookCtrlBase *parent)
 {
     wxPanel *panel = new wxPanel(parent);
 
@@ -103,7 +103,7 @@ wxPanel *CreateBigButtonPage(wxBookCtrl *parent)
 }
 
 
-wxPanel *CreateInsertPage(wxBookCtrl *parent)
+wxPanel *CreateInsertPage(wxBookCtrlBase *parent)
 {
     wxPanel *panel = new wxPanel(parent);
 
@@ -114,7 +114,7 @@ wxPanel *CreateInsertPage(wxBookCtrl *parent)
     return panel;
 }
 
-int GetIconIndex(wxBookCtrl* bookCtrl)
+int GetIconIndex(wxBookCtrlBase* bookCtrl)
 {
     if (bookCtrl && bookCtrl->GetImageList())
     {
@@ -128,7 +128,7 @@ int GetIconIndex(wxBookCtrl* bookCtrl)
     return -1;
 }
 
-void CreateInitialPages(wxBookCtrl *parent)
+void CreateInitialPages(wxBookCtrlBase *parent)
 {
     // Create and add some panels to the notebook
 
@@ -147,7 +147,7 @@ void CreateInitialPages(wxBookCtrl *parent)
     parent->SetSelection(1);
 }
 
-wxPanel *CreatePage(wxBookCtrl *parent, const wxString&pageName)
+wxPanel *CreatePage(wxBookCtrlBase *parent, const wxString&pageName)
 {
     if
     (
@@ -214,17 +214,17 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size,
     menuOrient->AppendRadioItem(ID_ORIENT_RIGHT,   wxT("&Right\tCtrl-8"));
 
     wxMenu *menuDo = new wxMenu;
-    menuDo->Append(ID_ADD_PAGE, wxT("&Add page"));
-    menuDo->Append(ID_INSERT_PAGE, wxT("&Insert page"));
-    menuDo->Append(ID_DELETE_CUR_PAGE, wxT("&Delete current page"));
-    menuDo->Append(ID_DELETE_LAST_PAGE, wxT("D&elete last page"));
-    menuDo->Append(ID_NEXT_PAGE, wxT("&Next page"));
+    menuDo->Append(ID_ADD_PAGE, wxT("&Add page\tAlt-A"));
+    menuDo->Append(ID_INSERT_PAGE, wxT("&Insert page\tAlt-I"));
+    menuDo->Append(ID_DELETE_CUR_PAGE, wxT("&Delete current page\tAlt-D"));
+    menuDo->Append(ID_DELETE_LAST_PAGE, wxT("D&elete last page\tAlt-L"));
+    menuDo->Append(ID_NEXT_PAGE, wxT("&Next page\tAlt-N"));
 
     wxMenu *menuFile = new wxMenu;
     menuFile->Append(wxID_ANY, wxT("&Type"), menuType, wxT("Type of control"));
     menuFile->Append(wxID_ANY, wxT("&Orientation"), menuOrient, wxT("Orientation of control"));
-    menuFile->AppendCheckItem(ID_SHOW_IMAGES, wxT("&Show images"));
-    menuFile->AppendCheckItem(ID_MULTI, wxT("&Multiple lines"));
+    menuFile->AppendCheckItem(ID_SHOW_IMAGES, wxT("&Show images\tAlt-S"));
+    menuFile->AppendCheckItem(ID_MULTI, wxT("&Multiple lines\tAlt-M"));
     menuFile->AppendSeparator();
     menuFile->Append(wxID_EXIT, wxT("E&xit"), wxT("Quits the application"));
     menuFile->Check(ID_SHOW_IMAGES, m_chkShowImages);
@@ -390,19 +390,7 @@ int MyFrame::SelectFlag(int id, int nb, int lb, int chb)
     }                                                                              \
     else                                                                           \
     {                                                                              \
-        wxPanel *panel = CreateRadioButtonsPage(newBook);                          \
-        newBook->AddPage( panel, RADIOBUTTONS_PAGE_NAME, false, GetIconIndex(newBook) ); \
-                                                                                   \
-        panel = CreateVetoPage(newBook);                                           \
-        newBook->AddPage( panel, VETO_PAGE_NAME, false, GetIconIndex(newBook) );   \
-                                                                                   \
-        panel = CreateBigButtonPage(newBook);                                      \
-        newBook->AddPage( panel, MAXIMIZED_BUTTON_PAGE_NAME, false, GetIconIndex(newBook) ); \
-                                                                                   \
-        panel = CreateInsertPage(newBook);                                         \
-        newBook->InsertPage( 0, panel, I_WAS_INSERTED_PAGE_NAME, false, GetIconIndex(newBook) ); \
-                                                                                   \
-        newBook->SetSelection(1);                                                  \
+        CreateInitialPages(newBook);                                               \
     }                                                                              \
                                                                                    \
     m_sizerFrame->Insert(0, newBook, 5, wxEXPAND | wxALL, 4);                      \
@@ -425,7 +413,7 @@ void MyFrame::RecreateBooks()
     ShowCurrentBook();
 }
 
-wxBookCtrl *MyFrame::GetCurrentBook()
+wxBookCtrlBase *MyFrame::GetCurrentBook()
 {
     switch (m_type)
     {
@@ -495,7 +483,7 @@ END_EVENT_TABLE()
 
 void MyFrame::OnType(wxCommandEvent& event)
 {
-    wxBookCtrl *currBook = GetCurrentBook();
+    wxBookCtrlBase *currBook = GetCurrentBook();
 
     m_type = event.GetId();
 
@@ -536,7 +524,7 @@ void MyFrame::OnAddPage(wxCommandEvent& WXUNUSED(event))
 {
     static unsigned s_pageAdded = 0;
 
-    wxBookCtrl *currBook = GetCurrentBook();
+    wxBookCtrlBase *currBook = GetCurrentBook();
 
     if ( currBook )
     {
@@ -555,7 +543,7 @@ void MyFrame::OnInsertPage(wxCommandEvent& WXUNUSED(event))
 {
     static unsigned s_pageIns = 0;
 
-    wxBookCtrl *currBook = GetCurrentBook();
+    wxBookCtrlBase *currBook = GetCurrentBook();
 
     if ( currBook )
     {
@@ -571,7 +559,7 @@ void MyFrame::OnInsertPage(wxCommandEvent& WXUNUSED(event))
 
 void MyFrame::OnDeleteCurPage(wxCommandEvent& WXUNUSED(event))
 {
-    wxBookCtrl *currBook = GetCurrentBook();
+    wxBookCtrlBase *currBook = GetCurrentBook();
 
     if ( currBook )
     {
@@ -586,7 +574,7 @@ void MyFrame::OnDeleteCurPage(wxCommandEvent& WXUNUSED(event))
 
 void MyFrame::OnDeleteLastPage(wxCommandEvent& WXUNUSED(event))
 {
-    wxBookCtrl *currBook = GetCurrentBook();
+    wxBookCtrlBase *currBook = GetCurrentBook();
 
     if ( currBook )
     {
@@ -601,7 +589,7 @@ void MyFrame::OnDeleteLastPage(wxCommandEvent& WXUNUSED(event))
 
 void MyFrame::OnNextPage(wxCommandEvent& WXUNUSED(event))
 {
-    wxBookCtrl *currBook = GetCurrentBook();
+    wxBookCtrlBase *currBook = GetCurrentBook();
 
     if ( currBook )
     {
@@ -613,9 +601,9 @@ void MyFrame::OnIdle( wxIdleEvent& WXUNUSED(event) )
 {
     static int s_nPages = wxNOT_FOUND;
     static int s_nSel = wxNOT_FOUND;
-    static wxBookCtrl *s_currBook = NULL;
+    static wxBookCtrlBase *s_currBook = NULL;
 
-    wxBookCtrl *currBook = GetCurrentBook();
+    wxBookCtrlBase *currBook = GetCurrentBook();
 
     int nPages = currBook ? currBook->GetPageCount() : 0;
     int nSel = currBook ? currBook->GetSelection() : wxNOT_FOUND;
@@ -639,6 +627,12 @@ void MyFrame::OnIdle( wxIdleEvent& WXUNUSED(event) )
     }
 }
 
+#if USE_LOG
+    #define BOOKEVENT_LOG m_text->SetInsertionPointEnd();
+#else
+    #define BOOKEVENT_LOG
+#endif
+
 #define BOOKEVENT(OnBook,wxBookEvent,bookStr,wxEVT_PAGE_CHANGED,wxEVT_PAGE_CHANGING,s_num) \
 void MyFrame::OnBook(wxBookEvent& event)                                                   \
 {                                                                                          \
@@ -655,7 +649,7 @@ void MyFrame::OnBook(wxBookEvent& event)
     else if (eventType == wxEVT_PAGE_CHANGING)                                             \
     {                                                                                      \
         int idx = event.GetOldSelection();                                                 \
-        wxBookCtrl *book = (wxBookCtrl *)event.GetEventObject();                           \
+        wxBookCtrlBase *book = (wxBookCtrlBase *)event.GetEventObject();                   \
         if ( idx != wxNOT_FOUND && book && book->GetPageText(idx) == VETO_PAGE_NAME )      \
         {                                                                                  \
             if                                                                             \
@@ -667,8 +661,6 @@ void MyFrame::OnBook(wxBookEvent& event)
                           wxICON_QUESTION | wxYES_NO, this) != wxYES )                     \
             {                                                                              \
                 event.Veto();                                                              \
-                                                                                           \
-                return;                                                                    \
             }                                                                              \
                                                                                            \
         }                                                                                  \
@@ -685,9 +677,7 @@ void MyFrame::OnBook(wxBookEvent& event)
                                                                                            \
     wxLogMessage(logMsg.c_str());                                                          \
                                                                                            \
-    m_text->SetInsertionPointEnd();                                                        \
-                                                                                           \
-    event.Skip();                                                                          \
+    BOOKEVENT_LOG                                                                          \
 }
 
 #if wxUSE_NOTEBOOK