diff options
author | Kohei Yoshida <kohei.yoshida@suse.com> | 2011-12-08 21:37:10 -0500 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@suse.com> | 2011-12-08 21:46:33 -0500 |
commit | d598c76cb9f34aad83802450cc4d607b71792eb8 (patch) | |
tree | 783b36928f852955f41f4dea5b9f0be93e9a6d3e /sc | |
parent | 9262039e908b3ea897180bc723d947d3d7546d4e (diff) |
bnc#727504: Correctly convert chart data ranges.
We were supported to convert XML chart data range representations
with a hard-coded ';' as the range union operators, but incorrectly
using UI configurable range separators. This caused charts with
series that consisted of multiple ranges to be imported correctly in
locales where the range separator (which re-uses the function argument
separator) was something other than ';'.
BTW I plan to remove this "always use Calc A1 syntax" restriction in
future versions.
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/core/tool/rangeutl.cxx | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/sc/source/core/tool/rangeutl.cxx b/sc/source/core/tool/rangeutl.cxx index fda76157db6d..5e1db5d7dedc 100644 --- a/sc/source/core/tool/rangeutl.cxx +++ b/sc/source/core/tool/rangeutl.cxx @@ -898,8 +898,7 @@ static void lcl_appendCellRangeAddress( void ScRangeStringConverter::GetStringFromXMLRangeString( OUString& rString, const OUString& rXMLRange, ScDocument* pDoc ) { FormulaGrammar::AddressConvention eConv = pDoc->GetAddressConvention(); - const OUString aRangeSep = ScCompiler::GetNativeSymbol(ocSep); - const sal_Unicode cSep = ' '; + const sal_Unicode cSep = ' ', cSepNew = ';'; const sal_Unicode cQuote = '\''; OUStringBuffer aRetStr; @@ -984,7 +983,7 @@ void ScRangeStringConverter::GetStringFromXMLRangeString( OUString& rString, con if (bFirst) bFirst = false; else - aRetStr.append(aRangeSep); + aRetStr.append(cSepNew); lcl_appendCellRangeAddress(aRetStr, pDoc, aCell1, aCell2, aExtInfo1, aExtInfo2); } @@ -1006,7 +1005,7 @@ void ScRangeStringConverter::GetStringFromXMLRangeString( OUString& rString, con if (bFirst) bFirst = false; else - aRetStr.append(aRangeSep); + aRetStr.append(cSepNew); lcl_appendCellAddress(aRetStr, pDoc, aCell, aExtInfo); } |