X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..93a2b888fcbc81aa1c97df976ff0b151b2233abd:/src/mac/carbon/statbmp.cpp diff --git a/src/mac/carbon/statbmp.cpp b/src/mac/carbon/statbmp.cpp index f55267cb87..e7ce2f1633 100644 --- a/src/mac/carbon/statbmp.cpp +++ b/src/mac/carbon/statbmp.cpp @@ -6,21 +6,17 @@ // Created: 1998-01-01 // RCS-ID: $Id$ // Copyright: (c) Stefan Csomor -// Licence: wxWidgets licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ - #pragma implementation "statbmp.h" -#endif +#include "wx/wxprec.h" -#include "wx/defs.h" +#if wxUSE_STATBMP #include "wx/statbmp.h" #include "wx/dcclient.h" -#if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxStaticBitmap, wxControl) -#endif /* * wxStaticBitmap @@ -59,6 +55,7 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id, void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap) { m_bitmap = bitmap; + InvalidateBestSize(); SetSize(GetBestSize()); Refresh() ; } @@ -68,11 +65,20 @@ void wxStaticBitmap::OnPaint( wxPaintEvent& WXUNUSED(event) ) wxPaintDC dc(this); PrepareDC(dc); - dc.DrawBitmap( m_bitmap , 0 , 0 , TRUE ) ; + if (m_bitmap.Ok()) + { + dc.DrawBitmap( m_bitmap , 0 , 0 , TRUE ) ; + } } wxSize wxStaticBitmap::DoGetBestSize() const { - return DoGetSizeFromClientSize( wxSize( m_bitmap.GetWidth() , m_bitmap.GetHeight() ) ) ; + if ( m_bitmap.Ok() ) + return DoGetSizeFromClientSize( wxSize(m_bitmap.GetWidth(), m_bitmap.GetHeight()) ); + + // this is completely arbitrary + return DoGetSizeFromClientSize( wxSize(16, 16) ); } +#endif +