author | zautrix <zautrix> | 2004-10-20 11:04:17 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-10-20 11:04:17 (UTC) |
commit | c45d38a1574bcb53e1b0fd0dc4987cb725d430c0 (patch) (side-by-side diff) | |
tree | 22f1ee07fc4002c49867d5dd36690e54cfe21276 /kaddressbook/views | |
parent | f6f5f5cfcaa38f3e2bf36d8466b2b44ba7b3fb28 (diff) | |
download | kdepimpi-c45d38a1574bcb53e1b0fd0dc4987cb725d430c0.zip kdepimpi-c45d38a1574bcb53e1b0fd0dc4987cb725d430c0.tar.gz kdepimpi-c45d38a1574bcb53e1b0fd0dc4987cb725d430c0.tar.bz2 |
fixed umlaute sort order
-rw-r--r-- | kaddressbook/views/contactlistview.cpp | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/kaddressbook/views/contactlistview.cpp b/kaddressbook/views/contactlistview.cpp index 4cc22ea..c74f8cf 100644 --- a/kaddressbook/views/contactlistview.cpp +++ b/kaddressbook/views/contactlistview.cpp @@ -167,9 +167,35 @@ ContactListViewItem::ContactListViewItem(const KABC::Addressee &a, } QString ContactListViewItem::key(int column, bool ascending) const { - return QListViewItem::key(column, ascending).lower(); + int lan = KGlobal::locale()->language(); + //qDebug("language %d ", lan); + if ( lan == 1 ) { //GERMAN + QString ret = QListViewItem::key(column, ascending).utf8(); + int start = -1; + while ( (start = ret.find( 'ä', start+1)) > 0 ) { + ret.at(start-1) = 'a'; + } + start = -1; + while ( (start = ret.find( 'ö', start+1)) > 0 ) { + ret.at(start-1) = 'o'; + } + start = -1; + while ( (start = ret.find( 'ü', start+1)) > 0 ) { + ret.at(start-1) = 'o'; + } + start = -1; + while ( (start = ret.find( 'ß', start+1)) > 0 ) { + ret.at(start-1) = 's'; + } + //qDebug("conv string %s ", ret.latin1()); + + return ret; + + } + else + return QListViewItem::key(column, ascending).lower(); } void ContactListViewItem::paintCell(QPainter * p, const QColorGroup & cg, |