diff options
-rw-r--r-- | archivecontroller.cpp | 15 | ||||
-rw-r--r-- | archivecontroller.h | 8 | ||||
-rw-r--r-- | archivemodel.cpp | 7 | ||||
-rw-r--r-- | archivemodel.h | 7 | ||||
-rw-r--r-- | archiveview.cpp | 4 | ||||
-rw-r--r-- | archiveview.h | 5 |
6 files changed, 20 insertions, 26 deletions
diff --git a/archivecontroller.cpp b/archivecontroller.cpp index 3cdcd4a..50e9982 100644 --- a/archivecontroller.cpp +++ b/archivecontroller.cpp @@ -11,6 +11,7 @@ #include <QMessageBox> #include <QInputDialog> #include <QTextEdit> +#include <QStandardItemModel> #include "archivecontroller.h" #include "archivemodel.h" @@ -46,7 +47,7 @@ void ArchiveController::setModels(ArchiveModel *amodel, ArchiveFilesModel *afile mArchiveFilesModel = afilesmodel; } -void ArchiveController::setMappingModels(QStringListModel *actorModel, QStringListModel *genreModel){ +void ArchiveController::setMappingModels(QStandardItemModel *actorModel, QStandardItemModel *genreModel){ mActorModel = actorModel; mGenreModel = genreModel; } @@ -176,9 +177,17 @@ void ArchiveController::treeSelectionChanged(const QItemSelection &selected, con mArchiveFiles->expandAll(); mArchiveView->setCurrentArchivePath(mArchiveModel->indexToPath(sel.first())); QStringList actors = mArchiveModel->actors(ids); - mActorModel->setStringList(actors); + mActorModel->clear(); + foreach(QString actor, actors){ + QStandardItem *newItem = new QStandardItem(QIcon(":/spreadingpants.png"), actor); + mActorModel->appendRow(newItem); + } QStringList genres = mArchiveModel->genres(ids); - mGenreModel->setStringList(genres); + mGenreModel->clear(); + foreach(QString genre, genres){ + QStandardItem *newItem = new QStandardItem(QIcon(":/spreadingpants.png"), genre); + mGenreModel->appendRow(newItem); + } QString metaData = mArchiveModel->metadata(*ids.begin()); mMetadataView->setHtml(metaData); } diff --git a/archivecontroller.h b/archivecontroller.h index e71abaf..fb1e8ed 100644 --- a/archivecontroller.h +++ b/archivecontroller.h @@ -21,7 +21,7 @@ class ArchiveModel; class ArchiveFilesModel; class QItemSelectionModel; class QSortFilterProxyModel; -class QStringListModel; +class QStandardItemModel; class QTextEdit; class ArchiveController : public QObject { @@ -32,7 +32,7 @@ class ArchiveController : public QObject { void setArchiveTree(ArchiveTree *atree, ArchiveProxy *aproxy); void setArchiveFiles(ArchiveFiles *afiles, ArchiveFilesProxy *afilesproxy); void setModels(ArchiveModel *amodel, ArchiveFilesModel *afilesmodel); - void setMappingModels(QStringListModel *actorModel, QStringListModel *genreModel); + void setMappingModels(QStandardItemModel *actorModel, QStandardItemModel *genreModel); void setMetadata(QTextEdit *metadata); ArchiveFilesModel *archiveFilesModel() { return mArchiveFilesModel; } ArchiveFiles *archiveFiles() { return mArchiveFiles; } @@ -63,8 +63,8 @@ class ArchiveController : public QObject { ArchiveModel *mArchiveModel; ArchiveFilesModel *mArchiveFilesModel; QItemSelectionModel *mFileSelection; - QStringListModel *mActorModel; - QStringListModel *mGenreModel; + QStandardItemModel *mActorModel; + QStandardItemModel *mGenreModel; QTextEdit *mMetadataView; QWidget *mParentWidget; }; diff --git a/archivemodel.cpp b/archivemodel.cpp index 95e4081..0a2c645 100644 --- a/archivemodel.cpp +++ b/archivemodel.cpp @@ -963,10 +963,3 @@ void ArchiveCollector::checkCancelled(){ quit(); } } - -QVariant SimpleModel::data(const QModelIndex &index, int role) const{ - if(role == Qt::DecorationRole){ - return QIcon(":/male_chastity_belt.png"); - } - return QStringListModel::data(index, role); -} diff --git a/archivemodel.h b/archivemodel.h index 5b84492..7b2fdf0 100644 --- a/archivemodel.h +++ b/archivemodel.h @@ -135,11 +135,4 @@ class ArchiveCollector : public QThread { bool mCancelled; }; -class SimpleModel : public QStringListModel { - Q_OBJECT - public: - explicit SimpleModel(QObject *parent = 0) : QStringListModel(parent) {} - virtual QVariant data(const QModelIndex &index, int role) const; -}; - #endif // ARCHIVEMODEL_H diff --git a/archiveview.cpp b/archiveview.cpp index 92fd83a..35eaeca 100644 --- a/archiveview.cpp +++ b/archiveview.cpp @@ -101,7 +101,7 @@ ArchiveView::ArchiveView(QWidget *parent) : QWidget(parent) { QHBoxLayout *bottomRightLayout = new QHBoxLayout; mActorView = new SmTreeView; mActorView->setHeaderHidden(true); - mActorModel = new SimpleModel(this); + mActorModel = new QStandardItemModel(this); mActorView->setModel(mActorModel); QGroupBox *actorBox = new QGroupBox(tr("Actors")); QHBoxLayout *actorLayout = new QHBoxLayout; @@ -110,7 +110,7 @@ ArchiveView::ArchiveView(QWidget *parent) : QWidget(parent) { mGenreView = new SmTreeView; mGenreView->setHeaderHidden(true); - mGenreModel = new SimpleModel(this); + mGenreModel = new QStandardItemModel(this); mGenreView->setModel(mGenreModel); QGroupBox *genreBox = new QGroupBox(tr("Genres")); QHBoxLayout *genreLayout = new QHBoxLayout; diff --git a/archiveview.h b/archiveview.h index 72dd078..1359e88 100644 --- a/archiveview.h +++ b/archiveview.h @@ -28,7 +28,6 @@ class ArchiveProxy; class ArchiveFilesProxy; class ArchiveController; class QSplitter; -class SimpleModel; class QTextEdit; class QCompleter; class QStandardItemModel; @@ -71,8 +70,8 @@ class ArchiveView : public QWidget { QStringList mCurrentArchivePath; SmTreeView *mActorView; SmTreeView *mGenreView; - SimpleModel *mActorModel; - SimpleModel *mGenreModel; + QStandardItemModel *mActorModel; + QStandardItemModel *mGenreModel; QSplitter *mTreeSplitter; QTextEdit *mMetadataView; }; |