X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ca910e1a13bae98fc2c5ddbff35431c6fd66d6b7..cd0f218cdd3114dc6770bc9f6703225aabb5a2de:/src/osx/carbon/button.cpp diff --git a/src/osx/carbon/button.cpp b/src/osx/carbon/button.cpp index 956ca32257..b96099be0d 100644 --- a/src/osx/carbon/button.cpp +++ b/src/osx/carbon/button.cpp @@ -27,89 +27,6 @@ // // -wxSize wxButton::DoGetBestSize() const -{ - if ( GetId() == wxID_HELP ) - return wxSize( 20 , 20 ) ; - - wxSize sz = GetDefaultSize() ; - - switch (GetWindowVariant()) - { - case wxWINDOW_VARIANT_NORMAL: - case wxWINDOW_VARIANT_LARGE: - sz.y = 20 ; - break; - - case wxWINDOW_VARIANT_SMALL: - sz.y = 17 ; - break; - - case wxWINDOW_VARIANT_MINI: - sz.y = 15 ; - break; - - default: - break; - } - -#if wxOSX_USE_CARBON - Rect bestsize = { 0 , 0 , 0 , 0 } ; - m_peer->GetBestRect( &bestsize ) ; - - int wBtn; - if ( EmptyRect( &bestsize ) || ( GetWindowStyle() & wxBU_EXACTFIT) ) - { - Point bounds; - - ControlFontStyleRec controlFont; - OSStatus err = m_peer->GetData( kControlEntireControl, kControlFontStyleTag, &controlFont ); - verify_noerr( err ); - - wxCFStringRef str( m_label, GetFont().GetEncoding() ); - -#if wxOSX_USE_ATSU_TEXT - SInt16 baseline; - if ( m_font.MacGetThemeFontID() != kThemeCurrentPortFont ) - { - err = GetThemeTextDimensions( - (!m_label.empty() ? (CFStringRef)str : CFSTR(" ")), - m_font.MacGetThemeFontID(), kThemeStateActive, false, &bounds, &baseline ); - verify_noerr( err ); - } - else -#endif - { - wxClientDC dc(const_cast(this)); - wxCoord width, height ; - dc.GetTextExtent( m_label , &width, &height); - bounds.h = width; - bounds.v = height; - } - - wBtn = bounds.h + sz.y; - } - else - { - wBtn = bestsize.right - bestsize.left ; - // non 'normal' window variants don't return the correct height - // sz.y = bestsize.bottom - bestsize.top ; - } - if ((wBtn > sz.x) || ( GetWindowStyle() & wxBU_EXACTFIT)) - sz.x = wBtn; -#endif - - return sz ; -} - -wxSize wxButton::GetDefaultSize() -{ - int wBtn = 70 ; - int hBtn = 20 ; - - return wxSize(wBtn, hBtn); -} - wxWidgetImplType* wxWidgetImpl::CreateButton( wxWindowMac* wxpeer, wxWindowMac* parent, wxWindowID id, @@ -148,6 +65,7 @@ wxWidgetImplType* wxWidgetImpl::CreateButton( wxWindowMac* wxpeer, break; case wxWINDOW_VARIANT_SMALL: maxHeight = 17; + break; case wxWINDOW_VARIANT_MINI: maxHeight = 15; }