fdo#74153 : Preservation of Column Break with column_count = 0

Issue :
	1] DOCX containing column break with column_count = 0
	   was not getting preserved after RT.
	2] LO was writing column break only when column_count > 1

	Implementation :
	1] Removed check column_count > 1. So that if LO
	   encounters a column break with column_count >=0,
	   it should preserve it.
	2] Added export Unit Test case.

	Behavior after Fix :
	LO is able to preserve Column Break with
	column_count = 0.

Conflicts:
	sw/qa/extras/ooxmlexport/ooxmlexport.cxx
Reviewed on:
	https://gerrit.libreoffice.org/7815

Change-Id: I29c77f27184ec5afed354be01fc68e0d3471bfee
This commit is contained in:
Pallavi Jadhav
2014-02-03 18:55:13 +05:30
committed by Miklos Vajna
parent 1b2da3df54
commit 78c5cbc720
3 changed files with 12 additions and 4 deletions

Binary file not shown.

View File

@@ -3027,6 +3027,17 @@ DECLARE_OOXMLEXPORT_TEST(testFdo74110,"fdo74110.docx")
assertXPath(pXmlDoc, "/w:document/w:body/w:p[1]/w:r[1]/mc:AlternateContent/mc:Choice/w:drawing[1]/wp:inline[1]/a:graphic[1]/a:graphicData[1]/wps:wsp[1]/wps:spPr[1]/a:prstGeom[1]/a:avLst[1]/a:gd[1]",0); assertXPath(pXmlDoc, "/w:document/w:body/w:p[1]/w:r[1]/mc:AlternateContent/mc:Choice/w:drawing[1]/wp:inline[1]/a:graphic[1]/a:graphicData[1]/wps:wsp[1]/wps:spPr[1]/a:prstGeom[1]/a:avLst[1]/a:gd[1]",0);
} }
DECLARE_OOXMLEXPORT_TEST(testColumnBreak_ColumnCountIsZero,"fdo74153.docx")
{
/* fdo73545: Column Break with Column_count = 0 was not getting preserved.
* The <w:br w:type="column" /> was missing after roundtrip
*/
xmlDocPtr pXmlDoc = parseExport("word/document.xml");
if (!pXmlDoc)
return;
assertXPath(pXmlDoc, "/w:document/w:body/w:p[3]/w:r[1]/w:br","type","column");
}
#endif #endif
CPPUNIT_PLUGIN_IMPLEMENT(); CPPUNIT_PLUGIN_IMPLEMENT();

View File

@@ -3627,10 +3627,7 @@ void AttributeOutputBase::FormatBreak( const SvxFmtBreakItem& rBreak )
// no break; // no break;
case SVX_BREAK_COLUMN_AFTER: case SVX_BREAK_COLUMN_AFTER:
case SVX_BREAK_COLUMN_BOTH: case SVX_BREAK_COLUMN_BOTH:
if ( GetExport().Sections().CurrentNumberOfColumns( *GetExport().pDoc ) > 1 ) nC = msword::ColumnBreak;
{
nC = msword::ColumnBreak;
}
break; break;
case SVX_BREAK_PAGE_BEFORE: // PageBreak case SVX_BREAK_PAGE_BEFORE: // PageBreak