X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/655719367ac5e131d9642e5783f3ecf64d1a3385..8f98c6c007769184f28dfb9dcd97075bd0efeddc:/src/generic/imaglist.cpp diff --git a/src/generic/imaglist.cpp b/src/generic/imaglist.cpp index ea69fbfaf2..54e53a6200 100644 --- a/src/generic/imaglist.cpp +++ b/src/generic/imaglist.cpp @@ -18,7 +18,12 @@ #pragma hdrstop #endif +#include "wx/defs.h" + +#ifndef __WXPALMOS__ + #include "wx/generic/imaglist.h" + #include "wx/icon.h" #include "wx/image.h" #include "wx/dc.h" @@ -63,13 +68,13 @@ bool wxGenericImageList::Create( int width, int height, bool WXUNUSED(mask), int bool wxGenericImageList::Create() { - return TRUE; + return true; } int wxGenericImageList::Add( const wxBitmap &bitmap ) { - wxASSERT_MSG( bitmap.GetWidth() == m_width && - bitmap.GetHeight() == m_height, + wxASSERT_MSG( (bitmap.GetWidth() == m_width && bitmap.GetHeight() == m_height) + || (m_width == 0 && m_height == 0), _T("invalid bitmap size in wxImageList: this might work ") _T("on this platform but definitely won't under Windows.") ); @@ -77,6 +82,13 @@ int wxGenericImageList::Add( const wxBitmap &bitmap ) m_images.Append( new wxIcon( (const wxIcon&) bitmap ) ); else m_images.Append( new wxBitmap(bitmap) ); + + if (m_width == 0 && m_height == 0) + { + m_width = bitmap.GetWidth(); + m_height = bitmap.GetHeight(); + } + return m_images.GetCount()-1; } @@ -108,7 +120,7 @@ bool wxGenericImageList::Replace( int index, const wxBitmap &bitmap ) { wxList::compatibility_iterator node = m_images.Item( index ); - wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); + wxCHECK_MSG( node, false, wxT("wrong index in image list") ); wxBitmap* newBitmap = (bitmap.IsKindOf(CLASSINFO(wxIcon))) ? #if defined(__VISAGECPP__) @@ -134,19 +146,19 @@ bool wxGenericImageList::Replace( int index, const wxBitmap &bitmap ) m_images.Insert( next, newBitmap ); } - return TRUE; + return true; } bool wxGenericImageList::Remove( int index ) { wxList::compatibility_iterator node = m_images.Item( index ); - wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); + wxCHECK_MSG( node, false, wxT("wrong index in image list") ); delete node->GetData(); m_images.Erase( node ); - return TRUE; + return true; } bool wxGenericImageList::RemoveAll() @@ -154,7 +166,7 @@ bool wxGenericImageList::RemoveAll() WX_CLEAR_LIST(wxList, m_images); m_images.Clear(); - return TRUE; + return true; } bool wxGenericImageList::GetSize( int index, int &width, int &height ) const @@ -164,13 +176,13 @@ bool wxGenericImageList::GetSize( int index, int &width, int &height ) const wxList::compatibility_iterator node = m_images.Item( index ); - wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); + wxCHECK_MSG( node, false, wxT("wrong index in image list") ); wxBitmap *bm = (wxBitmap*)node->GetData(); width = bm->GetWidth(); height = bm->GetHeight(); - return TRUE; + return true; } bool wxGenericImageList::Draw( int index, wxDC &dc, int x, int y, @@ -178,7 +190,7 @@ bool wxGenericImageList::Draw( int index, wxDC &dc, int x, int y, { wxList::compatibility_iterator node = m_images.Item( index ); - wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); + wxCHECK_MSG( node, false, wxT("wrong index in image list") ); wxBitmap *bm = (wxBitmap*)node->GetData(); @@ -187,7 +199,7 @@ bool wxGenericImageList::Draw( int index, wxDC &dc, int x, int y, else dc.DrawBitmap( *bm, x, y, (flags & wxIMAGELIST_DRAW_TRANSPARENT) > 0 ); - return TRUE; + return true; } - +#endif // __WXPALMOS__