summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorYogeshBharate <yogesh.bharate@synerzip.com>2014-01-02 15:03:02 +0530
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-01-13 17:08:01 +0100
commitdbd42432c7b8f8149080bb13b103b35f2532eee8 (patch)
tree1e3ddcc768c184ce40392417b1c34c0b9a7c75ac /writerfilter
parent1b00be2ed1f911aec07ab2ef9432168cfa333c6d (diff)
fdo#69613: Code changes for TOC with flag '\x' should get preserved after RT.
Issue : TOC field flag '\x' was not getting preserved after RT. Implementation : Provided import & export support for TOC field flag '\x'. XML file difference : In document.xml, Before: ‒<w:r w:rsidR="00A9725D"> ‒<w:instrText xml:space="preserve"> TOC \o "1-3" </w:instrText> </w:r> ‒<w:r w:rsidR="008A34F6"> ‒<w:instrText> \h </w:instrText> </w:r> ‒<w:r w:rsidR="00A9725D"> ‒<w:instrText xml:space="preserve"> \x </w:instrText> After: ‒<w:instrText> TOC \x \o "1-3" \h </w:instrText> Conflicts: sw/inc/tox.hxx sw/inc/unoprnms.hxx sw/source/core/unocore/unoidx.cxx sw/source/core/unocore/unomap.cxx sw/source/filter/ww8/ww8atr.cxx sw/source/ui/index/cntex.cxx writerfilter/source/dmapper/DomainMapper_Impl.cxx writerfilter/source/dmapper/PropertyIds.cxx writerfilter/source/dmapper/PropertyIds.hxx Reviewed on: https://gerrit.libreoffice.org/7257 Change-Id: I8f196446a3beb8deea6b7ddde50e16c9cea73cd9
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx10
-rw-r--r--writerfilter/source/dmapper/PropertyIds.cxx1
-rw-r--r--writerfilter/source/dmapper/PropertyIds.hxx1
3 files changed, 8 insertions, 4 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index d42137cc7e9c..57255088763c 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -2697,6 +2697,7 @@ void DomainMapper_Impl::handleToc
bool bFromEntries = false;
bool bHideTabLeaderPageNumbers = false ;
bool bIsTabEntry = false ;
+ bool bNewLine = false ;
sal_Int16 nMaxLevel = 10;
OUString sTemplate;
@@ -2789,10 +2790,10 @@ void DomainMapper_Impl::handleToc
bIsTabEntry = true ;
}
// \x Preserve newline characters within table entries
-// if( lcl_FindInCommand( pContext->GetCommand(), 'x', sValue ))
-// {
- //todo: unsupported
-// }
+ if( lcl_FindInCommand( pContext->GetCommand(), 'x', sValue ))
+ {
+ bNewLine = true ;
+ }
// \z Hides page numbers within the table of contens when shown in Web Layout View
if( lcl_FindInCommand( pContext->GetCommand(), 'z', sValue ))
{
@@ -2822,6 +2823,7 @@ void DomainMapper_Impl::handleToc
xTOC->setPropertyValue( rPropNameSupplier.GetName( PROP_CREATE_FROM_MARKS ), uno::makeAny( bFromEntries ));
xTOC->setPropertyValue( rPropNameSupplier.GetName( PROP_HIDE_TAB_LEADER_AND_PAGE_NUMBERS ), uno::makeAny( bHideTabLeaderPageNumbers ));
xTOC->setPropertyValue( rPropNameSupplier.GetName( PROP_TAB_IN_TOC ), uno::makeAny( bIsTabEntry ));
+ xTOC->setPropertyValue( rPropNameSupplier.GetName( PROP_TOC_NEW_LINE ), uno::makeAny( bNewLine ));
if( !sTemplate.isEmpty() )
{
//the string contains comma separated the names and related levels
diff --git a/writerfilter/source/dmapper/PropertyIds.cxx b/writerfilter/source/dmapper/PropertyIds.cxx
index a6bda94dcf15..776e263e0510 100644
--- a/writerfilter/source/dmapper/PropertyIds.cxx
+++ b/writerfilter/source/dmapper/PropertyIds.cxx
@@ -363,6 +363,7 @@ OUString PropertyNameSupplier::GetName( PropertyIds eId ) const
case PROP_HIDE_TAB_LEADER_AND_PAGE_NUMBERS : sName = "HideTabLeaderAndPageNumber" ; break ;
case PROP_TAB_IN_TOC : sName = "TabInTOC"; break ;
case PROP_TOC_BOOKMARK: sName = "TOCBookmark"; break;
+ case PROP_TOC_NEW_LINE: sName = "TOCNewLine"; break;
}
::std::pair<PropertyNameMap_t::iterator,bool> aInsertIt =
m_pImpl->aNameMap.insert( PropertyNameMap_t::value_type( eId, sName ));
diff --git a/writerfilter/source/dmapper/PropertyIds.hxx b/writerfilter/source/dmapper/PropertyIds.hxx
index c6cf976ae249..33690bcaa612 100644
--- a/writerfilter/source/dmapper/PropertyIds.hxx
+++ b/writerfilter/source/dmapper/PropertyIds.hxx
@@ -334,6 +334,7 @@ enum PropertyIds
,PROP_HIDE_TAB_LEADER_AND_PAGE_NUMBERS
,PROP_TAB_IN_TOC
,PROP_TOC_BOOKMARK
+ ,PROP_TOC_NEW_LINE
};
struct PropertyNameSupplier_Impl;
class PropertyNameSupplier