writerfilter/source/rtftok/rtfdocumentimpl.cxx | 46 +++++++++---------------- writerfilter/source/rtftok/rtfdocumentimpl.hxx | 2 + 2 files changed, 20 insertions(+), 28 deletions(-)
New commits: commit 78e02045791fb179a031ef7a5bbacb8a71669cba Author: Miklos Vajna <vmik...@suse.cz> Date: Thu May 10 10:07:10 2012 +0200 RTFDocumentImpl::runProps: avoid copy&paste Change-Id: I3b1f03c0a3236461e753ef236881313ea7daa0d0 diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 1fd3d4d..a1f27be 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -439,6 +439,22 @@ void RTFDocumentImpl::checkNeedPap() } } +void RTFDocumentImpl::runProps() +{ + if (!m_pCurrentBuffer) + { + writerfilter::Reference<Properties>::Pointer_t const pProperties( + new RTFReferenceProperties(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms) + ); + Mapper().props(pProperties); + } + else + { + RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms)); + m_pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue)); + } +} + void RTFDocumentImpl::runBreak() { sal_uInt8 sBreak[] = { 0xd }; @@ -979,20 +995,7 @@ void RTFDocumentImpl::text(OUString& rString) if (m_aStates.top().nDestinationState == DESTINATION_NORMAL || m_aStates.top().nDestinationState == DESTINATION_FIELDRESULT || m_aStates.top().nDestinationState == DESTINATION_SHAPETEXT) - { - if (!m_pCurrentBuffer) - { - writerfilter::Reference<Properties>::Pointer_t const pProperties( - new RTFReferenceProperties(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms) - ); - Mapper().props(pProperties); - } - else - { - RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms)); - m_pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue)); - } - } + runProps(); if (!m_pCurrentBuffer) Mapper().utext(reinterpret_cast<sal_uInt8 const*>(rString.getStr()), rString.getLength()); else @@ -1419,20 +1422,7 @@ int RTFDocumentImpl::dispatchSymbol(RTFKeyword nKeyword) bool bNeedPap = m_bNeedPap; checkNeedPap(); if (bNeedPap) - { - if (!m_pCurrentBuffer) - { - writerfilter::Reference<Properties>::Pointer_t const pProperties( - new RTFReferenceProperties(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms) - ); - Mapper().props(pProperties); - } - else - { - RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms)); - m_pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue)); - } - } + runProps(); if (!m_pCurrentBuffer) parBreak(); else if (m_aStates.top().nDestinationState != DESTINATION_SHAPETEXT) diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx index 2e23b0d..0f1a4ca 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx @@ -405,6 +405,8 @@ namespace writerfilter { void text(rtl::OUString& rString); // Sends a single character to dmapper, taking care of buffering. void singleChar(sal_uInt8 nValue); + // Sends run properties to dmapper, taking care of buffering. + void runProps(); void parBreak(); void tableBreak(); void checkNeedPap(); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits