diff --git a/wpa_supplicant/wpa_gui-qt4/scanresults.cpp b/wpa_supplicant/wpa_gui-qt4/scanresults.cpp index 063347e8a..ae0c24084 100644 --- a/wpa_supplicant/wpa_gui-qt4/scanresults.cpp +++ b/wpa_supplicant/wpa_gui-qt4/scanresults.cpp @@ -12,6 +12,7 @@ #include "signalbar.h" #include "wpagui.h" #include "networkconfig.h" +#include "scanresultsitem.h" ScanResults::ScanResults(QWidget *parent, const char *, bool, Qt::WFlags) @@ -95,7 +96,7 @@ void ScanResults::updateResults() ssid = (*it).mid(pos); } - QTreeWidgetItem *item = new QTreeWidgetItem(scanResultsWidget); + ScanResultsItem *item = new ScanResultsItem(scanResultsWidget); if (item) { item->setText(0, ssid); item->setText(1, bssid); diff --git a/wpa_supplicant/wpa_gui-qt4/scanresultsitem.cpp b/wpa_supplicant/wpa_gui-qt4/scanresultsitem.cpp new file mode 100644 index 000000000..9cd937cd6 --- /dev/null +++ b/wpa_supplicant/wpa_gui-qt4/scanresultsitem.cpp @@ -0,0 +1,18 @@ +/* + * wpa_gui - ScanResultsItem class + * Copyright (c) 2015, Adrian Nowicki + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#include "scanresultsitem.h" + +bool ScanResultsItem::operator< (const QTreeWidgetItem &other) const +{ + int sortCol = treeWidget()->sortColumn(); + if (sortCol == 2 || sortCol == 3) { + return text(sortCol).toInt() < other.text(sortCol).toInt(); + } + return text(sortCol) < other.text(sortCol); +} diff --git a/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h b/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h new file mode 100644 index 000000000..835b7c08a --- /dev/null +++ b/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h @@ -0,0 +1,21 @@ +/* + * wpa_gui - ScanResultsItem class + * Copyright (c) 2015, Adrian Nowicki + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef SCANRESULTSITEM_H +#define SCANRESULTSITEM_H + +#include + +class ScanResultsItem : public QTreeWidgetItem +{ +public: + ScanResultsItem(QTreeWidget *tree) : QTreeWidgetItem(tree) {} + bool operator< (const QTreeWidgetItem &other) const; +}; + +#endif /* SCANRESULTSITEM_H */ diff --git a/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro b/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro index 3c81929e6..69bc0f672 100644 --- a/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro +++ b/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro @@ -34,6 +34,7 @@ HEADERS += wpamsg.h \ wpagui.h \ eventhistory.h \ scanresults.h \ + scanresultsitem.h \ signalbar.h \ userdatarequest.h \ networkconfig.h \ @@ -45,6 +46,7 @@ SOURCES += main.cpp \ wpagui.cpp \ eventhistory.cpp \ scanresults.cpp \ + scanresultsitem.cpp \ signalbar.cpp \ userdatarequest.cpp \ networkconfig.cpp \