diff options
Diffstat (limited to 'movieitem.h')
-rw-r--r-- | movieitem.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/movieitem.h b/movieitem.h new file mode 100644 index 0000000..af8e530 --- /dev/null +++ b/movieitem.h @@ -0,0 +1,47 @@ +/* + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version + 2 of the License, or (at your option) any later version. +*/ + +#ifndef MOVIEITEM_H +#define MOVIEITEM_H + +#include <QObject> +#include <QList> +#include <QVariant> + +class QSqlQuery; + +class MovieItem : public QObject { + Q_OBJECT + Q_ENUMS(Columns) + public: + enum Columns { Title = 1, Filename = 2, Md5Sum = 3, Size = 4, Genre = 5, Quality = 6, Dvd = 7 }; + enum { NumRows = 7 }; + MovieItem(int id = -1, QObject *parent = 0); + ~MovieItem() {}; + int id() const { return mId; }; + void setId(int id); + int genreId() const { return mGenreId; }; + bool setData(const QList<QVariant> &data); + void setDataAt(const QVariant &data, Columns column); + const QList<QVariant> data() const; + const QVariant dataAt(int column) const; + const QList<QVariant> actors() const { return mActors; }; + void populate(); + + private: + void setGenreName(); + void setActors(); + void setSize(); + const int mNumRows; + int mId; + int mGenreId; + QList<QVariant> mRows; + QList<QVariant> mActors; +}; + +#endif + |