summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2016-03-30 09:05:04 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2016-03-30 09:05:22 +0200
commit43a17602fb894c10931581b20deec4a47889f310 (patch)
tree8e58180c048ab7337fb396dd9e5dd7fb671d32ba /writerfilter
parent1250ad9561e8f7d3227bb97b9e1f7b2968b5c900 (diff)
Related: tdf#65642 RTF filter: import \pgnlcltr
This as a side effect also implements support for DOCX <w:pgNumType w:fmt="lowerLetter" .../>. Change-Id: I47b60a0390ef081dc15b26e40393e35bf7bad130
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx4
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx7
2 files changed, 10 insertions, 1 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index 137f5b851acc..9863c594c9b7 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -993,6 +993,10 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
// A, B, ...
pSectionContext->SetPageNumberType(style::NumberingType::CHARS_UPPER_LETTER_N);
break;
+ case NS_ooxml::LN_Value_ST_NumberFormat_lowerLetter:
+ // a, b, ...
+ pSectionContext->SetPageNumberType(style::NumberingType::CHARS_LOWER_LETTER_N);
+ break;
}
}
break;
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 46fbdf400c3a..d0631c59c310 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -3280,7 +3280,6 @@ RTFError RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
case RTF_PGNDEC:
case RTF_PGNUCRM:
case RTF_PGNLCRM:
- case RTF_PGNLCLTR:
case RTF_PGNBIDIA:
case RTF_PGNBIDIB:
// These should be mapped to NS_ooxml::LN_EG_SectPrContents_pgNumType, but dmapper has no API for that at the moment.
@@ -3604,6 +3603,12 @@ RTFError RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
lcl_putNestedAttribute(m_aStates.top().aSectionSprms, NS_ooxml::LN_EG_SectPrContents_pgNumType, NS_ooxml::LN_CT_PageNumber_fmt, pIntValue);
}
break;
+ case RTF_PGNLCLTR:
+ {
+ auto pIntValue = std::make_shared<RTFValue>(NS_ooxml::LN_Value_ST_NumberFormat_lowerLetter);
+ lcl_putNestedAttribute(m_aStates.top().aSectionSprms, NS_ooxml::LN_EG_SectPrContents_pgNumType, NS_ooxml::LN_CT_PageNumber_fmt, pIntValue);
+ }
+ break;
default:
{
SAL_INFO("writerfilter", "TODO handle flag '" << lcl_RtfToString(nKeyword) << "'");