]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/notebook.cpp
Window proc processing updates
[wxWidgets.git] / src / msw / notebook.cpp
index b8ac425b2e9234a2cdada25fd631ccac2907cf1c..dbaa99823a4ae7038f975c9c1b6d5b81445fc6b2 100644 (file)
@@ -106,6 +106,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxNotifyEvent)
 void wxNotebook::Init()
 {
   m_pImageList = NULL;
+  m_bOwnsImageList = FALSE;
   m_nSelection = -1;
 }
 
@@ -188,6 +189,7 @@ bool wxNotebook::Create(wxWindow *parent,
 // dtor
 wxNotebook::~wxNotebook()
 {
+  if (m_bOwnsImageList) delete m_pImageList;
 }
 
 // ----------------------------------------------------------------------------
@@ -276,10 +278,18 @@ bool wxNotebook::SetPageImage(int nPage, int nImage)
 
 void wxNotebook::SetImageList(wxImageList* imageList)
 {
+  if (m_bOwnsImageList) delete m_pImageList;
   m_pImageList = imageList;
+  m_bOwnsImageList = FALSE;
   TabCtrl_SetImageList(m_hwnd, (HIMAGELIST)imageList->GetHIMAGELIST());
 }
 
+void wxNotebook::AssignImageList(wxImageList* imageList)
+{
+  SetImageList(imageList);
+  m_bOwnsImageList = TRUE;
+}
+
 // ----------------------------------------------------------------------------
 // wxNotebook size settings
 // ----------------------------------------------------------------------------