diff options
author | Kohei Yoshida <kohei.yoshida@gmail.com> | 2013-01-30 22:32:28 -0500 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2013-01-31 11:57:21 +0000 |
commit | b82da7a6681494de0cb9a1009b0de59250ba0533 (patch) | |
tree | be9483660b1ea9bb97e666215a34be1e6b1892a8 /sc | |
parent | 1ecd52e7edeea6be5df23cf75b7e649a60a1c265 (diff) |
bnc#492440: Sort autofilter popup items correctly.
Use locale-aware collator to sort strings, instead of using the
transliterator. The actual sorting algorithm for cell sort uses
collator. Let's be consistent with it.
Change-Id: I6729553ce92d50e45fa1ea6e1c35581fd791807d
Reviewed-on: https://gerrit.libreoffice.org/1932
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/core/tool/typedstrdata.cxx | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sc/source/core/tool/typedstrdata.cxx b/sc/source/core/tool/typedstrdata.cxx index 811c5d82a2c1..71cf0faee1e9 100644 --- a/sc/source/core/tool/typedstrdata.cxx +++ b/sc/source/core/tool/typedstrdata.cxx @@ -29,7 +29,7 @@ #include "typedstrdata.hxx" #include "global.hxx" -#include "unotools/transliterationwrapper.hxx" +#include "unotools/collatorwrapper.hxx" bool ScTypedStrData::LessCaseSensitive::operator() (const ScTypedStrData& left, const ScTypedStrData& right) const { @@ -39,7 +39,7 @@ bool ScTypedStrData::LessCaseSensitive::operator() (const ScTypedStrData& left, if (left.meStrType == Value) return left.mfValue < right.mfValue; - return ScGlobal::GetCaseTransliteration()->compareString( + return ScGlobal::GetCaseCollator()->compareString( left.maStrValue, right.maStrValue) < 0; } @@ -51,7 +51,7 @@ bool ScTypedStrData::LessCaseInsensitive::operator() (const ScTypedStrData& left if (left.meStrType == Value) return left.mfValue < right.mfValue; - return ScGlobal::GetpTransliteration()->compareString( + return ScGlobal::GetCollator()->compareString( left.maStrValue, right.maStrValue) < 0; } @@ -63,7 +63,7 @@ bool ScTypedStrData::EqualCaseSensitive::operator() (const ScTypedStrData& left, if (left.meStrType == Value && left.mfValue != right.mfValue) return false; - return ScGlobal::GetCaseTransliteration()->compareString( + return ScGlobal::GetCaseCollator()->compareString( left.maStrValue, right.maStrValue) == 0; } @@ -75,7 +75,7 @@ bool ScTypedStrData::EqualCaseInsensitive::operator() (const ScTypedStrData& lef if (left.meStrType == Value && left.mfValue != right.mfValue) return false; - return ScGlobal::GetpTransliteration()->compareString( + return ScGlobal::GetCollator()->compareString( left.maStrValue, right.maStrValue) == 0; } |