Add required padding to DoGetBestSize() for small bitmaps when using themes

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Jamie Gadd 2006-06-19 23:50:18 +00:00
parent 8e5ec12961
commit 9d1b7527cd

View File

@ -603,11 +603,11 @@ wxSize wxBitmapButton::DoGetBestSize() const
TMT_CONTENTMARGINS, NULL,
&margins);
// the margins we get are too small, part of the bitmap is
// truncated if we use them -- so add a little extra space
wxSize best(m_bmpNormal.GetWidth() +
margins.cxLeftWidth + margins.cxRightWidth + 5,
m_bmpNormal.GetHeight() +
// XP doesn't draw themed buttons correctly when the client area is
// smaller than 8x8 - enforce this minimum size for small bitmaps
wxSize best(wxMax(8, m_bmpNormal.GetWidth()) +
margins.cxLeftWidth + margins.cxRightWidth + 2,
wxMax(8, m_bmpNormal.GetHeight()) +
margins.cyTopHeight + margins.cyBottomHeight + 2);
CacheBestSize(best);
return best;