diff --git a/include/wx/x11/font.h b/include/wx/x11/font.h index 753e4ed60d..dc842830ec 100644 --- a/include/wx/x11/font.h +++ b/include/wx/x11/font.h @@ -81,7 +81,7 @@ public: virtual ~wxFont(); // implement base class pure virtuals - virtual int GetPointSize() const; + virtual float GetFractionalPointSize() const; virtual wxFontStyle GetStyle() const; virtual int GetNumericWeight() const; virtual bool GetUnderlined() const; @@ -92,7 +92,7 @@ public: virtual bool IsFixedWidth() const; - virtual void SetPointSize(int pointSize); + virtual void SetFractionalPointSize(float pointSize); virtual void SetFamily(wxFontFamily family); virtual void SetStyle(wxFontStyle style); virtual void SetNumericWeight(int weight); diff --git a/src/x11/font.cpp b/src/x11/font.cpp index bf7d01767f..2662d271b7 100644 --- a/src/x11/font.cpp +++ b/src/x11/font.cpp @@ -138,7 +138,7 @@ public: // setters: all of them also take care to modify m_nativeFontInfo if we // have it so as to not lose the information not carried by our fields - void SetPointSize(int pointSize); + void SetFractionalPointSize(float pointSize); void SetFamily(wxFontFamily family); void SetStyle(wxFontStyle style); void SetNumericWeight(int weight); @@ -165,7 +165,7 @@ protected: void InitFromNative(); // font attributes - int m_pointSize; + float m_pointSize; wxFontFamily m_family; wxFontStyle m_style; int m_weight; @@ -250,7 +250,7 @@ void wxFontRefData::Init(int pointSize, m_nativeFontInfo.SetUnderlined(underlined); #endif // wxUSE_UNICODE - SetPointSize(pointSize); + SetFractionalPointSize(static_cast(pointSize)); } void wxFontRefData::InitFromNative() @@ -262,7 +262,7 @@ void wxFontRefData::InitFromNative() // init fields m_faceName = wxGTK_CONV_BACK( pango_font_description_get_family( desc ) ); - m_pointSize = pango_font_description_get_size( desc ) / PANGO_SCALE; + m_pointSize = static_cast(pango_font_description_get_size( desc )) / PANGO_SCALE; switch (pango_font_description_get_style( desc )) { @@ -426,14 +426,14 @@ wxFontRefData::~wxFontRefData() // wxFontRefData SetXXX() // ---------------------------------------------------------------------------- -void wxFontRefData::SetPointSize(int pointSize) +void wxFontRefData::SetFractionalPointSize(float pointSize) { // NB: Pango doesn't support point sizes less than 1 m_pointSize = pointSize == wxDEFAULT || pointSize < 1 ? wxDEFAULT_FONT_SIZE : pointSize; #if wxUSE_UNICODE - m_nativeFontInfo.SetPointSize(m_pointSize); + m_nativeFontInfo.SetFractionalPointSize(m_pointSize); #endif } @@ -692,11 +692,11 @@ void wxFont::Unshare() // accessors // ---------------------------------------------------------------------------- -int wxFont::GetPointSize() const +float wxFont::GetFractionalPointSize() const { wxCHECK_MSG( IsOk(), 0, wxT("invalid font") ); - return M_FONTDATA->m_nativeFontInfo.GetPointSize(); + return M_FONTDATA->m_nativeFontInfo.GetFractionalPointSize(); } wxString wxFont::GetFaceName() const @@ -799,11 +799,11 @@ bool wxFont::IsFixedWidth() const // change font attributes // ---------------------------------------------------------------------------- -void wxFont::SetPointSize(int pointSize) +void wxFont::SetFractionalPointSize(float pointSize) { Unshare(); - M_FONTDATA->SetPointSize(pointSize); + M_FONTDATA->SetFractionalPointSize(pointSize); } void wxFont::SetFamily(wxFontFamily family)