diff options
Diffstat (limited to 'dbanalyzer.cpp')
-rw-r--r-- | dbanalyzer.cpp | 35 |
1 files changed, 14 insertions, 21 deletions
diff --git a/dbanalyzer.cpp b/dbanalyzer.cpp index 87d3dd2..10def75 100644 --- a/dbanalyzer.cpp +++ b/dbanalyzer.cpp @@ -30,18 +30,19 @@ DbAnalyzerDialog::DbAnalyzerDialog(QWidget *parent, Qt::WindowFlags f) : QDialog // no actors QWidget *noActorsT = new QWidget; - QStringList noActorsHeaders = QStringList() << tr("Series") << tr("Series part") << tr("Series Id") << tr("Seriespart"); + QStringList noActorsHeaders = QStringList() << tr("Series") << tr("Part/Subtitle") << tr("Seriespart Id") << tr("Series Id") << tr("Seriespart"); mNoActorsV = new QTreeView; mNoActorsM = new SmTreeModel(noActorsHeaders, this); mNoActorsV->setModel(mNoActorsM); QVBoxLayout *noActorsL = new QVBoxLayout; noActorsL->addWidget(mNoActorsV); - mNoActorsV->setColumnHidden(1, true); mNoActorsV->setColumnHidden(2, true); mNoActorsV->setColumnHidden(3, true); + mNoActorsV->setColumnHidden(4, true); mNoActorsV->setEditTriggers(QTreeView::NoEditTriggers); mNoActorsV->setSelectionBehavior(QAbstractItemView::SelectRows); mNoActorsV->setSelectionMode(QAbstractItemView::SingleSelection); + mNoActorsV->setAlternatingRowColors(true); connect(mNoActorsV, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(noActorsDoubleClicked(QModelIndex))); noActorsT->setLayout(noActorsL); @@ -85,16 +86,12 @@ void DbAnalyzerDialog::analyzerFinished(){ } void DbAnalyzerDialog::noActorsDoubleClicked(const QModelIndex &idx){ - qDebug() << idx; if(!idx.isValid()){ return; } - QModelIndex seriesPartIdx = mNoActorsM->index(idx.row(), 3, idx.parent()); - QModelIndex seriesIdx = mNoActorsM->index(idx.row(), 2, idx.parent()); - qDebug() << seriesPartIdx << seriesIdx; - //if(spIdx.isValid()){ - emit partClicked(seriesPartIdx.data().toInt(), seriesIdx.data().toInt()); - //} + QModelIndex seriesPartIdx = mNoActorsM->index(idx.row(), 5, idx.parent()); + QModelIndex seriesIdx = mNoActorsM->index(idx.row(), 4, idx.parent()); + emit partClicked(seriesPartIdx.data().toInt(), seriesIdx.data().toInt()); } void DbAnalyzerDialog::populateNoActors(){ @@ -114,12 +111,13 @@ DbAnalyzer::DbAnalyzer(QObject *parent) : QThread(parent), mCanceled(false), mSt mDb.open(); mStatus = mDb.isOpen() ? Ok : Fail; mNoActorQuery = new QSqlQuery(mDb); - mNoActorQuery->prepare("SELECT series.tseries_name, seriesparts.iseriespart, series.iseries_id, seriesparts.iseriesparts_id FROM series, seriesparts LEFT JOIN seriesparts_actormap ON seriesparts.iseriesparts_id = seriesparts_actormap.iseriesparts_id WHERE iactors_id IS NULL AND seriesparts.iseries_id = series.iseries_id ORDER BY tseries_name"); + mNoActorQuery->prepare("SELECT series.tseries_name, seriesparts.iseriespart, seriesparts.tsubtitle, series.iseries_id, seriesparts.iseriesparts_id FROM series, seriesparts LEFT JOIN seriesparts_actormap ON seriesparts.iseriesparts_id = seriesparts_actormap.iseriesparts_id WHERE iactors_id IS NULL AND seriesparts.iseries_id = series.iseries_id ORDER BY tseries_name"); } DbAnalyzer::~DbAnalyzer(){ delete mNoActorQuery; mDb.close(); + QSqlDatabase::removeDatabase("analyzerDb"); } void DbAnalyzer::setCancel(bool canceled){ @@ -142,18 +140,13 @@ void DbAnalyzer::noActorsCheck(){ break; } QList<QVariant> res; - for(int i = 0; i < 4; ++i){ - if(i == 0){ - if(mNoActorQuery->value(1).toInt() > 1){ - QString title = QString("%1 %2").arg(mNoActorQuery->value(0).toString(), mNoActorQuery->value(1).toString()); - res << title; - continue; - }else{ - res << mNoActorQuery->value(0); - } - } - res << mNoActorQuery->value(i); + res << mNoActorQuery->value(0); + if(!mNoActorQuery->value(2).isNull()){ + res << mNoActorQuery->value(2); + }else{ + res << mNoActorQuery->value(1); } + res << mNoActorQuery->value(1) << mNoActorQuery->value(2) << mNoActorQuery->value(3) << mNoActorQuery->value(4); mNoActorR << res; } emit message(tr("Done!")); |