diff options
-rw-r--r-- | sw/qa/extras/rtfimport/data/footer-para.rtf | 5 | ||||
-rw-r--r-- | sw/qa/extras/rtfimport/rtfimport.cxx | 14 | ||||
-rw-r--r-- | writerfilter/source/rtftok/rtfdocumentimpl.cxx | 3 |
3 files changed, 21 insertions, 1 deletions
diff --git a/sw/qa/extras/rtfimport/data/footer-para.rtf b/sw/qa/extras/rtfimport/data/footer-para.rtf new file mode 100644 index 000000000000..28863b202f17 --- /dev/null +++ b/sw/qa/extras/rtfimport/data/footer-para.rtf @@ -0,0 +1,5 @@ +{\rtf1\fbidis\ansi\ansicpg0\uc0\deff0\deflang0\deflangfe0\paperw11905\paperh16838\margl1200\margr1200\margt1200\margb1200\headery600\footery600\viewscale100\viewzk0\titlepg +{\fonttbl{\f0\fnil Arial;}} +{\footerf +\pard\s0\fi0\li0\qc\ri0\sb0\sa0\itap0 \plain \f0\fs18 All Rights Reserved.\par} +\pard\par} diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx index e1a67282eb07..b3bc41f613af 100644 --- a/sw/qa/extras/rtfimport/rtfimport.cxx +++ b/sw/qa/extras/rtfimport/rtfimport.cxx @@ -1608,6 +1608,20 @@ DECLARE_RTFIMPORT_TEST(testDoDhgtOld, "do-dhgt-old.rtf") CPPUNIT_ASSERT_EQUAL(OUString("b"), xShape->getString()); } +DECLARE_RTFIMPORT_TEST(testFooterPara, "footer-para.rtf") +{ + // check that paragraph properties in footer are imported + uno::Reference<text::XText> xFooterText = + getProperty< uno::Reference<text::XText> >( + getStyles("PageStyles")->getByName("First Page"), "FooterText"); + uno::Reference<text::XTextContent> xParagraph = + getParagraphOrTable(1, xFooterText); + CPPUNIT_ASSERT_EQUAL(OUString("All Rights Reserved."), + uno::Reference<text::XTextRange>(xParagraph, uno::UNO_QUERY)->getString()); + CPPUNIT_ASSERT_EQUAL((sal_Int16)style::ParagraphAdjust_CENTER, + getProperty</*style::ParagraphAdjust*/sal_Int16>(xParagraph, "ParaAdjust")); +} + #endif CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 3f6ebc73c5fd..8011bc791dfa 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -401,8 +401,9 @@ void RTFDocumentImpl::setNeedSect(bool bNeedSect) if (!m_pSuperstream) // no sections in header/footer! { Mapper().startSectionGroup(); - m_bNeedSect = bNeedSect; } + // set flag in substream too - otherwise multiple startParagraphGroup + m_bNeedSect = bNeedSect; Mapper().startParagraphGroup(); setNeedPar(true); } |