summaryrefslogtreecommitdiffstats
path: root/archivebrowsermodel.h
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2025-05-01 20:12:24 +0200
committerArno <arno@disconnect.de>2025-05-01 20:12:24 +0200
commita45737e852c207d02f1dd06227de7916baa290c1 (patch)
treec1b90eeaad70bf0f249ef9a3b842d182d237d63a /archivebrowsermodel.h
parenta3b79646fe6984b0f2203ed9819ba03b0a4db978 (diff)
downloadSheMov-a45737e852c207d02f1dd06227de7916baa290c1.tar.gz
SheMov-a45737e852c207d02f1dd06227de7916baa290c1.tar.bz2
SheMov-a45737e852c207d02f1dd06227de7916baa290c1.zip
Make the genre filter work
It works basically, but it could use a few improvements, like filtering out genres which we don't want to archive, and maybe make the size filter work in addition to it.
Diffstat (limited to 'archivebrowsermodel.h')
-rw-r--r--archivebrowsermodel.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/archivebrowsermodel.h b/archivebrowsermodel.h
index 7d0d263..212ecea 100644
--- a/archivebrowsermodel.h
+++ b/archivebrowsermodel.h
@@ -12,6 +12,8 @@
#include <QSortFilterProxyModel>
#include <QList>
+class QAction;
+
#include "smtreemodel.h"
class ArchiveBrowserModel : public SmTreeModel {
@@ -27,6 +29,7 @@ class ArchiveBrowserModel : public SmTreeModel {
int nextDVDNo() const;
virtual Qt::ItemFlags flags(const QModelIndex &index) const;
QList<int> availableQualities() { return mAvailableQualities; }
+ QStringList availableGenres() { return mAvailableGenres; }
QModelIndexList children(const QModelIndex &idx);
public slots:
@@ -40,6 +43,7 @@ class ArchiveBrowserModel : public SmTreeModel {
void readConfig();
int mNumFields;
QList<int> mAvailableQualities;
+ QStringList mAvailableGenres;
QSqlDatabase mDb;
};
@@ -52,6 +56,7 @@ class ArchiveBrowserModelProxy : public QSortFilterProxyModel {
void setQualityFilter(QString quality);
void setSizeFilter(int activate);
void setBytesRemaining(qint64 bytes);
+ void toggleGenre(QAction *a);
protected:
virtual bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
@@ -60,6 +65,7 @@ class ArchiveBrowserModelProxy : public QSortFilterProxyModel {
int mQuality;
bool mSizeFilter;
qint64 mBytesRemaining;
+ QStringList mGenreFilters;
};
#endif // ARCHIVEBROWSERMODEL_H