X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/15aad3b9386e52524eefbd2619571a038070419b..b6a20a20d010d643e52914f51aa0700df0da925f:/src/common/bookctrl.cpp diff --git a/src/common/bookctrl.cpp b/src/common/bookctrl.cpp index d083152210..508befd1bc 100644 --- a/src/common/bookctrl.cpp +++ b/src/common/bookctrl.cpp @@ -130,7 +130,9 @@ wxSize wxBookCtrl::DoGetBestSize() const // convert display area to window area, adding the size neccessary for the // tabs - return CalcSizeFromPage(bestSize); + wxSize best = CalcSizeFromPage(bestSize); + CacheBestSize(best); + return best; } // ---------------------------------------------------------------------------- @@ -140,16 +142,17 @@ wxSize wxBookCtrl::DoGetBestSize() const bool wxBookCtrl::InsertPage(size_t nPage, wxWindow *page, - const wxString& text, - bool bSelect, - int imageId) + const wxString& WXUNUSED(text), + bool WXUNUSED(bSelect), + int WXUNUSED(imageId)) { wxCHECK_MSG( page, false, _T("NULL page in wxBookCtrl::InsertPage()") ); - wxCHECK_MSG( nPage < m_pages.size(), false, + wxCHECK_MSG( nPage <= m_pages.size(), false, _T("invalid page index in wxBookCtrl::InsertPage()") ); m_pages.Insert(page, nPage); - + InvalidateBestSize(); + return true; } @@ -171,6 +174,7 @@ wxWindow *wxBookCtrl::DoRemovePage(size_t nPage) wxWindow *pageRemoved = m_pages[nPage]; m_pages.RemoveAt(nPage); + InvalidateBestSize(); return pageRemoved; }