X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/544229d1069a20ca4c81fac6059aa4d92d8559ef..ef25e5a4c8102c9d981e3f720c27462c72102b54:/src/common/fontcmn.cpp diff --git a/src/common/fontcmn.cpp b/src/common/fontcmn.cpp index cb10a1772d..743667fa2a 100644 --- a/src/common/fontcmn.cpp +++ b/src/common/fontcmn.cpp @@ -17,10 +17,6 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "fontbase.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -29,8 +25,10 @@ #endif #ifndef WX_PRECOMP -#include "wx/font.h" -#include "wx/intl.h" + #include "wx/dc.h" + #include "wx/font.h" + #include "wx/intl.h" + #include "wx/dcscreen.h" #endif // WX_PRECOMP #include "wx/gdicmn.h" @@ -53,15 +51,18 @@ // helper functions // ---------------------------------------------------------------------------- -static void AdjustFontSize(wxFont font, wxDC& dc, const wxSize& pixelSize) +static void AdjustFontSize(wxFont& font, wxDC& dc, const wxSize& pixelSize) { - int currentSize = font.GetPointSize(); - int largestGood; - int smallestBad; + int currentSize = 0; + int largestGood = 0; + int smallestBad = 0; bool initialGoodFound = false; bool initialBadFound = false; + // NB: this assignment was separated from the variable definition + // in order to fix a gcc v3.3.3 compiler crash + currentSize = font.GetPointSize(); while (currentSize > 0) { dc.SetFont(font); @@ -185,10 +186,10 @@ wxFont *wxFontBase::New(const wxSize& pixelSize, return new wxFont(pixelSize, family, style, weight, underlined, face, encoding); #else - wxFont * ret = New(10, family, style, weight, underlined, face, encoding); + wxFont *self = New(10, family, style, weight, underlined, face, encoding); wxScreenDC dc; - ret->AdjustFontSize(*(wxFont *)this, dc, pixelSize); - return ret; + AdjustFontSize(*(wxFont *)self, dc, pixelSize); + return self; #endif } @@ -299,14 +300,6 @@ void wxFontBase::SetNativeFontInfoUserDesc(const wxString& info) } } -wxFont& wxFont::operator=(const wxFont& font) -{ - if ( this != &font ) - Ref(font); - - return (wxFont &)*this; -} - bool wxFontBase::operator==(const wxFont& font) const { // either it is the same font, i.e. they share the same common data or they @@ -516,7 +509,7 @@ void wxNativeFontInfo::SetUnderlined(bool underlined_) underlined = underlined_; } -void wxNativeFontInfo::SetFaceName(wxString facename_) +void wxNativeFontInfo::SetFaceName(const wxString& facename_) { faceName = facename_; } @@ -601,7 +594,7 @@ wxString wxNativeFontInfo::ToUserString() const wxFontEncoding enc = GetEncoding(); if ( enc != wxFONTENCODING_DEFAULT && enc != wxFONTENCODING_SYSTEM ) { - desc << _T(' ') << wxFontMapper::Get()->GetEncodingName(enc); + desc << _T(' ') << wxFontMapper::GetEncodingName(enc); } #endif // wxUSE_FONTMAP