diff options
author | László Németh <nemeth@numbertext.org> | 2020-01-27 12:14:52 +0100 |
---|---|---|
committer | László Németh <nemeth@numbertext.org> | 2020-01-27 17:06:53 +0100 |
commit | 8ffc1299ebf83450e67cf2a89304859e2558cd27 (patch) | |
tree | 6c5b1ec12afb43729d38c7bad99a9e945a049a3b /writerfilter/source/dmapper/TablePropertiesHandler.cxx | |
parent | 2be03a8e8159165d6a2f911d0c94f55b3d9e41d4 (diff) |
tdf#95033 DOCX import: apply tblPrEx table border
exceptions of table rows, fixing for example
missing cell borders.
Change-Id: Id66af2706f564f46a1afd04bad65d1bf086a3232
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87514
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'writerfilter/source/dmapper/TablePropertiesHandler.cxx')
-rw-r--r-- | writerfilter/source/dmapper/TablePropertiesHandler.cxx | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/writerfilter/source/dmapper/TablePropertiesHandler.cxx b/writerfilter/source/dmapper/TablePropertiesHandler.cxx index 91a31800c740..aa9ad66b5903 100644 --- a/writerfilter/source/dmapper/TablePropertiesHandler.cxx +++ b/writerfilter/source/dmapper/TablePropertiesHandler.cxx @@ -213,6 +213,25 @@ namespace dmapper { pManager->SetLayoutType(static_cast<sal_uInt32>(nIntValue)); } break; + case NS_ooxml::LN_CT_TblPrEx_tblBorders: + { + writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps(); + if( pProperties.get()) + { + auto pBorderHandler = std::make_shared<BorderHandler>(true); + pProperties->resolve(*pBorderHandler); + TablePropertyMapPtr pTablePropMap( new TablePropertyMap ); + pTablePropMap->InsertProps(pBorderHandler->getProperties()); + +#ifdef DBG_UTIL + pTablePropMap->dumpXml(); +#endif + // store row-level table border exceptions in row properties temporarily + // and apply them on cells later + insertRowProps( pTablePropMap ); + } + } + break; case NS_ooxml::LN_CT_TcPrBase_tcBorders ://cell borders //contains CT_TcBorders_left, right, top, bottom { |