sc/qa/unit/subsequent_export_test4.cxx | 5 +++++ sc/source/filter/xml/xmlcondformat.cxx | 5 +++++ sc/source/filter/xml/xmlexprt.cxx | 3 +++ 3 files changed, 13 insertions(+)
New commits: commit d923c227fa290ffdca175a5b903b5a745e2f4b3a Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Fri Oct 11 17:04:52 2024 +0200 Commit: Xisco Fauli <xiscofa...@libreoffice.org> CommitDate: Sat Oct 12 11:23:04 2024 +0200 tdf#163337: keep gte attribute when saving to ods Change-Id: I9565f6dd9b23645b47f232d837553fb4d492dc8f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174815 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/sc/qa/unit/subsequent_export_test4.cxx b/sc/qa/unit/subsequent_export_test4.cxx index 63dba36762f7..260c33a4dfbe 100644 --- a/sc/qa/unit/subsequent_export_test4.cxx +++ b/sc/qa/unit/subsequent_export_test4.cxx @@ -176,6 +176,11 @@ CPPUNIT_TEST_FIXTURE(ScExportTest4, testTdf162948) verify(); saveAndReload(u"Calc Office Open XML"_ustr); verify(); + + // FIXME: Error: tag name "calcext:icon-set" is not allowed. Possible tag names are: <color-scale>,<condition>,<data-bar> + skipValidation(); + saveAndReload(u"calc8"_ustr); // tdf#163337 + verify(); } CPPUNIT_TEST_FIXTURE(ScExportTest4, testCommentTextHAlignment) diff --git a/sc/source/filter/xml/xmlcondformat.cxx b/sc/source/filter/xml/xmlcondformat.cxx index 85f457428702..098a2a1f4d01 100644 --- a/sc/source/filter/xml/xmlcondformat.cxx +++ b/sc/source/filter/xml/xmlcondformat.cxx @@ -908,6 +908,7 @@ ScXMLFormattingEntryContext::ScXMLFormattingEntryContext( ScXMLImport& rImport, { OUString sVal; OUString sType; + bool bGreaterThanOrEqual = true; if ( rAttrList.is() ) { @@ -921,6 +922,9 @@ ScXMLFormattingEntryContext::ScXMLFormattingEntryContext( ScXMLImport& rImport, case XML_ELEMENT( CALC_EXT, XML_VALUE ): sVal = aIter.toString(); break; + case XML_ELEMENT( CALC_EXT, XML_GREATER_EQUAL ): + bGreaterThanOrEqual = aIter.toBoolean(); + break; default: break; } @@ -933,6 +937,7 @@ ScXMLFormattingEntryContext::ScXMLFormattingEntryContext( ScXMLImport& rImport, pColorScaleEntry = new ScColorScaleEntry(nVal, Color()); setColorEntryType(sType, pColorScaleEntry, sVal, GetScImport()); + pColorScaleEntry->SetGreaterThanOrEqual(bGreaterThanOrEqual); } namespace { diff --git a/sc/source/filter/xml/xmlexprt.cxx b/sc/source/filter/xml/xmlexprt.cxx index 35715c62ba74..b37565d34dbf 100644 --- a/sc/source/filter/xml/xmlexprt.cxx +++ b/sc/source/filter/xml/xmlexprt.cxx @@ -4943,6 +4943,9 @@ void ScXMLExport::ExportConditionalFormat(SCTAB nTab) else AddAttribute(XML_NAMESPACE_CALC_EXT, XML_VALUE, OUString::number(it->GetValue())); + if (!it->GetGreaterThanOrEqual()) + AddAttribute(XML_NAMESPACE_CALC_EXT, XML_GREATER_EQUAL, OUString::boolean(false)); + AddAttribute(XML_NAMESPACE_CALC_EXT, XML_TYPE, getCondFormatEntryType(*it)); SvXMLElementExport aElementColorScaleEntry(*this, XML_NAMESPACE_CALC_EXT, XML_FORMATTING_ENTRY, true, true); }