]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/notebook.cpp
Added a constructor that allows creation of independent wxControl
[wxWidgets.git] / src / msw / notebook.cpp
index f8d4ed27d1877dd88c3227913994b5e0ddb1439e..8f6ad71029e5350d768a3a444c73d50e54ade519 100644 (file)
 
 // wxWindows
 #ifndef WX_PRECOMP
-  #include  <wx/string.h>
+  #include  "wx/string.h"
 #endif  // WX_PRECOMP
 
-#include  <wx/log.h>
-#include  <wx/imaglist.h>
-#include  <wx/event.h>
-#include  <wx/control.h>
-#include  <wx/notebook.h>
+#include  "wx/log.h"
+#include  "wx/imaglist.h"
+#include  "wx/event.h"
+#include  "wx/control.h"
+#include  "wx/notebook.h"
 
-#include  <wx/msw/private.h>
+#include  "wx/msw/private.h"
 
 // Windows standard headers
 #ifndef   __WIN95__
@@ -83,7 +83,6 @@
 // event table
 // ----------------------------------------------------------------------------
 
-#if !USE_SHARED_LIBRARIES
   BEGIN_EVENT_TABLE(wxNotebook, wxControl)
     EVT_NOTEBOOK_PAGE_CHANGED(-1, wxNotebook::OnSelChange)
 
@@ -96,7 +95,6 @@
 
   IMPLEMENT_DYNAMIC_CLASS(wxNotebook, wxControl)
   IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxNotifyEvent)
-#endif
 
 // ============================================================================
 // implementation
@@ -329,6 +327,9 @@ bool wxNotebook::RemovePage(int nPage)
 
   m_aPages.Remove(nPage);
 
+  if ( m_aPages.IsEmpty() )
+      m_nSelection = -1;
+
   return TRUE;
 }
 
@@ -344,6 +345,8 @@ bool wxNotebook::DeleteAllPages()
 
   TabCtrl_DeleteAllItems(m_hwnd);
 
+  m_nSelection = -1;
+
   return TRUE;
 }
 
@@ -414,8 +417,6 @@ bool wxNotebook::InsertPage(int nPage,
   GetSize((int *)&rc.right, (int *)&rc.bottom);
   TabCtrl_AdjustRect(m_hwnd, FALSE, &rc);
   pPage->SetSize(rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top);
-  if ( pPage->GetAutoLayout() )
-      pPage->Layout();
 
 
   // some page should be selected: either this one or the first one if there is
@@ -448,8 +449,6 @@ void wxNotebook::OnSize(wxSizeEvent& event)
   for ( size_t nPage = 0; nPage < nCount; nPage++ ) {
     wxNotebookPage *pPage = m_aPages[nPage];
     pPage->SetSize(rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top);
-    if ( pPage->GetAutoLayout() )
-      pPage->Layout();
   }
 
   event.Skip();