diff --git a/include/wx/bookctrl.h b/include/wx/bookctrl.h index 963de7a91a..267e81b692 100644 --- a/include/wx/bookctrl.h +++ b/include/wx/bookctrl.h @@ -20,11 +20,9 @@ #if wxUSE_BOOKCTRL #include "wx/control.h" -#include "wx/dynarray.h" +#include "wx/vector.h" #include "wx/withimages.h" -WX_DEFINE_EXPORTED_ARRAY_PTR(wxWindow *, wxArrayPages); - class WXDLLIMPEXP_FWD_CORE wxImageList; class WXDLLIMPEXP_FWD_CORE wxBookCtrlEvent; @@ -94,7 +92,7 @@ public: virtual size_t GetPageCount() const { return m_pages.size(); } // get the panel which represents the given page - virtual wxWindow *GetPage(size_t n) const { return m_pages[n]; } + virtual wxWindow *GetPage(size_t n) const { return m_pages.at(n); } // get the current page or NULL if none wxWindow *GetCurrentPage() const @@ -331,7 +329,7 @@ protected: // the array of all pages of this control - wxArrayPages m_pages; + wxVector m_pages; // get the page area virtual wxRect GetPageRect() const; diff --git a/src/common/bookctrl.cpp b/src/common/bookctrl.cpp index c2dde5fcfe..3ed66c98a1 100644 --- a/src/common/bookctrl.cpp +++ b/src/common/bookctrl.cpp @@ -241,8 +241,8 @@ void wxBookCtrlBase::DoSize() // resize all pages to fit the new control size const wxRect pageRect = GetPageRect(); - const unsigned pagesCount = m_pages.GetCount(); - for ( unsigned int i = 0; i < pagesCount; ++i ) + const size_t pagesCount = m_pages.size(); + for ( size_t i = 0; i < pagesCount; ++i ) { wxWindow * const page = m_pages[i]; if ( !page ) @@ -310,7 +310,7 @@ void wxBookCtrlBase::OnHelp(wxHelpEvent& event) source = source->GetParent(); } - if ( source && m_pages.Index(source) == wxNOT_FOUND ) + if ( source && FindPage(source) == wxNOT_FOUND ) { // this event is for the book control itself, redirect it to the // corresponding page @@ -368,7 +368,7 @@ wxBookCtrlBase::InsertPage(size_t nPage, wxCHECK_MSG( nPage <= m_pages.size(), false, wxT("invalid page index in wxBookCtrlBase::InsertPage()") ); - m_pages.Insert(page, nPage); + m_pages.insert(m_pages.begin() + nPage, page); if ( page ) page->SetSize(GetPageRect()); @@ -395,7 +395,7 @@ wxWindow *wxBookCtrlBase::DoRemovePage(size_t nPage) wxT("invalid page index in wxBookCtrlBase::DoRemovePage()") ); wxWindow *pageRemoved = m_pages[nPage]; - m_pages.RemoveAt(nPage); + m_pages.erase(m_pages.begin() + nPage); DoInvalidateBestSize(); return pageRemoved; diff --git a/src/gtk/notebook.cpp b/src/gtk/notebook.cpp index 8f75c84c25..35cd915ca6 100644 --- a/src/gtk/notebook.cpp +++ b/src/gtk/notebook.cpp @@ -418,7 +418,7 @@ bool wxNotebook::InsertPage( size_t position, wxGtkNotebookPage* pageData = new wxGtkNotebookPage; - m_pages.Insert(win, position); + m_pages.insert(m_pages.begin() + position, win); m_pagesData.Insert(position, pageData); // set the label image and text diff --git a/src/gtk1/notebook.cpp b/src/gtk1/notebook.cpp index 7a11bc1c20..6dc0752862 100644 --- a/src/gtk1/notebook.cpp +++ b/src/gtk1/notebook.cpp @@ -660,7 +660,7 @@ bool wxNotebook::InsertPage( size_t position, else m_pagesData.Insert( position, nb_page ); - m_pages.Insert(win, position); + m_pages.insert(m_pages.begin() + position, win); nb_page->m_box = gtk_hbox_new( FALSE, 1 ); gtk_container_border_width( GTK_CONTAINER(nb_page->m_box), 2 ); diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index 62899bc39b..62fa2d61b3 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -309,9 +309,9 @@ wxNotebook::~wxNotebook() size_t wxNotebook::GetPageCount() const { // consistency check - wxASSERT( (int)m_pages.Count() == TabCtrl_GetItemCount(GetHwnd()) ); + wxASSERT( (int)m_pages.size() == TabCtrl_GetItemCount(GetHwnd()) ); - return m_pages.Count(); + return m_pages.size(); } int wxNotebook::GetRowCount() const @@ -404,7 +404,7 @@ bool wxNotebook::SetPageText(size_t nPage, const wxString& strText) if ( ret && rows != GetRowCount() ) { const wxRect r = GetPageSize(); - const size_t count = m_pages.Count(); + const size_t count = m_pages.size(); for ( size_t page = 0; page < count; page++ ) m_pages[page]->SetSize(r); } @@ -578,7 +578,7 @@ wxNotebookPage *wxNotebook::DoRemovePage(size_t nPage) if ( !TabCtrl_DeleteItem(GetHwnd(), nPage) ) wxLogLastError(wxS("TabCtrl_DeleteItem()")); - if ( m_pages.IsEmpty() ) + if ( m_pages.empty() ) { // no selection any more, the notebook becamse empty m_selection = wxNOT_FOUND; @@ -693,13 +693,13 @@ bool wxNotebook::InsertPage(size_t nPage, } // succeeded: save the pointer to the page - m_pages.Insert(pPage, nPage); + m_pages.insert(m_pages.begin() + nPage, pPage); // we may need to adjust the size again if the notebook size changed: // normally this only happens for the first page we add (the tabs which // hadn't been there before are now shown) but for a multiline notebook it // can happen for any page at all as a new row could have been started - if ( m_pages.GetCount() == 1 || HasFlag(wxNB_MULTILINE) ) + if ( m_pages.size() == 1 || HasFlag(wxNB_MULTILINE) ) { AdjustPageSize(pPage); @@ -959,7 +959,7 @@ void wxNotebook::OnSize(wxSizeEvent& event) int width = rc.right - rc.left, height = rc.bottom - rc.top; - size_t nCount = m_pages.Count(); + size_t nCount = m_pages.size(); for ( size_t nPage = 0; nPage < nCount; nPage++ ) { wxNotebookPage *pPage = m_pages[nPage]; pPage->SetSize(rc.left, rc.top, width, height); diff --git a/src/osx/notebook_osx.cpp b/src/osx/notebook_osx.cpp index fc94045154..144797a9dc 100644 --- a/src/osx/notebook_osx.cpp +++ b/src/osx/notebook_osx.cpp @@ -173,7 +173,7 @@ wxNotebookPage* wxNotebook::DoRemovePage(size_t nPage) wxT("DoRemovePage: invalid notebook page") ); wxNotebookPage* page = m_pages[nPage] ; - m_pages.RemoveAt(nPage); + m_pages.erase(m_pages.begin() + nPage); m_images.RemoveAt(nPage); MacSetupTabs(); @@ -285,7 +285,7 @@ wxRect wxNotebook::GetPageRect() const // time because doing it in ::Create() doesn't work (for unknown reasons) void wxNotebook::OnSize(wxSizeEvent& event) { - unsigned int nCount = m_pages.Count(); + unsigned int nCount = m_pages.size(); wxRect rect = GetPageRect() ; for ( unsigned int nPage = 0; nPage < nCount; nPage++ ) diff --git a/src/qt/notebook.cpp b/src/qt/notebook.cpp index 5a3b8affcf..8fd294f1f5 100644 --- a/src/qt/notebook.cpp +++ b/src/qt/notebook.cpp @@ -150,7 +150,7 @@ bool wxNotebook::InsertPage(size_t n, wxWindow *page, const wxString& text, m_qtTabWidget->insertTab( n, page->GetHandle(), wxQtConvertString( text )); } - m_pages.Insert(page, n); + m_pages.insert(m_pages.begin() + n, page); m_images.insert(m_images.begin() + n, imageId); // reenable firing qt signals as internal wx initialization was completed diff --git a/src/univ/notebook.cpp b/src/univ/notebook.cpp index e68d51f07e..143b8ec82c 100644 --- a/src/univ/notebook.cpp +++ b/src/univ/notebook.cpp @@ -304,7 +304,7 @@ bool wxNotebook::InsertPage(size_t nPage, wxT("invalid notebook page in InsertPage()") ); // modify the data - m_pages.Insert(pPage, nPage); + m_pages.insert(m_pages.begin() + nPage, pPage); wxString label; m_accels.Insert(FindAccelIndex(strText, &label), nPage); @@ -378,7 +378,7 @@ wxNotebookPage *wxNotebook::DoRemovePage(size_t nPage) wxCHECK_MSG( IS_VALID_PAGE(nPage), NULL, wxT("invalid notebook page") ); wxNotebookPage *page = m_pages[nPage]; - m_pages.RemoveAt(nPage); + m_pages.erase(m_pages.begin() + nPage); m_titles.RemoveAt(nPage); m_accels.RemoveAt(nPage); m_widths.RemoveAt(nPage);