autoresize upon setting new bitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -39,6 +39,13 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id,
|
|||||||
{
|
{
|
||||||
SetName(name);
|
SetName(name);
|
||||||
wxSize size = s ;
|
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_backgroundColour = parent->GetBackgroundColour() ;
|
||||||
m_foregroundColour = parent->GetForegroundColour() ;
|
m_foregroundColour = parent->GetForegroundColour() ;
|
||||||
@@ -60,8 +67,8 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id,
|
|||||||
void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap)
|
void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap)
|
||||||
{
|
{
|
||||||
m_bitmap = bitmap;
|
m_bitmap = bitmap;
|
||||||
|
SetSize(wxSize(bitmap.GetWidth(), bitmap.GetHeight()));
|
||||||
Refresh() ;
|
Refresh() ;
|
||||||
SetBestSize(wxSize(bitmap.GetWidth(), bitmap.GetHeight()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxStaticBitmap::OnPaint( wxPaintEvent &event )
|
void wxStaticBitmap::OnPaint( wxPaintEvent &event )
|
||||||
@@ -74,9 +81,6 @@ void wxStaticBitmap::OnPaint( wxPaintEvent &event )
|
|||||||
|
|
||||||
wxSize wxStaticBitmap::DoGetBestSize() const
|
wxSize wxStaticBitmap::DoGetBestSize() const
|
||||||
{
|
{
|
||||||
if ( m_bitmap.Ok() )
|
return wxWindow::DoGetBestSize() ;
|
||||||
return wxSize(m_bitmap.GetWidth(), m_bitmap.GetHeight());
|
|
||||||
else
|
|
||||||
return wxSize(16, 16); // completely arbitrary
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -39,6 +39,13 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id,
|
|||||||
{
|
{
|
||||||
SetName(name);
|
SetName(name);
|
||||||
wxSize size = s ;
|
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_backgroundColour = parent->GetBackgroundColour() ;
|
||||||
m_foregroundColour = parent->GetForegroundColour() ;
|
m_foregroundColour = parent->GetForegroundColour() ;
|
||||||
@@ -60,8 +67,8 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id,
|
|||||||
void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap)
|
void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap)
|
||||||
{
|
{
|
||||||
m_bitmap = bitmap;
|
m_bitmap = bitmap;
|
||||||
|
SetSize(wxSize(bitmap.GetWidth(), bitmap.GetHeight()));
|
||||||
Refresh() ;
|
Refresh() ;
|
||||||
SetBestSize(wxSize(bitmap.GetWidth(), bitmap.GetHeight()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxStaticBitmap::OnPaint( wxPaintEvent &event )
|
void wxStaticBitmap::OnPaint( wxPaintEvent &event )
|
||||||
@@ -74,9 +81,6 @@ void wxStaticBitmap::OnPaint( wxPaintEvent &event )
|
|||||||
|
|
||||||
wxSize wxStaticBitmap::DoGetBestSize() const
|
wxSize wxStaticBitmap::DoGetBestSize() const
|
||||||
{
|
{
|
||||||
if ( m_bitmap.Ok() )
|
return wxWindow::DoGetBestSize() ;
|
||||||
return wxSize(m_bitmap.GetWidth(), m_bitmap.GetHeight());
|
|
||||||
else
|
|
||||||
return wxSize(16, 16); // completely arbitrary
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user