wxOSX Retina fixes: size wxStaticBitmap and wxBitmapButton properly.

The size is expressed in logical coordinates and needs to use bitmap's
scaled size, otherwise it would appear twice as large in both
dimensions.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík 2013-12-04 14:33:07 +00:00
parent 4156e1a5c9
commit b5e7f21065
3 changed files with 4 additions and 4 deletions

View File

@ -60,8 +60,8 @@ public:
private:
wxSize GetBitmapSize()
{
return m_bitmap.IsOk() ? wxSize(m_bitmap.GetWidth(), m_bitmap.GetHeight())
: wxSize(16, 16); // this is completely arbitrary
return m_bitmap.IsOk() ? m_bitmap.GetScaledSize()
: wxSize(16, 16); // this is completely arbitrary
}
void OnPaint(wxPaintEvent& event);

View File

@ -584,7 +584,7 @@ wxSize wxStaticBitmapBase::DoGetBestSize() const
wxSize best;
wxBitmap bmp = GetBitmap();
if ( bmp.IsOk() )
best = wxSize(bmp.GetWidth(), bmp.GetHeight());
best = bmp.GetScaledSize();
else
// this is completely arbitrary
best = wxSize(16, 16);

View File

@ -66,7 +66,7 @@ wxSize wxBitmapButton::DoGetBestSize() const
if ( GetBitmapLabel().IsOk() )
{
best += GetBitmapLabel().GetSize();
best += GetBitmapLabel().GetScaledSize();
}
return best;