// 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"
#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"
// 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);
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
}
}
}
-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
underlined = underlined_;
}
-void wxNativeFontInfo::SetFaceName(wxString facename_)
+void wxNativeFontInfo::SetFaceName(const wxString& facename_)
{
faceName = facename_;
}
wxFontEncoding enc = GetEncoding();
if ( enc != wxFONTENCODING_DEFAULT && enc != wxFONTENCODING_SYSTEM )
{
- desc << _T(' ') << wxFontMapper::Get()->GetEncodingName(enc);
+ desc << _T(' ') << wxFontMapper::GetEncodingName(enc);
}
#endif // wxUSE_FONTMAP