summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2018-12-08 18:19:12 +0100
committerAndras Timar <andras.timar@collabora.com>2019-01-17 13:44:42 +0100
commit38acd67522a3ef704fca8cb77dc0caf177f6115c (patch)
tree01c745971e2248aaee4762ab88272c81272d03b0
parent9985a9b12e14222ecc4e3a8e3531fac69a404dad (diff)
Resolves: tdf#80583 create range list string with proper delimiter
... which is the to be used function parameter separator here. The current document's grammar (from which the separator is obtained in ScRangeList::Format() if not specified) may differ from the forced English grammar later when compiling the formula, and all formula expressions to be inserted use the language independent ';' semicolon function parameter separator. Change-Id: I7a3deb6d50fc57ed434ede1f00bbe8c5c1361e0f Reviewed-on: https://gerrit.libreoffice.org/64819 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins (cherry picked from commit 470a91cb041782e29664212d096bb16873ba57a0) Reviewed-on: https://gerrit.libreoffice.org/64824 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 89d65f96128edf3055aaa5cebdaf78d893d01187)
-rw-r--r--sc/source/ui/StatisticsDialogs/AnalysisOfVarianceDialog.cxx2
-rw-r--r--sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx4
-rw-r--r--sc/source/ui/inc/TableFillingAndNavigationTools.hxx2
3 files changed, 4 insertions, 4 deletions
diff --git a/sc/source/ui/StatisticsDialogs/AnalysisOfVarianceDialog.cxx b/sc/source/ui/StatisticsDialogs/AnalysisOfVarianceDialog.cxx
index 7cb152023474..d01fed9e3c41 100644
--- a/sc/source/ui/StatisticsDialogs/AnalysisOfVarianceDialog.cxx
+++ b/sc/source/ui/StatisticsDialogs/AnalysisOfVarianceDialog.cxx
@@ -333,7 +333,7 @@ void ScAnalysisOfVarianceDialog::AnovaSingleFactor(AddressWalkerWriter& output,
// Sum of Squares
aTemplate.setTemplate("=DEVSQ(%RANGE_LIST%)");
- aTemplate.applyRangeList("%RANGE_LIST%", aRangeList);
+ aTemplate.applyRangeList("%RANGE_LIST%", aRangeList, ';');
output.writeFormula(aTemplate.getTemplate());
output.nextColumn();
diff --git a/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx b/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx
index 5200e541a8f5..b774f0525789 100644
--- a/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx
+++ b/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx
@@ -66,10 +66,10 @@ void FormulaTemplate::applyRange(const OUString& aVariable, const ScRange& aRang
mTemplate = mTemplate.replaceAll(aVariable, aString);
}
-void FormulaTemplate::applyRangeList(const OUString& aVariable, const ScRangeList& aRangeList)
+void FormulaTemplate::applyRangeList(const OUString& aVariable, const ScRangeList& aRangeList, sal_Unicode cDelimiter)
{
OUString aString;
- aRangeList.Format(aString, ScRefFlags::RANGE_ABS_3D, mpDoc, mpDoc->GetAddressConvention());
+ aRangeList.Format(aString, ScRefFlags::RANGE_ABS_3D, mpDoc, mpDoc->GetAddressConvention(), cDelimiter);
mTemplate = mTemplate.replaceAll(aVariable, aString);
}
diff --git a/sc/source/ui/inc/TableFillingAndNavigationTools.hxx b/sc/source/ui/inc/TableFillingAndNavigationTools.hxx
index 9c00bf31e351..578d39665168 100644
--- a/sc/source/ui/inc/TableFillingAndNavigationTools.hxx
+++ b/sc/source/ui/inc/TableFillingAndNavigationTools.hxx
@@ -46,7 +46,7 @@ public:
void autoReplaceUses3D(bool bUse3D) { mbUse3D = bUse3D; }
void applyRange(const OUString& aVariable, const ScRange& aRange, bool b3D = true);
- void applyRangeList(const OUString& aVariable, const ScRangeList& aRangeList);
+ void applyRangeList(const OUString& aVariable, const ScRangeList& aRangeList, sal_Unicode cDelimiter );
void applyAddress(const OUString& aVariable, const ScAddress& aAddress, bool b3D = true);
void applyString(const OUString& aVariable, const OUString& aValue);
void applyNumber(const OUString& aVariable, sal_Int32 aValue);