]> git.saurik.com Git - wxWidgets.git/blobdiff - src/cocoa/notebook.mm
[#1577388] - fix for scaling in wxImage.
[wxWidgets.git] / src / cocoa / notebook.mm
index 12863c1b90ed177376c7ff93bef83400ed8f28b2..9cc3241b6569277ed0141b76d646e98c76663552 100644 (file)
@@ -64,6 +64,7 @@
 - (void)dealloc
 {
     [m_image release];
 - (void)dealloc
 {
     [m_image release];
+    [super dealloc];
 }
 
 - (NSSize)sizeOfLabel:(BOOL)shouldTruncateLabel
 }
 
 - (NSSize)sizeOfLabel:(BOOL)shouldTruncateLabel
@@ -202,7 +203,7 @@ bool wxNotebook::InsertPage( size_t pos,
     m_pages.Insert(page,pos);
     NSTabViewItem *tvitem = [[WXCTabViewImageItem alloc] initWithIdentifier:nil];
     [tvitem setLabel: wxNSStringWithWxString(title)];
     m_pages.Insert(page,pos);
     NSTabViewItem *tvitem = [[WXCTabViewImageItem alloc] initWithIdentifier:nil];
     [tvitem setLabel: wxNSStringWithWxString(title)];
-    const wxBitmap *bmp = (imageId!=-1)?m_imageList->GetBitmap(imageId):NULL;
+    const wxBitmap *bmp = (imageId!=-1)?m_imageList->GetBitmapPtr(imageId):NULL;
     if(bmp)
         [(WXCTabViewImageItem*) tvitem setImage: bmp->GetNSImage(true)];
 
     if(bmp)
         [(WXCTabViewImageItem*) tvitem setImage: bmp->GetNSImage(true)];
 
@@ -250,7 +251,7 @@ int wxNotebook::GetPageImage(size_t nPage) const
 
 bool wxNotebook::SetPageImage(size_t nPage, int nImage)
 {
 
 bool wxNotebook::SetPageImage(size_t nPage, int nImage)
 {
-    const wxBitmap *bmp = nImage!=-1?m_imageList->GetBitmap(nImage):NULL;
+    const wxBitmap *bmp = nImage!=-1?m_imageList->GetBitmapPtr(nImage):NULL;
     if(!bmp)
         return false;
     NSTabViewItem *tvitem = [GetNSTabView() tabViewItemAtIndex: nPage];
     if(!bmp)
         return false;
     NSTabViewItem *tvitem = [GetNSTabView() tabViewItemAtIndex: nPage];
@@ -260,8 +261,23 @@ bool wxNotebook::SetPageImage(size_t nPage, int nImage)
     return true;
 }
 
     return true;
 }
 
-
 int wxNotebook::SetSelection(size_t nPage)
 int wxNotebook::SetSelection(size_t nPage)
+{
+    const int pageOld = GetSelection();
+
+    if ( !SendPageChangingEvent(nPage) )
+        return pageOld;
+
+    int page = ChangeSelection(nPage);
+    if ( page != wxNOT_FOUND )
+    {
+        SendPageChangedEvent(pageOld);
+    }
+
+    return page;
+}
+
+int wxNotebook::ChangeSelection(size_t nPage)
 {
     wxAutoNSAutoreleasePool pool;
     [GetNSTabView() selectTabViewItemAtIndex:nPage];
 {
     wxAutoNSAutoreleasePool pool;
     [GetNSTabView() selectTabViewItemAtIndex:nPage];