diff options
Diffstat (limited to 'filestreemodel.cpp')
-rw-r--r-- | filestreemodel.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/filestreemodel.cpp b/filestreemodel.cpp index 87c1e8d..973e7a6 100644 --- a/filestreemodel.cpp +++ b/filestreemodel.cpp @@ -29,7 +29,7 @@ FilesTreeModel::~FilesTreeModel(){ void FilesTreeModel::setIds(const QList<int> &seriesPartIds){ SmTreeItem *root = new SmTreeItem(11); SmTreeItem *files = new SmTreeItem(11, root); - files->setData(FileName, tr("Files")); + files->setData(FileName, tr("Movies")); root->appendChild(files); SmTreeItem *covers = new SmTreeItem(11, root); covers->setData(FileName, tr("Covers")); @@ -39,7 +39,7 @@ void FilesTreeModel::setIds(const QList<int> &seriesPartIds){ foreach(int s, seriesPartIds){ ids << QString::number(s); } - QString query = QString("SELECT iseriespart_id, tfilename, cmd5sum, bisize, idvd, sifiletype, sifileno, siquality, ifiles_id FROM files WHERE iseriespart_id IN (%1) ORDER BY tfilename, sifileno ASC").arg(ids.join(",")); + QString query = QString("SELECT iseriespart_id, tfilename, cmd5sum, bisize, idvd, sifiletype, sifileno, siquality, ifiles_id, series.tseries_name, seriesparts.iseriespart FROM files, seriesparts, series WHERE iseriespart_id IN (%1) AND files.iseriespart_id = seriesparts.iseriesparts_id AND seriesparts.iseries_id = series.iseries_id ORDER BY tfilename, sifileno ASC").arg(ids.join(",")); QSqlQuery filesQuery(query, mDb); while(filesQuery.next()){ QList<QVariant> data; @@ -54,6 +54,9 @@ void FilesTreeModel::setIds(const QList<int> &seriesPartIds){ data << filesQuery.value(2); //md5sum data << filesQuery.value(0); //seriesparts_id data << filesQuery.value(8); //files_id + data << filesQuery.value(10); //seriespart + QString displayName = QString("%1 %2").arg(filesQuery.value(9).toString()).arg(filesQuery.value(10).toString()); + data << displayName; switch(filesQuery.value(5).toInt()){ case Movie:{ SmTreeItem *item = new SmTreeItem(data, files); @@ -82,6 +85,7 @@ QVariant FilesTreeModel::data(const QModelIndex &index, int role) const{ SmTreeItem *item = static_cast<SmTreeItem*>(index.internalPointer()); if(role == Qt::DisplayRole){ + if(index.column()) if(index.column() == DvdNo){ if(index.data(FileTypeRole) == QVariant()){ return QVariant(); @@ -93,6 +97,11 @@ QVariant FilesTreeModel::data(const QModelIndex &index, int role) const{ return retval; } } + if(index.column() == PartNo){ + if(item->data(PartNo).toInt() == -1){ + return QVariant(); + } + } return item->data(index.column()); } if(role == Qt::EditRole){ |