Extending wxFont API & OSX Core Text Implementation (#877)

* Switch to pure Core Text Implementation, Start extended Font API

* mac fixes

* First msw implementation

* Fixing paste error

* fixing typo

* Rearranging lines to former fallthrough order

* Blind fixes for covering new abstract methods

* Blind gtk implementations

* Fixing according to travis ..

* Removing method defined in base

* formatting adaptions

* Extending the schema definition for new weights

* fixing typo, using wxRound, other fixes according to comments

* changes according to suggestions

* fixing init order, before the init of m_info was overridden by Init()

* redo

* redo

* redo

* Cleanup

Removing obsolete code snippets, proper traces for font names

* Moving common code

Only the Get/SetNumericWeight calls should now be implemented in the native part, the ‚old‘ Get/SetWeight are common code and use the numeric counterparts.

* Updating docs

* commit wa missing changes.txt

* Doc fixes

* Full stops added
This commit is contained in:
Stefan Csomor
2018-09-01 19:42:18 +02:00
committed by GitHub
parent d2c77146db
commit 4580cdb9ad
22 changed files with 1210 additions and 800 deletions

View File

@@ -617,16 +617,30 @@ static const long gs_fp_es_style_values[] = {
};
static const wxChar* const gs_fp_es_weight_labels[] = {
wxT("Normal"),
wxT("Thin"),
wxT("ExtraLight"),
wxT("Light"),
wxT("Normal"),
wxT("Medium"),
wxT("SemiBold"),
wxT("Bold"),
wxT("ExtraBold"),
wxT("Heavy"),
wxT("ExtraHeavy"),
(const wxChar*) NULL
};
static const long gs_fp_es_weight_values[] = {
wxFONTWEIGHT_NORMAL,
wxFONTWEIGHT_THIN,
wxFONTWEIGHT_EXTRALIGHT,
wxFONTWEIGHT_LIGHT,
wxFONTWEIGHT_BOLD
wxFONTWEIGHT_NORMAL,
wxFONTWEIGHT_MEDIUM,
wxFONTWEIGHT_SEMIBOLD,
wxFONTWEIGHT_BOLD,
wxFONTWEIGHT_EXTRABOLD,
wxFONTWEIGHT_HEAVY,
wxFONTWEIGHT_EXTRAHEAVY
};
// Class body is in advprops.h
@@ -788,9 +802,7 @@ wxVariant wxFontProperty::ChildChanged( wxVariant& thisValue,
else if ( ind == 3 )
{
int wt = childValue.GetLong();
if ( wt != wxFONTWEIGHT_NORMAL &&
wt != wxFONTWEIGHT_LIGHT &&
wt != wxFONTWEIGHT_BOLD )
if ( wt < wxFONTWEIGHT_THIN || wt > wxFONTWEIGHT_MAX )
wt = wxFONTWEIGHT_NORMAL;
font.SetWeight( static_cast<wxFontWeight>(wt) );
}