diff options
author | Michael Stahl <Michael.Stahl@cib.de> | 2018-08-08 16:09:38 +0200 |
---|---|---|
committer | Michael Stahl <Michael.Stahl@cib.de> | 2018-09-19 10:18:21 +0200 |
commit | b7e4feb9d985750f04b53e630fa68ab471743a14 (patch) | |
tree | f5dee8b14c39491d06ce1aaa055e44c7d410c4b1 /sw/source/filter/xml/wrtxml.cxx | |
parent | 4532845e22c10f252840887e55002307227b2390 (diff) |
sw_redlinehide_2: store flag in settings.xml too
... and restore the model show mode after export.
Change-Id: Ifa02f261a7c0b4f08ccf5ca744ab544741d7e225
Diffstat (limited to 'sw/source/filter/xml/wrtxml.cxx')
-rw-r--r-- | sw/source/filter/xml/wrtxml.cxx | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/sw/source/filter/xml/wrtxml.cxx b/sw/source/filter/xml/wrtxml.cxx index fa9fdbe2b3bc..4f7a8d4dc55c 100644 --- a/sw/source/filter/xml/wrtxml.cxx +++ b/sw/source/filter/xml/wrtxml.cxx @@ -46,6 +46,7 @@ #include <IDocumentRedlineAccess.hxx> #include <IDocumentStatistics.hxx> #include <IDocumentLayoutAccess.hxx> +#include <rootfrm.hxx> #include <docstat.hxx> #include <docsh.hxx> @@ -182,8 +183,16 @@ ErrCode SwXMLWriter::Write_( const uno::Reference < task::XStatusIndicator >& xS // save show redline mode ... const OUString sShowChanges("ShowChanges"); RedlineFlags nRedlineFlags = m_pDoc->getIDocumentRedlineAccess().GetRedlineFlags(); - xInfoSet->setPropertyValue( sShowChanges, - makeAny( IDocumentRedlineAccess::IsShowChanges( nRedlineFlags ) ) ); + bool isShowChanges; + if (getenv("SW_REDLINEHIDE")) + { // TODO: ideally this would be stored per-view... + isShowChanges = !m_pDoc->getIDocumentLayoutAccess().GetCurrentLayout()->IsHideRedlines(); + } + else + { + isShowChanges = IDocumentRedlineAccess::IsShowChanges(nRedlineFlags); + } + xInfoSet->setPropertyValue(sShowChanges, makeAny(isShowChanges)); // ... and hide redlines for export nRedlineFlags &= ~RedlineFlags::ShowMask; nRedlineFlags |= RedlineFlags::ShowInsert; @@ -403,8 +412,15 @@ ErrCode SwXMLWriter::Write_( const uno::Reference < task::XStatusIndicator >& xS nRedlineFlags = m_pDoc->getIDocumentRedlineAccess().GetRedlineFlags(); nRedlineFlags &= ~RedlineFlags::ShowMask; nRedlineFlags |= RedlineFlags::ShowInsert; - if ( *o3tl::doAccess<bool>(aAny) ) + if (getenv("SW_REDLINEHIDE")) + { nRedlineFlags |= RedlineFlags::ShowDelete; + } + else + { + if (*o3tl::doAccess<bool>(aAny)) + nRedlineFlags |= RedlineFlags::ShowDelete; + } m_pDoc->getIDocumentRedlineAccess().SetRedlineFlags( nRedlineFlags ); if (xStatusIndicator.is()) |