use cleaner OSX version (10.3 upwards)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2006-05-01 14:40:35 +00:00
parent 90b903c263
commit c881da964f

View File

@@ -396,9 +396,14 @@ IconRef wxBitmapRefData::GetIconRef()
PicHandle pic = GetPictHandle() ;
SetIconFamilyData( iconFamily, 'PICT' , (Handle) pic ) ;
}
// transform into IconRef
#ifdef __WXMAC_OSX__
// cleaner version existing from 10.3 upwards
HLock((Handle) iconFamily);
OSStatus err = GetIconRefFromIconFamilyPtr( *iconFamily, GetHandleSize((Handle) iconFamily), &m_iconRef );
HUnlock((Handle) iconFamily);
wxASSERT_MSG( err == noErr , wxT("Error when constructing icon ref") );
#else
static int iconCounter = 2 ;
OSStatus err = RegisterIconRefFromIconFamily( 'WXNG' , (OSType) iconCounter, iconFamily, &m_iconRef ) ;
@@ -407,8 +412,9 @@ IconRef wxBitmapRefData::GetIconRef()
// we have to retain a reference, as Unregister will decrement it
AcquireIconRef( m_iconRef ) ;
UnregisterIconRef( 'WXNG' , (OSType) iconCounter ) ;
DisposeHandle( (Handle) iconFamily ) ;
++iconCounter ;
#endif
DisposeHandle( (Handle) iconFamily ) ;
}
return m_iconRef ;