diff options
-rw-r--r-- | moviepropertiesdialog.cpp | 29 | ||||
-rw-r--r-- | moviepropertiesdialog.h | 9 |
2 files changed, 19 insertions, 19 deletions
diff --git a/moviepropertiesdialog.cpp b/moviepropertiesdialog.cpp index 724e9ba..843c447 100644 --- a/moviepropertiesdialog.cpp +++ b/moviepropertiesdialog.cpp @@ -10,7 +10,6 @@ #include <QGraphicsView> #include <QGraphicsScene> #include <QPushButton> -#include <QTextEdit> #include <QLabel> #include <QSqlQuery> #include <QFileInfo> @@ -21,8 +20,10 @@ #include <QGraphicsTextItem> #include <QGraphicsPixmapItem> #include <QPixmap> +#include <QTreeView> #include "moviepropertiesdialog.h" +#include "actormodel.h" #include "helper.h" MoviePropertiesDialog::MoviePropertiesDialog(int movid, QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f), mId(movid), mIndex(-1){ @@ -46,13 +47,15 @@ MoviePropertiesDialog::MoviePropertiesDialog(int movid, QWidget *parent, Qt::Win quality = q1.value(5).toInt(); dvd = q1.value(6).toInt(); } - QStringList actors; + //QStringList actors; + mActorModel = new ActorModel; QSqlQuery q2; q2.prepare("SELECT tactorname FROM actor, movieactormap WHERE movieactormap.iactorid = actor.iactorid AND movieactormap.imovid = :id"); q2.bindValue(":id", mId); q2.exec(); while(q2.next()){ - actors << q2.value(0).toString(); + //actors << q2.value(0).toString(); + mActorModel->addItem(q2.value(0)); } //layout QVBoxLayout *mainLayout = new QVBoxLayout; @@ -73,10 +76,10 @@ MoviePropertiesDialog::MoviePropertiesDialog(int movid, QWidget *parent, Qt::Win mainLayout->addLayout(buttonPicLayout); //actors - mActors = new QTextEdit; - mActors->setReadOnly(true); - mActors->setFont(QFont("Courier new")); - mActors->setHtml(actorHtml(actors)); + mActors = new QTreeView; + mActors->setRootIsDecorated(false); + mActors->setHeaderHidden(true); + mActors->setModel(mActorModel); //properties QGridLayout *propertiesGrid = new QGridLayout; @@ -149,6 +152,10 @@ MoviePropertiesDialog::MoviePropertiesDialog(int movid, QWidget *parent, Qt::Win } +MoviePropertiesDialog::~MoviePropertiesDialog() { + delete mActorModel; +} + void MoviePropertiesDialog::setCover(int index){ mScene->clear(); if((index < 0) || (index >= mCovers.size())){ @@ -205,11 +212,3 @@ void MoviePropertiesDialog::covers(){ } } -const QString MoviePropertiesDialog::actorHtml(const QStringList &actors) const{ - QString retval("<html><body><ul>"); - foreach(QString a, actors){ - retval.append(QString("<li>%1</li>").arg(a)); - } - retval.append("</ul></body></html>"); - return retval; -} diff --git a/moviepropertiesdialog.h b/moviepropertiesdialog.h index c634816..2bf0fbf 100644 --- a/moviepropertiesdialog.h +++ b/moviepropertiesdialog.h @@ -13,13 +13,14 @@ class QGraphicsView; class QGraphicsScene; class QPushButton; -class QTextEdit; +class ActorModel; +class QTreeView; class MoviePropertiesDialog : public QDialog { Q_OBJECT public: MoviePropertiesDialog(int movid, QWidget *parent = 0, Qt::WindowFlags f = 0); - ~MoviePropertiesDialog() {}; + ~MoviePropertiesDialog(); private slots: void setCover(int index); @@ -28,13 +29,13 @@ class MoviePropertiesDialog : public QDialog { private: void covers(); - const QString actorHtml(const QStringList &actors) const; QGraphicsView *mView; QGraphicsScene *mScene; QPushButton *mNext; QPushButton *mPrev; QPushButton *mClose; - QTextEdit *mActors; + QTreeView *mActors; + ActorModel *mActorModel; int mId; int mIndex; QStringList mCovers; |