diff options
Diffstat (limited to 'vcl/source/font/Feature.cxx')
-rw-r--r-- | vcl/source/font/Feature.cxx | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/vcl/source/font/Feature.cxx b/vcl/source/font/Feature.cxx index 1b7545b560b9..a23a85fae952 100644 --- a/vcl/source/font/Feature.cxx +++ b/vcl/source/font/Feature.cxx @@ -76,9 +76,11 @@ FeatureDefinition::FeatureDefinition(sal_uInt32 nCode, OUString const& rDescript { } -FeatureDefinition::FeatureDefinition(sal_uInt32 nCode, const char* pDescriptionID) +FeatureDefinition::FeatureDefinition(sal_uInt32 nCode, const char* pDescriptionID, + OUString const& rNumericPart) : m_nCode(nCode) , m_pDescriptionID(pDescriptionID) + , m_sNumericPart(rNumericPart) , m_eType(FeatureParameterType::BOOL) { } @@ -100,11 +102,20 @@ const std::vector<FeatureParameter>& FeatureDefinition::getEnumParameters() cons OUString FeatureDefinition::getDescription() const { if (m_pDescriptionID) - return VclResId(m_pDescriptionID); + { + OUString sTranslatedDescription = VclResId(m_pDescriptionID); + if (!m_sNumericPart.isEmpty()) + return sTranslatedDescription.replaceFirst("%1", m_sNumericPart); + return sTranslatedDescription; + } else if (!m_sDescription.isEmpty()) + { return m_sDescription; + } else + { return vcl::font::featureCodeAsString(m_nCode); + } } sal_uInt32 FeatureDefinition::getCode() const { return m_nCode; } |