Mailinglist Archive: yast-commit (129 mails)
| < Previous | Next > |
[yast-commit] r68088 - /trunk/qt/src/QY2ListView.cc
- From: tgoettlicher@xxxxxxxxxxxxxxxxx
- Date: Fri, 04 May 2012 13:34:37 -0000
- Message-id: <20120504133437.87E9D32522@svn2.opensuse.org>
Author: tgoettlicher
Date: Fri May 4 15:34:35 2012
New Revision: 68088
URL: http://svn.opensuse.org/viewcvs/yast?rev=68088&view=rev
Log:
finetuned-sort function
Modified:
trunk/qt/src/QY2ListView.cc
Modified: trunk/qt/src/QY2ListView.cc
URL:
http://svn.opensuse.org/viewcvs/yast/trunk/qt/src/QY2ListView.cc?rev=68088&r1=68087&r2=68088&view=diff
==============================================================================
--- trunk/qt/src/QY2ListView.cc (original)
+++ trunk/qt/src/QY2ListView.cc Fri May 4 15:34:35 2012
@@ -439,10 +439,23 @@
// numeric sorting if columns are numbers
int column = treeWidget()->sortColumn();
- QRegExp re("\\d*");
- if ( re.exactMatch(text(column)) &&
re.exactMatch(otherListViewItem.text(column)) )
- return text(column).toInt() < otherListViewItem.text(column).toInt();
+ QString text1=text(column).trimmed();
+ QString text2=otherListViewItem.text(column).trimmed();
+ text1=text1.left(text1.indexOf(QChar(' ')));
+ text2=text2.left(text2.indexOf(QChar(' ')));
+
+ bool ok1, ok2; // conversion to int successful
+ bool retval = text1.toInt(&ok1) < text2.toInt(&ok2);
+
+ if (ok1 && ok2 )
+ return retval; // int < int
+ else if (ok1 && !ok2)
+ return true; // int < string
+ else if (!ok1 && ok2)
+ return false; // string > int
+
+ // and finally non-numeric sorting is done by the base class
return QTreeWidgetItem::operator<(otherListViewItem);
}
--
To unsubscribe, e-mail: yast-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: yast-commit+help@xxxxxxxxxxxx
Date: Fri May 4 15:34:35 2012
New Revision: 68088
URL: http://svn.opensuse.org/viewcvs/yast?rev=68088&view=rev
Log:
finetuned-sort function
Modified:
trunk/qt/src/QY2ListView.cc
Modified: trunk/qt/src/QY2ListView.cc
URL:
http://svn.opensuse.org/viewcvs/yast/trunk/qt/src/QY2ListView.cc?rev=68088&r1=68087&r2=68088&view=diff
==============================================================================
--- trunk/qt/src/QY2ListView.cc (original)
+++ trunk/qt/src/QY2ListView.cc Fri May 4 15:34:35 2012
@@ -439,10 +439,23 @@
// numeric sorting if columns are numbers
int column = treeWidget()->sortColumn();
- QRegExp re("\\d*");
- if ( re.exactMatch(text(column)) &&
re.exactMatch(otherListViewItem.text(column)) )
- return text(column).toInt() < otherListViewItem.text(column).toInt();
+ QString text1=text(column).trimmed();
+ QString text2=otherListViewItem.text(column).trimmed();
+ text1=text1.left(text1.indexOf(QChar(' ')));
+ text2=text2.left(text2.indexOf(QChar(' ')));
+
+ bool ok1, ok2; // conversion to int successful
+ bool retval = text1.toInt(&ok1) < text2.toInt(&ok2);
+
+ if (ok1 && ok2 )
+ return retval; // int < int
+ else if (ok1 && !ok2)
+ return true; // int < string
+ else if (!ok1 && ok2)
+ return false; // string > int
+
+ // and finally non-numeric sorting is done by the base class
return QTreeWidgetItem::operator<(otherListViewItem);
}
--
To unsubscribe, e-mail: yast-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: yast-commit+help@xxxxxxxxxxxx
| < Previous | Next > |