From 678f8ec8a4db3070fad082d2a7a9444c692e8bbd Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 17 Dec 2011 09:42:00 +0100 Subject: Added total count to DbAnalyzerDialog Show number of items in current tab. --- dbanalyzer.cpp | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'dbanalyzer.cpp') diff --git a/dbanalyzer.cpp b/dbanalyzer.cpp index 8ebb4b5..82ef4e7 100644 --- a/dbanalyzer.cpp +++ b/dbanalyzer.cpp @@ -14,6 +14,7 @@ #include #include #include +#include #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("Total items: 0")); + 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("Total items: %1")); + 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 > &data){ -- cgit v1.2.3-70-g09d2