Use wxVector<> for wxBookCtrlBase::m_pages array

Get rid of another macro-based array in favour of wxVector<>.

No real changes.
This commit is contained in:
Vadim Zeitlin
2018-03-25 00:38:16 +01:00
parent 3d37b8c72a
commit bee28c2730
8 changed files with 22 additions and 24 deletions

View File

@@ -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;