writerfilter/source/resourcemodel/TagLogger.cxx | 13 ++++++------- writerfilter/source/rtftok/rtfdocumentimpl.cxx | 18 ++++++++++++++++-- 2 files changed, 22 insertions(+), 9 deletions(-)
New commits: commit 98f32b2b8ebefe50dfa99b5c72ceb2639bf63787 Author: Cédric Bosdonnat <cedric.bosdonnat....@free.fr> Date: Tue Nov 22 15:14:33 2011 +0100 RTF import: better implement \trrh to import fixed height rows diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index b6f33c3..2a46fb0 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -2288,8 +2288,23 @@ int RTFDocumentImpl::dispatchValue(RTFKeyword nKeyword, int nParam) break; case RTF_TRRH: { + rtl::OUString hRule = rtl::OUString::createFromAscii("auto"); + if ( nParam < 0 ) + { + RTFValue::Pointer_t pAbsValue(new RTFValue(-nParam)); + pIntValue.swap( pAbsValue ); + + hRule = rtl::OUString::createFromAscii("exact"); + } + else if ( nParam > 0 ) + hRule = rtl::OUString::createFromAscii("atLeast"); + lcl_putNestedAttribute(m_aStates.top().aTableRowSprms, NS_ooxml::LN_CT_TrPrBase_trHeight, NS_ooxml::LN_CT_Height_val, pIntValue); + + RTFValue::Pointer_t pHRule(new RTFValue(hRule)); + lcl_putNestedAttribute(m_aStates.top().aTableRowSprms, + NS_ooxml::LN_CT_TrPrBase_trHeight, NS_ooxml::LN_CT_Height_hRule, pHRule); } break; case RTF_COLS: commit b03fbe13f31bde4a9844985afa7abecbf1834848 Author: Cédric Bosdonnat <cedric.bosdonnat....@free.fr> Date: Tue Nov 22 15:09:27 2011 +0100 writerfilter: Fixed crasher when importing docx files with dbglevel>1 diff --git a/writerfilter/source/resourcemodel/TagLogger.cxx b/writerfilter/source/resourcemodel/TagLogger.cxx index 9cfaba1..7b63ce0 100644 --- a/writerfilter/source/resourcemodel/TagLogger.cxx +++ b/writerfilter/source/resourcemodel/TagLogger.cxx @@ -235,10 +235,10 @@ namespace writerfilter class PropertySetDumpHandler : public Properties { IdToString::Pointer_t mpIdToString; - TagLogger::Pointer_t m_pLogger; + TagLogger* m_pLogger; public: - PropertySetDumpHandler(TagLogger::Pointer_t pLogger, + PropertySetDumpHandler(TagLogger* pLogger, IdToString::Pointer_t pIdToString); virtual ~PropertySetDumpHandler(); @@ -248,11 +248,11 @@ namespace writerfilter virtual void sprm(Sprm & sprm); }; - PropertySetDumpHandler::PropertySetDumpHandler(TagLogger::Pointer_t pLogger, + PropertySetDumpHandler::PropertySetDumpHandler(TagLogger* pLogger, IdToString::Pointer_t pIdToString) : - mpIdToString(pIdToString) + mpIdToString(pIdToString), + m_pLogger(pLogger) { - m_pLogger = pLogger; } PropertySetDumpHandler::~PropertySetDumpHandler() @@ -302,8 +302,7 @@ namespace writerfilter { startElement( "propertySet" ); - TagLogger::Pointer_t pLogger( this ); - PropertySetDumpHandler handler( pLogger, pIdToString ); + PropertySetDumpHandler handler( this, pIdToString ); handler.resolve( props ); endElement( ); commit 07b5fe3b8c858c1d6f8c21e89ac940663cd97f62 Author: Cédric Bosdonnat <cedric.bosdonnat....@free.fr> Date: Mon Nov 21 18:27:51 2011 +0100 n#417818: empty paragraphs in tables weren't considered in the table. The paragraph properties weren't propagated to the empty paragraphs in the tables. Called checkNeedPap() to do that job when finding \par. diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 3b79937..b6f33c3 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -1302,8 +1302,7 @@ int RTFDocumentImpl::dispatchSymbol(RTFKeyword nKeyword) break; case RTF_PAR: { - if (m_bNeedPap) - checkChangedFrame(); + checkNeedPap(); if (!m_pCurrentBuffer) parBreak(); else if (m_aStates.top().nDestinationState != DESTINATION_SHAPETEXT)
_______________________________________________ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits