summaryrefslogtreecommitdiffstats
path: root/beetplayerproxy.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2017-02-25 08:31:41 +0100
committerArno <arno@disconnect.de>2017-02-25 08:31:41 +0100
commitffa50a24296688d1c6e9f4de2315bbd494f86cf6 (patch)
treedc8907443a6830456e0b896a075f0b39fcbb9ed1 /beetplayerproxy.cpp
parent1530584c9b942d07e331323867072b6a9809119b (diff)
downloadBeetPlayer-ffa50a24296688d1c6e9f4de2315bbd494f86cf6.tar.gz
BeetPlayer-ffa50a24296688d1c6e9f4de2315bbd494f86cf6.tar.bz2
BeetPlayer-ffa50a24296688d1c6e9f4de2315bbd494f86cf6.zip
Rethink GUI
While figuring out how to populate the album view, I realized that I don't want to view my music by albums, only by artist, maybe by genre... So I removed the QComboBox for the different sort orders and concentrated on the filter, which is a good thing (tm). Just make the filter find anything you need. Name/Title is already implemented. Have to think about genre/year...
Diffstat (limited to 'beetplayerproxy.cpp')
-rw-r--r--beetplayerproxy.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/beetplayerproxy.cpp b/beetplayerproxy.cpp
new file mode 100644
index 0000000..115bd3a
--- /dev/null
+++ b/beetplayerproxy.cpp
@@ -0,0 +1,19 @@
+#include <QModelIndex>
+#include "beetplayerproxy.h"
+
+#include <QDebug>
+
+BeetPlayerProxy::BeetPlayerProxy(QObject *parent) : QSortFilterProxyModel(parent) {
+}
+
+bool BeetPlayerProxy::filterAcceptsRow(int source_row, const QModelIndex &source_parent) const{
+ QRegExp filter = filterRegExp();
+ QModelIndex curIdx = sourceModel()->index(source_row, 0, source_parent);
+ while(curIdx.isValid()){
+ if(curIdx.data().toString().contains(filter)){
+ return true;
+ }
+ curIdx = curIdx.parent();
+ }
+ return false;
+}