Skip to content
Snippets Groups Projects
Commit 319be7eb authored by Olivier Langella's avatar Olivier Langella
Browse files

order

parent 0c07d88b
No related branches found
No related tags found
No related merge requests found
......@@ -57,6 +57,7 @@ ProteinListWindow::ProteinListWindow(QWidget *parent):
_p_proxy_model->setSourceModel(_protein_table_model_p);
_p_proxy_model->setDynamicSortFilter(true);
ui->tableView->setModel( _p_proxy_model );
ui->tableView->setSortingEnabled(true);
}
ProteinListWindow::~ProteinListWindow()
......
......@@ -35,6 +35,30 @@ bool ProteinTableProxyModel::filterAcceptsRow(int source_row,
const QModelIndex &source_parent) const {
return true;
}
bool ProteinTableProxyModel::lessThan(const QModelIndex & left, const QModelIndex & right) const {
QVariant leftData = sourceModel()->data(left);
QVariant rightData = sourceModel()->data(right);
return leftData.toString() < rightData.toString();
//if (leftData.type() == QVariant::DateTime) {
// return leftData.toDateTime() < rightData.toDateTime();
//} else {
// static QRegExp emailPattern("[\\w\\.]*@[\\w\\.]*)");
/*
QString leftString = leftData.toString();
if(left.column() == 1 && emailPattern.indexIn(leftString) != -1)
leftString = emailPattern.cap(1);
QString rightString = rightData.toString();
if(right.column() == 1 && emailPattern.indexIn(rightString) != -1)
rightString = emailPattern.cap(1);
return QString::localeAwareCompare(leftString, rightString) < 0;
*/
// }
}
QVariant ProteinTableProxyModel::headerData(int section, Qt::Orientation orientation,
int role) const {
return sourceModel()->headerData(section, orientation,
......
......@@ -35,9 +35,10 @@ class ProteinTableProxyModel : public QSortFilterProxyModel
public:
ProteinTableProxyModel(QObject* parent = 0);
bool filterAcceptsRow(int source_row,
const QModelIndex &source_parent) const;
const QModelIndex &source_parent) const override;
QVariant headerData(int section, Qt::Orientation orientation,
int role) const;
int role) const override;
bool lessThan(const QModelIndex & left, const QModelIndex & right) const override;
public slots:
//void setMinGravity(double minGravity);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment