update gtk1 font routines to support nwe code in wxWidgets

This commit is contained in:
Jouk
2018-09-05 10:42:35 +02:00
parent ccff3e43fc
commit 8d1063389a
2 changed files with 28 additions and 6 deletions

View File

@@ -90,19 +90,21 @@ public:
virtual ~wxFont(); virtual ~wxFont();
// implement base class pure virtuals // implement base class pure virtuals
virtual int GetPointSize() const; virtual float GetFractionalPointSize() const;
virtual wxFontStyle GetStyle() const; virtual wxFontStyle GetStyle() const;
virtual wxFontWeight GetWeight() const; virtual wxFontWeight GetWeight() const;
virtual int GetNumericWeight() const;
virtual wxString GetFaceName() const; virtual wxString GetFaceName() const;
virtual bool GetUnderlined() const; virtual bool GetUnderlined() const;
virtual wxFontEncoding GetEncoding() const; virtual wxFontEncoding GetEncoding() const;
virtual const wxNativeFontInfo *GetNativeFontInfo() const; virtual const wxNativeFontInfo *GetNativeFontInfo() const;
virtual bool IsFixedWidth() const; virtual bool IsFixedWidth() const;
virtual void SetPointSize( int pointSize ); virtual void SetPointSize( float pointSize );
virtual void SetFamily(wxFontFamily family); virtual void SetFamily(wxFontFamily family);
virtual void SetStyle(wxFontStyle style); virtual void SetStyle(wxFontStyle style);
virtual void SetWeight(wxFontWeight weight); virtual void SetWeight(wxFontWeight weight);
virtual void SetNumericWeight(int weight);
virtual bool SetFaceName( const wxString& faceName ); virtual bool SetFaceName( const wxString& faceName );
virtual void SetUnderlined( bool underlined ); virtual void SetUnderlined( bool underlined );
virtual void SetEncoding(wxFontEncoding encoding); virtual void SetEncoding(wxFontEncoding encoding);

View File

@@ -87,6 +87,7 @@ public:
void SetFamily(wxFontFamily family); void SetFamily(wxFontFamily family);
void SetStyle(wxFontStyle style); void SetStyle(wxFontStyle style);
void SetWeight(wxFontWeight weight); void SetWeight(wxFontWeight weight);
void SetNumericWeight(int weight);
void SetUnderlined(bool underlined); void SetUnderlined(bool underlined);
bool SetFaceName(const wxString& facename); bool SetFaceName(const wxString& facename);
void SetEncoding(wxFontEncoding encoding); void SetEncoding(wxFontEncoding encoding);
@@ -401,6 +402,11 @@ void wxFontRefData::SetWeight(wxFontWeight weight)
} }
} }
void wxFontRefData::SetNumericWeight(int weight)
{
m_nativeFontInfo.SetNumericWeight(weight);
}
void wxFontRefData::SetUnderlined(bool underlined) void wxFontRefData::SetUnderlined(bool underlined)
{ {
m_underlined = underlined; m_underlined = underlined;
@@ -518,11 +524,11 @@ wxGDIRefData *wxFont::CloneGDIRefData(const wxGDIRefData *data) const
// accessors // accessors
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
int wxFont::GetPointSize() const float wxFont::GetFractionalPointSize() const
{ {
wxCHECK_MSG( IsOk(), 0, wxT("invalid font") ); wxCHECK_MSG( IsOk(), 0, wxT("invalid font") );
return M_FONTDATA->m_pointSize; return M_FONTDATA->m_nativeFontInfo.GetFractionalPointSize();
} }
wxString wxFont::GetFaceName() const wxString wxFont::GetFaceName() const
@@ -551,6 +557,13 @@ wxFontWeight wxFont::GetWeight() const
return M_FONTDATA->m_weight; return M_FONTDATA->m_weight;
} }
int wxFont::GetNumericWeight() const
{
wxCHECK_MSG( IsOk(), wxFONTWEIGHT_MAX, "invalid font" );
return M_FONTDATA->m_nativeFontInfo.GetNumericWeight();
}
bool wxFont::GetUnderlined() const bool wxFont::GetUnderlined() const
{ {
wxCHECK_MSG( IsOk(), false, wxT("invalid font") ); wxCHECK_MSG( IsOk(), false, wxT("invalid font") );
@@ -601,11 +614,11 @@ bool wxFont::IsFixedWidth() const
// change font attributes // change font attributes
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
void wxFont::SetPointSize(int pointSize) void wxFont::SetPointSize(float pointSize)
{ {
Unshare(); Unshare();
M_FONTDATA->SetPointSize(pointSize); M_FONTDATA->SetPointSize( nintf(pointSize));
} }
void wxFont::SetFamily(wxFontFamily family) void wxFont::SetFamily(wxFontFamily family)
@@ -629,6 +642,13 @@ void wxFont::SetWeight(wxFontWeight weight)
M_FONTDATA->SetWeight(weight); M_FONTDATA->SetWeight(weight);
} }
void wxFont::SetNumericWeight(int weight)
{
AllocExclusive();
M_FONTDATA->SetNumericWeight(weight);
}
bool wxFont::SetFaceName(const wxString& faceName) bool wxFont::SetFaceName(const wxString& faceName)
{ {
Unshare(); Unshare();