diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-03-24 15:58:33 +0100 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-03-24 16:01:58 +0100 |
commit | 849c1b64de19ef42cbd8cd392b036b9f914f2522 (patch) | |
tree | 4ab7e20d1840bb3faf3bbf301cd2cbe9ac905d04 /sc | |
parent | 7d1fa5fb8ef2067c406eadbdfb0dbca37d4627bf (diff) |
also import and export to ODF the new databar property
Change-Id: Ib29a0d5c9fefe15fbd0f08a5cf9600eff58cd030
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/filter/xml/xmlcondformat.cxx | 22 | ||||
-rw-r--r-- | sc/source/filter/xml/xmlexprt.cxx | 6 | ||||
-rw-r--r-- | sc/source/filter/xml/xmlimprt.cxx | 2 | ||||
-rw-r--r-- | sc/source/filter/xml/xmlimprt.hxx | 4 |
4 files changed, 33 insertions, 1 deletions
diff --git a/sc/source/filter/xml/xmlcondformat.cxx b/sc/source/filter/xml/xmlcondformat.cxx index 911f5c0d5474..4f067cb37d4f 100644 --- a/sc/source/filter/xml/xmlcondformat.cxx +++ b/sc/source/filter/xml/xmlcondformat.cxx @@ -180,6 +180,8 @@ ScXMLDataBarFormatContext::ScXMLDataBarFormatContext( ScXMLImport& rImport, sal_ OUString sAxisPosition; OUString sShowValue; OUString sAxisColor; + OUString sMinLength; + OUString sMaxLength; sal_Int16 nAttrCount(xAttrList.is() ? xAttrList->getLength() : 0); const SvXMLTokenMap& rAttrTokenMap = GetScImport().GetDataBarAttrMap(); @@ -211,6 +213,12 @@ ScXMLDataBarFormatContext::ScXMLDataBarFormatContext( ScXMLImport& rImport, sal_ case XML_TOK_DATABAR_AXISCOLOR: sAxisColor = sValue; break; + case XML_TOK_DATABAR_MINLENGTH: + sMinLength = sValue; + break; + case XML_TOK_DATABAR_MAXLENGTH: + sMaxLength = sValue; + break; default: break; } @@ -265,6 +273,20 @@ ScXMLDataBarFormatContext::ScXMLDataBarFormatContext( ScXMLImport& rImport, sal_ mpFormatData->mbOnlyBar = !bShowValue; } + if (!sMinLength.isEmpty()) + { + double nVal = sMinLength.toDouble(); + mpFormatData->mnMinLength = nVal; + } + + if (!sMaxLength.isEmpty()) + { + double nVal = sMaxLength.toDouble(); + if (nVal == 0.0) + nVal = 100.0; + mpFormatData->mnMaxLength = nVal; + } + pFormat->AddEntry(mpDataBarFormat); } diff --git a/sc/source/filter/xml/xmlexprt.cxx b/sc/source/filter/xml/xmlexprt.cxx index e6d7e3df0f6d..e1087ddcd50f 100644 --- a/sc/source/filter/xml/xmlexprt.cxx +++ b/sc/source/filter/xml/xmlexprt.cxx @@ -4454,6 +4454,12 @@ void ScXMLExport::ExportConditionalFormat(SCTAB nTab) if(pFormatData->mbOnlyBar) AddAttribute(XML_NAMESPACE_CALC_EXT, XML_SHOW_VALUE, XML_FALSE); + if (pFormatData->mnMinLength != 0.0) + AddAttribute(XML_NAMESPACE_CALC_EXT, XML_MIN_LENGTH, OUString::number(pFormatData->mnMinLength)); + + if (pFormatData->mnMaxLength != 0.0) + AddAttribute(XML_NAMESPACE_CALC_EXT, XML_MAX_LENGTH, OUString::number(pFormatData->mnMaxLength)); + if(pFormatData->mbNeg) { if(pFormatData->mpNegativeColor) diff --git a/sc/source/filter/xml/xmlimprt.cxx b/sc/source/filter/xml/xmlimprt.cxx index 8930c363376f..25dd3dba6704 100644 --- a/sc/source/filter/xml/xmlimprt.cxx +++ b/sc/source/filter/xml/xmlimprt.cxx @@ -720,6 +720,8 @@ const SvXMLTokenMap& ScXMLImport::GetDataBarAttrMap() { XML_NAMESPACE_CALC_EXT, XML_AXIS_POSITION, XML_TOK_DATABAR_AXISPOSITION }, { XML_NAMESPACE_CALC_EXT, XML_SHOW_VALUE, XML_TOK_DATABAR_SHOWVALUE }, { XML_NAMESPACE_CALC_EXT, XML_AXIS_COLOR, XML_TOK_DATABAR_AXISCOLOR }, + { XML_NAMESPACE_CALC_EXT, XML_MIN_LENGTH, XML_TOK_DATABAR_MINLENGTH }, + { XML_NAMESPACE_CALC_EXT, XML_MAX_LENGTH, XML_TOK_DATABAR_MAXLENGTH }, XML_TOKEN_MAP_END }; diff --git a/sc/source/filter/xml/xmlimprt.hxx b/sc/source/filter/xml/xmlimprt.hxx index 09adfacf0666..479bedf183a9 100644 --- a/sc/source/filter/xml/xmlimprt.hxx +++ b/sc/source/filter/xml/xmlimprt.hxx @@ -211,7 +211,9 @@ enum ScXMLDataBarAttrTokens XML_TOK_DATABAR_GRADIENT, XML_TOK_DATABAR_AXISPOSITION, XML_TOK_DATABAR_SHOWVALUE, - XML_TOK_DATABAR_AXISCOLOR + XML_TOK_DATABAR_AXISCOLOR, + XML_TOK_DATABAR_MINLENGTH, + XML_TOK_DATABAR_MAXLENGTH }; enum ScXMLDataBarEntryAttrTokens |