summaryrefslogtreecommitdiffstats
path: root/dbanalyzer.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2011-12-17 09:42:00 +0100
committerArno <am@disconnect.de>2011-12-17 09:42:00 +0100
commit678f8ec8a4db3070fad082d2a7a9444c692e8bbd (patch)
tree2fffdf3bb349a2c6634f9f1a94e512821797985a /dbanalyzer.cpp
parenta6f689586a1c7f939493c4122466146ac57ad6e6 (diff)
downloadSheMov-678f8ec8a4db3070fad082d2a7a9444c692e8bbd.tar.gz
SheMov-678f8ec8a4db3070fad082d2a7a9444c692e8bbd.tar.bz2
SheMov-678f8ec8a4db3070fad082d2a7a9444c692e8bbd.zip
Added total count to DbAnalyzerDialog
Show number of items in current tab.
Diffstat (limited to 'dbanalyzer.cpp')
-rw-r--r--dbanalyzer.cpp28
1 files changed, 25 insertions, 3 deletions
diff --git a/dbanalyzer.cpp b/dbanalyzer.cpp
index 8ebb4b5..82ef4e7 100644
--- a/dbanalyzer.cpp
+++ b/dbanalyzer.cpp
@@ -14,6 +14,7 @@
#include <QMutexLocker>
#include <QTableWidget>
#include <QModelIndex>
+#include <QLabel>
#include "dbanalyzer.h"
#include "smtreemodel.h"
@@ -60,7 +61,7 @@ DbAnalyzerDialog::DbAnalyzerDialog(QWidget *parent, Qt::WindowFlags f) : QDialog
mStrayActorsV->setAlternatingRowColors(true);
strayActorsT->setLayout(strayActorsL);
- //strac genres
+ //stray genres
QWidget *strayGenresT = new QWidget;
QStringList strayGenresHeaders = QStringList() << tr("Genre") << tr("Genre Id") << tr("Count");
mStrayGenresV = new QTreeView;
@@ -90,14 +91,26 @@ DbAnalyzerDialog::DbAnalyzerDialog(QWidget *parent, Qt::WindowFlags f) : QDialog
mTab->addTab(noActorsT, tr("No Actors"));
mTab->addTab(strayActorsT, tr("Stray actors"));
mTab->addTab(strayGenresT, tr("Stray genres"));
- QVBoxLayout *mainLayout = new QVBoxLayout;
- mainLayout->addWidget(mTab);
+
+
+ //buttons
QHBoxLayout *buttonLayout = new QHBoxLayout;
buttonLayout->addWidget(mCancel);
buttonLayout->addWidget(mRefresh);
buttonLayout->addStretch();
buttonLayout->addWidget(mDelete);
buttonLayout->addWidget(mClose);
+
+ //totals
+ mTotal = new QLabel(tr("<b>Total items: 0</b>"));
+ mTotal->setAlignment(Qt::AlignCenter);
+ QHBoxLayout *totalLayout = new QHBoxLayout;
+ totalLayout->addWidget(mTotal);
+
+ //setup dialog
+ QVBoxLayout *mainLayout = new QVBoxLayout;
+ mainLayout->addWidget(mTab);
+ mainLayout->addLayout(totalLayout);
mainLayout->addLayout(buttonLayout);
setLayout(mainLayout);
setMinimumWidth(500);
@@ -106,6 +119,9 @@ DbAnalyzerDialog::DbAnalyzerDialog(QWidget *parent, Qt::WindowFlags f) : QDialog
connect(mTab, SIGNAL(currentChanged(int)), this, SLOT(tabChanged(int)));
connect(mAnalyzer, SIGNAL(started()), this, SLOT(analyzerStarted()));
connect(mAnalyzer, SIGNAL(finished()), this, SLOT(analyzerFinished()));
+ for(int i = 0; i < mTab->count(); ++i){
+ mTotals << QString();
+ }
mAnalyzer->start();
}
@@ -132,6 +148,11 @@ void DbAnalyzerDialog::analyzerFinished(){
populate(mNoActorsV, mNoActorsM, mAnalyzer->noActors());
populate(mStrayActorsV, mStrayActorsM, mAnalyzer->strayActors());
populate(mStrayGenresV, mStrayGenresM, mAnalyzer->strayGenres());
+ QString totalString = QString(tr("<b>Total items: %1</b>"));
+ mTotals[0] = totalString.arg(QString::number(mAnalyzer->noActors().count()));
+ mTotals[1] = totalString.arg(QString::number(mAnalyzer->strayActors().count()));
+ mTotals[2] = totalString.arg(QString::number(mAnalyzer->strayGenres().count()));
+ mTotal->setText(mTotals.at(mTab->currentIndex()));
}
void DbAnalyzerDialog::noActorsDoubleClicked(const QModelIndex &idx){
@@ -173,6 +194,7 @@ void DbAnalyzerDialog::deleteItems(){
void DbAnalyzerDialog::tabChanged(int index){
mDelete->setEnabled(index != 0);
+ mTotal->setText(mTotals.at(index));
}
void DbAnalyzerDialog::populate(QTreeView *view, SmTreeModel *model, const QList<QList<QVariant> > &data){