]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/statbmp.cpp
fix for bug reported by Robert and Julian, probably causes other problems
[wxWidgets.git] / src / mac / carbon / statbmp.cpp
index 35e918d469812fd4e6d9c2b952c7e7e19fd2234d..d04e549b0e80dc7990bce4596cabe0c669a99b8e 100644 (file)
@@ -39,6 +39,13 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id,
 {
     SetName(name);
        wxSize size = s ;
+       if ( bitmap.Ok() )
+       {
+       if ( size.x == -1 )
+           size.x = bitmap.GetWidth() ;
+       if ( size.y == -1 )
+           size.y = bitmap.GetHeight() ;
+    }
 
     m_backgroundColour = parent->GetBackgroundColour() ;
     m_foregroundColour = parent->GetForegroundColour() ;
@@ -57,16 +64,11 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id,
     return ret;
 }
 
-void wxStaticBitmap::SetSize(int x, int y, int width, int height, int sizeFlags)
-{
-    wxControl::SetSize( x , y , width , height , sizeFlags ) ;
-}
-
 void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap)
 {
     m_bitmap = bitmap;
+    SetSize(wxSize(bitmap.GetWidth(), bitmap.GetHeight()));
     Refresh() ;
-    SetBestSize(wxSize(bitmap.GetWidth(), bitmap.GetHeight()));
 }
 
 void wxStaticBitmap::OnPaint( wxPaintEvent &event ) 
@@ -79,9 +81,6 @@ void wxStaticBitmap::OnPaint( wxPaintEvent &event )
 
 wxSize wxStaticBitmap::DoGetBestSize() const
 {
-   if ( m_bitmap.Ok() )
-       return wxSize(m_bitmap.GetWidth(), m_bitmap.GetHeight());
-   else
-       return wxSize(16, 16);  // completely arbitrary
+    return wxWindow::DoGetBestSize() ;
 }