comparison examples/itemviews/customsortfiltermodel/mysortfilterproxymodel.d @ 160:624b4a58556e

fix sorting
author mandel
date Wed, 17 Jun 2009 17:42:02 +0000
parents 7c3067c2b803
children 71101646ab25
comparison
equal deleted inserted replaced
159:7ae51fb20f61 160:624b4a58556e
97 return (contains(sourceModel().data(index0).toString(), filterRegExp()) 97 return (contains(sourceModel().data(index0).toString(), filterRegExp())
98 || contains(sourceModel().data(index1).toString(), filterRegExp())) 98 || contains(sourceModel().data(index1).toString(), filterRegExp()))
99 && dateInRange(sourceModel().data(index2).toDate()); 99 && dateInRange(sourceModel().data(index2).toDate());
100 } 100 }
101 101
102
103 bool lessThan(QModelIndex left, QModelIndex right) 102 bool lessThan(QModelIndex left, QModelIndex right)
104 { 103 {
105 QVariant leftData = sourceModel().data(left); 104 QVariant leftData = sourceModel().data(left);
106 QVariant rightData = sourceModel().data(right); 105 QVariant rightData = sourceModel().data(right);
107 106
108 if (leftData.canConvert!(QDateTime)) { 107 if (leftData.type() == QVariant.Type.DateTime) {
109 return leftData.toDateTime() < rightData.toDateTime(); 108 return leftData.toDateTime() < rightData.toDateTime();
110 } else { 109 } else {
111 QRegExp emailPattern = new QRegExp("([\\w\\.]*@[\\w\\.]*)"); 110 QRegExp emailPattern = new QRegExp("([\\w\\.]*@[\\w\\.]*)");
112 111
113 string leftString = leftData.toString(); 112 string leftString = leftData.toString();