summaryrefslogtreecommitdiff
path: root/vcl/source/font/Feature.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'vcl/source/font/Feature.cxx')
-rw-r--r--vcl/source/font/Feature.cxx15
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; }