summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2011-12-17 06:40:40 +0100
committerArno <am@disconnect.de>2011-12-17 06:40:40 +0100
commita80ccf5546c14de14906f5dfb4c7efc65ec54344 (patch)
treefb1ee5f46a4cc46a63c9a957e0ff549731e05bcd
parentd3c5cf915f71ada6324277bc427796b9739c6cb8 (diff)
downloadSheMov-a80ccf5546c14de14906f5dfb4c7efc65ec54344.tar.gz
SheMov-a80ccf5546c14de14906f5dfb4c7efc65ec54344.tar.bz2
SheMov-a80ccf5546c14de14906f5dfb4c7efc65ec54344.zip
Fix no Actors dialog
Show either part number or subtitle in no actors dialog. Also make double clicking an item work.
-rw-r--r--archivetreeview.cpp2
-rw-r--r--dbanalyzer.cpp35
2 files changed, 15 insertions, 22 deletions
diff --git a/archivetreeview.cpp b/archivetreeview.cpp
index 52863f9..4bcf584 100644
--- a/archivetreeview.cpp
+++ b/archivetreeview.cpp
@@ -185,7 +185,7 @@ void ArchiveTreeView::selectMoviePart(int seriespartId, int seriesId){
QModelIndex viewSelect = mSeriesWidget->seriesProxy()->mapFromSource(partIdx);
mSeriesWidget->seriesTree()->expand(viewSelect.parent());
mSeriesWidget->seriesTree()->selectionModel()->select(viewSelect, QItemSelectionModel::Clear | QItemSelectionModel::SelectCurrent | QItemSelectionModel::Rows);
- mSeriesWidget->seriesTree()->scrollTo(viewSelect, QAbstractItemView::PositionAtCenter);
+ mSeriesWidget->seriesTree()->scrollTo(viewSelect.parent(), QAbstractItemView::PositionAtTop);
}
}
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!"));