summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmloff/source/text/txtparae.cxx32
1 files changed, 21 insertions, 11 deletions
diff --git a/xmloff/source/text/txtparae.cxx b/xmloff/source/text/txtparae.cxx
index 6db50ffed16f..376112129f2f 100644
--- a/xmloff/source/text/txtparae.cxx
+++ b/xmloff/source/text/txtparae.cxx
@@ -906,8 +906,8 @@ void XMLTextParagraphExport::exportListChange(
// Thus, for other document types <sListId> is empty.
const ::rtl::OUString sListId( rNextInfo.GetListId() );
bool bExportListStyle( true );
- bool bRestartNumberingAtContinuedRootList( false );
- sal_Int16 nRestartValueForContinuedRootList( -1 );
+ bool bRestartNumberingAtContinuedList( false );
+ sal_Int32 nRestartValueForContinuedList( -1 );
bool bContinueingPreviousSubList = !bRootListToBeStarted &&
rNextInfo.IsContinueingPreviousSubTree();
do {
@@ -980,9 +980,9 @@ void XMLTextParagraphExport::exportListChange(
( nListLevelsToBeOpened != 1 ||
!rNextInfo.HasStartValue() ) )
{
- bRestartNumberingAtContinuedRootList = true;
- nRestartValueForContinuedRootList =
- rNextInfo.GetListLevelStartValue();
+ bRestartNumberingAtContinuedList = true;
+ nRestartValueForContinuedList =
+ rNextInfo.GetListLevelStartValue();
}
}
@@ -1003,6 +1003,18 @@ void XMLTextParagraphExport::exportListChange(
GetExport().AddAttribute( XML_NAMESPACE_TEXT, XML_STYLE_NAME,
GetExport().EncodeStyleName( sListStyleName ) );
bExportListStyle = false;
+
+
+ }
+ else
+ {
+ // rhbz#746174: also export list restart for non root list
+ if (rNextInfo.IsRestart() && !rNextInfo.HasStartValue())
+ {
+ bRestartNumberingAtContinuedList = true;
+ nRestartValueForContinuedList =
+ rNextInfo.GetListLevelStartValue();
+ }
}
if ( bContinueingPreviousSubList )
@@ -1030,9 +1042,7 @@ void XMLTextParagraphExport::exportListChange(
// <text:list-header> or <text:list-item>
GetExport().CheckAttrList();
- /* Export start value in case of <bRestartNumberingAtContinuedRootList>
- at correct list item (#i97309#)
- */
+ /* Export start value at correct list item (#i97309#) */
if ( nListLevelsToBeOpened == 1 )
{
if ( rNextInfo.HasStartValue() )
@@ -1042,14 +1052,14 @@ void XMLTextParagraphExport::exportListChange(
GetExport().AddAttribute( XML_NAMESPACE_TEXT, XML_START_VALUE,
aBuffer.makeStringAndClear() );
}
- else if ( bRestartNumberingAtContinuedRootList )
+ else if (bRestartNumberingAtContinuedList)
{
OUStringBuffer aBuffer;
- aBuffer.append( (sal_Int32)nRestartValueForContinuedRootList );
+ aBuffer.append( nRestartValueForContinuedList );
GetExport().AddAttribute( XML_NAMESPACE_TEXT,
XML_START_VALUE,
aBuffer.makeStringAndClear() );
- bRestartNumberingAtContinuedRootList = false;
+ bRestartNumberingAtContinuedList = false;
}
}