From afd74157ef705fa2b0323727b3a37e2806bb0730 Mon Sep 17 00:00:00 2001 From: Arno Date: Sun, 16 Jan 2011 15:04:41 +0100 Subject: Implement favorites SeriesParts can be marked as favorites. They won't be selectable when filtering by local Movies only. --- seriestreemodel.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'seriestreemodel.h') diff --git a/seriestreemodel.h b/seriestreemodel.h index e25c111..c20014d 100644 --- a/seriestreemodel.h +++ b/seriestreemodel.h @@ -20,8 +20,8 @@ class QSqlQuery; class SeriesTreeModel : public SmTreeModel { Q_OBJECT public: - enum CustomRoles { NameRole = Qt::UserRole + 1, SeriesIdRole = Qt::UserRole + 2, SeriesPartIdRole = Qt::UserRole + 3, SeriesPartRole = Qt::UserRole + 4, TypeRole = Qt::UserRole + 5 }; - enum Fields { Name = 0, SeriesId = 1, SeriesPartId = 2, SeriesPart = 3, Type = 4 }; + enum CustomRoles { NameRole = Qt::UserRole + 1, SeriesIdRole = Qt::UserRole + 2, SeriesPartIdRole = Qt::UserRole + 3, SeriesPartRole = Qt::UserRole + 4, TypeRole = Qt::UserRole + 5, FavoriteRole = Qt::UserRole + 6 }; + enum Fields { Name = 0, SeriesId = 1, SeriesPartId = 2, SeriesPart = 3, Type = 4, Favorite = 5 }; enum Types { Series, Part, NewSeries }; enum QueryType { NumericQuery, TextQuery }; explicit SeriesTreeModel(QStringList &headers, QObject *parent = 0); @@ -55,16 +55,22 @@ class SeriesTreeModel : public SmTreeModel { void needResort(); void consistencyMsg(const QString &msg); + public slots: + void readSettings(); + void conditionalUpdate(const QModelIndex &parent, int field, const QVariant &value); + private: void populate(); bool mergeSeries(const QModelIndex &from, const QModelIndex &to); bool renameSeries(const QModelIndex &source, const QVariant &value); bool setNewSeries(const QModelIndex &source, const QVariant &value); + bool setFavorite(const QModelIndex &source, const QVariant &value); QString archivePath(const QString &fileName, const QString &md5sum) const; QSqlDatabase mDb; QSqlQuery *mSeriesPartsQuery; QSqlQuery *mUpdateSeriesIdQuery; QSqlQuery *mUpdateSeriesNameQuery; + QSqlQuery *mUpdateFavoriteQuery; QSqlQuery *mDeleteSeriesQuery; QSqlQuery *mDeleteSeriesPartQuery; QSqlQuery *mSeriesInsertQuery; @@ -75,6 +81,7 @@ class SeriesTreeModel : public SmTreeModel { QSqlQuery *mNextDvdNoQuery; QSqlQuery *mGenreFilterQuery; QHash mSeriesPartSeriesMap; + QColor mFavoriteColor; }; #endif // SERIESTREEMODEL_H -- cgit v1.2.3-70-g09d2