X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ab5fe83396c13f9fbf01630c52adf4df7607cbfe..fe1bdf10a61ddc1f3455e5a9a22ca04a8f38eec2:/src/common/fontcmn.cpp diff --git a/src/common/fontcmn.cpp b/src/common/fontcmn.cpp index ad280cef8e..bdc45ec3bc 100644 --- a/src/common/fontcmn.cpp +++ b/src/common/fontcmn.cpp @@ -18,18 +18,19 @@ // ---------------------------------------------------------------------------- #ifdef __GNUG__ - #pragma implementation "fontbase.h" +#pragma implementation "fontbase.h" #endif // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" #ifdef __BORLANDC__ - #pragma hdrstop +#pragma hdrstop #endif #ifndef WX_PRECOMP - #include "wx/font.h" +#include "wx/font.h" +#include "wx/intl.h" #endif // WX_PRECOMP #include "wx/gdicmn.h" @@ -82,7 +83,7 @@ wxNativeFontInfo *wxFontBase::GetNativeFontInfo() const wxNativeFontInfo *fontInfo = new wxNativeFontInfo(); fontInfo->SetPointSize(GetPointSize()); - fontInfo->SetFamily(GetFamily()); + fontInfo->SetFamily((wxFontFamily)GetFamily()); fontInfo->SetStyle((wxFontStyle)GetStyle()); fontInfo->SetWeight((wxFontWeight)GetWeight()); fontInfo->SetUnderlined(GetUnderlined()); @@ -256,7 +257,7 @@ bool wxNativeFontInfo::FromString(const wxString& s) token = tokenizer.GetNextToken(); if ( !token.ToLong(&l) ) return FALSE; - family = (int)l; + family = (wxFontFamily)l; token = tokenizer.GetNextToken(); if ( !token.ToLong(&l) ) @@ -338,6 +339,11 @@ wxString wxNativeFontInfo::GetFaceName() const return faceName; } +wxFontFamily wxNativeFontInfo::GetFamily() const +{ + return family; +} + wxFontEncoding wxNativeFontInfo::GetEncoding() const { return encoding; @@ -365,7 +371,12 @@ void wxNativeFontInfo::SetUnderlined(bool underlined_) void wxNativeFontInfo::SetFaceName(wxString facename_) { - facename = facename_; + faceName = facename_; +} + +void wxNativeFontInfo::SetFamily(wxFontFamily family_) +{ + family = family_; } void wxNativeFontInfo::SetEncoding(wxFontEncoding encoding_) @@ -423,19 +434,29 @@ wxString wxNativeFontInfo::ToUserString() const // we don't distinguish between the two for now anyhow... case wxFONTSTYLE_ITALIC: case wxFONTSTYLE_SLANT: - desc << _("italic "); + desc << _("italic"); break; } - if ( !facename.empty() ) + wxString face = GetFaceName(); + if ( !face.empty() ) { - desc << facename << _T(' '); + desc << _T(' ') << face; } - if ( pointsize != wxNORMAL_FONT->GetPointSize() ) + int size = GetPointSize(); + if ( size != wxNORMAL_FONT->GetPointSize() ) { - desc << pointsize; + desc << _T(' ') << size; } + + wxFontEncoding enc = GetEncoding(); + if ( enc != wxFONTENCODING_DEFAULT && enc != wxFONTENCODING_SYSTEM ) + { + desc << _T(' ') << wxTheFontMapper->GetEncodingName(enc); + } + + return desc; } bool wxNativeFontInfo::FromUserString(const wxString& s) @@ -478,7 +499,7 @@ bool wxNativeFontInfo::FromUserString(const wxString& s) } else if ( token.ToULong(&size) ) { - pointsize = (int)size; + SetPointSize(size); } else if ( (encoding = wxTheFontMapper->CharsetToEncoding(token, FALSE)) != wxFONTENCODING_DEFAULT )