diff options
author | Michael Stahl <mstahl@redhat.com> | 2014-02-28 20:14:12 +0100 |
---|---|---|
committer | Luboš Luňák <l.lunak@centrum.cz> | 2014-05-28 12:01:10 +0200 |
commit | 65ef769a60df0aad2dea9811713faa323757f0b2 (patch) | |
tree | 92e114cbcad71c859d55165ac0fbac97a1d9e208 | |
parent | 40506e46ca01f812209331d60af859666bb1f931 (diff) |
RTF import: fix paragraphs in header/footercp-4.1-8
(cherry picked from commit 74b3f4f00766d199df3b017d056cf7a00ae52988)
Signed-off-by: Luboš Luňák <l.lunak@centrum.cz>
Conflicts:
sw/qa/extras/rtfimport/rtfimport.cxx
Change-Id: I91f04cad7a39428ce6f9555d18b974f0d45181f7
-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); } |