From b61c945e41f1df211097ada08a264618e3da56e3 Mon Sep 17 00:00:00 2001 From: am Date: Sun, 22 Nov 2009 11:35:26 +0000 Subject: -MoviePropertiesDialog now uses ActorModel and QTreeview for displaying actors git-svn-id: file:///var/svn/repos2/shemov/trunk@428 f440f766-f032-0410-8965-dc7d17de2ca0 --- moviepropertiesdialog.cpp | 29 ++++++++++++++--------------- 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 #include #include -#include #include #include #include @@ -21,8 +20,10 @@ #include #include #include +#include #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("
    "); - foreach(QString a, actors){ - retval.append(QString("
  • %1
  • ").arg(a)); - } - retval.append("
"); - 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; -- cgit v1.2.3-70-g09d2