summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2016-04-14 08:08:04 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2016-04-14 07:28:02 +0000
commit235dcc11e7e5291188e134f37a03849d741c4f6e (patch)
tree095e0a29ff506b0c17cfc19add829a428eb44f21 /writerfilter
parent84a86d8a085844fafe3c5c7abc63bfa6d18ae715 (diff)
Related: tdf#65642 RTF filter: import \pgnucrm
This as a side effect also implements support for DOCX <w:pgNumType w:fmt="upperRoman" .../>. Change-Id: Ibf3bedca03c6c2a2b96eecb36ff6c4cf6e2281b4 Reviewed-on: https://gerrit.libreoffice.org/24073 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
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 4fd72e034dfa..784b5c8d77d4 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -997,6 +997,10 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
// a, b, ...
pSectionContext->SetPageNumberType(style::NumberingType::CHARS_LOWER_LETTER_N);
break;
+ case NS_ooxml::LN_Value_ST_NumberFormat_upperRoman:
+ // I, II, ...
+ pSectionContext->SetPageNumberType(style::NumberingType::ROMAN_UPPER);
+ break;
}
}
break;
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 6d5b1d3a1d23..7ce53d95fb57 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -3278,7 +3278,6 @@ RTFError RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
}
break;
case RTF_PGNDEC:
- case RTF_PGNUCRM:
case RTF_PGNLCRM:
case RTF_PGNBIDIA:
case RTF_PGNBIDIB:
@@ -3609,6 +3608,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_PGNUCRM:
+ {
+ auto pIntValue = std::make_shared<RTFValue>(NS_ooxml::LN_Value_ST_NumberFormat_upperRoman);
+ 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) << "'");