git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26237
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
protected:
virtual void OnSetBitmap();
protected:
virtual void OnSetBitmap();
+ virtual wxSize DoGetBestSize() const;
protected:
virtual void OnSetBitmap();
protected:
virtual void OnSetBitmap();
+ virtual wxSize DoGetBestSize() const;
if (m_bmpNormal.Ok())
{
wxSize newSize = size;
if (m_bmpNormal.Ok())
{
wxSize newSize = size;
- int border = (style & wxNO_BORDER) ? 4 : 10;
+ wxSize bestSize = DoGetBestSize();
- newSize.x = m_bmpNormal.GetWidth()+border;
+ newSize.x = bestSize.x;
- newSize.y = m_bmpNormal.GetHeight()+border;
+ newSize.y = bestSize.y;
SetSize( newSize.x, newSize.y );
OnSetBitmap();
}
SetSize( newSize.x, newSize.y );
OnSetBitmap();
}
+wxSize wxBitmapButton::DoGetBestSize() const
+{
+ wxSize best;
+
+ if (m_bmpNormal.Ok())
+ {
+ int border = HasFlag(wxNO_BORDER) ? 4 : 10;
+ best.x = m_bmpNormal.GetWidth()+border;
+ best.y = m_bmpNormal.GetHeight()+border;
+ }
+ return best;
+}
+
bool wxBitmapButton::Enable( bool enable )
{
if ( !wxWindow::Enable(enable) )
bool wxBitmapButton::Enable( bool enable )
{
if ( !wxWindow::Enable(enable) )
if (m_bmpNormal.Ok())
{
wxSize newSize = size;
if (m_bmpNormal.Ok())
{
wxSize newSize = size;
- int border = (style & wxNO_BORDER) ? 4 : 10;
+ wxSize bestSize = DoGetBestSize();
- newSize.x = m_bmpNormal.GetWidth()+border;
+ newSize.x = bestSize.x;
- newSize.y = m_bmpNormal.GetHeight()+border;
+ newSize.y = bestSize.y;
SetSize( newSize.x, newSize.y );
OnSetBitmap();
}
SetSize( newSize.x, newSize.y );
OnSetBitmap();
}
+wxSize wxBitmapButton::DoGetBestSize() const
+{
+ wxSize best;
+
+ if (m_bmpNormal.Ok())
+ {
+ int border = HasFlag(wxNO_BORDER) ? 4 : 10;
+ best.x = m_bmpNormal.GetWidth()+border;
+ best.y = m_bmpNormal.GetHeight()+border;
+ }
+ return best;
+}
+
bool wxBitmapButton::Enable( bool enable )
{
if ( !wxWindow::Enable(enable) )
bool wxBitmapButton::Enable( bool enable )
{
if ( !wxWindow::Enable(enable) )