]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/bookctrl.h
BC++ 5.5 and later supports wxUSE_ON_FATAL_EXCEPTION
[wxWidgets.git] / include / wx / bookctrl.h
index 883a27bebc9e3b13d51a993e5ec3f572f8e1d28f..0f03436ae50acb39797404be7a51d37f9c75d233 100644 (file)
@@ -5,7 +5,7 @@
 // Modified by:
 // Created:     19.08.03
 // RCS-ID:      $Id$
-// Copyright:   (c) 2003 Vadim Zeitlin <vadim@wxwindows.org>
+// Copyright:   (c) 2003 Vadim Zeitlin <vadim@wxwidgets.org>
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
@@ -122,10 +122,19 @@ public:
     virtual bool DeletePage(size_t n);
 
     // remove one page from the notebook, without deleting it
-    virtual bool RemovePage(size_t n) { return DoRemovePage(n) != NULL; }
+    virtual bool RemovePage(size_t n)
+    {
+        InvalidateBestSize();
+        return DoRemovePage(n) != NULL;
+    }
 
     // remove all pages and delete them
-    virtual bool DeleteAllPages() { WX_CLEAR_ARRAY(m_pages); return true; }
+    virtual bool DeleteAllPages()
+    {
+        InvalidateBestSize();
+        WX_CLEAR_ARRAY(m_pages);
+        return true;
+    }
 
     // adds a new page to the control
     virtual bool AddPage(wxWindow *page,
@@ -133,6 +142,7 @@ public:
                          bool bSelect = false,
                          int imageId = -1)
     {
+        InvalidateBestSize();
         return InsertPage(GetPageCount(), page, text, bSelect, imageId);
     }
 
@@ -177,6 +187,8 @@ protected:
     // common part of all ctors
     void Init();
 
+    // Always rely on GetBestSize, which will look at all the pages
+    virtual void SetInitialBestSize(const wxSize& WXUNUSED(size)) { }
 
     // the array of all pages of this control
     wxArrayPages m_pages;