X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/39bc0347fda3505f7fb43447f21efd84b9e00b3c..8064223b7b1b3657363b7a635c381b9269d95e55:/src/mac/carbon/stattext.cpp diff --git a/src/mac/carbon/stattext.cpp b/src/mac/carbon/stattext.cpp index 236c88000e..d2f9fd1cea 100644 --- a/src/mac/carbon/stattext.cpp +++ b/src/mac/carbon/stattext.cpp @@ -92,9 +92,10 @@ wxSize wxStaticText::DoGetBestSize() const OSStatus err = m_peer->GetData( kControlEntireControl, kControlFontStyleTag, &controlFont ); verify_noerr( err ); - SInt16 baseline; - wxMacCFStringHolder str( m_label, m_font.GetEncoding() ); + wxCFStringRef str( m_label, GetFont().GetEncoding() ); +#if wxMAC_USE_ATSU_TEXT + SInt16 baseline; if ( m_font.MacGetThemeFontID() != kThemeCurrentPortFont ) { err = GetThemeTextDimensions( @@ -103,24 +104,13 @@ wxSize wxStaticText::DoGetBestSize() const verify_noerr( err ); } else +#endif { - #if wxMAC_USE_CORE_GRAPHICS wxClientDC dc(const_cast(this)); wxCoord width, height ; dc.GetTextExtent( m_label , &width, &height); bounds.h = width; bounds.v = height; - #else - wxMacWindowStateSaver sv( this ); - ::TextFont( m_font.MacGetFontNum() ); - ::TextSize( (short)(m_font.MacGetFontSize()) ); - ::TextFace( m_font.MacGetFontStyle() ); - - err = GetThemeTextDimensions( - (!m_label.empty() ? (CFStringRef)str : CFSTR(" ")), - kThemeCurrentPortFont, kThemeStateActive, false, &bounds, &baseline ); - verify_noerr( err ); - #endif } if ( m_label.empty() ) @@ -186,9 +176,10 @@ bool wxStaticText::SetFont(const wxFont& font) void wxStaticText::DoSetLabel(const wxString& label) { + m_labelOrig = label; m_label = RemoveMnemonics(label); - wxMacCFStringHolder str( m_label, m_font.GetEncoding() ); + wxCFStringRef str( m_label, GetFont().GetEncoding() ); OSStatus err = m_peer->SetData(kControlEntireControl, kControlStaticTextCFStringTag, str); verify_noerr( err ); }