From ce0d37ac854cb7102f0476e837b252cb0c127876 Mon Sep 17 00:00:00 2001 From: Arno Date: Thu, 10 Nov 2016 19:03:45 +0100 Subject: Setup logging facility Log what we're doing in a QTextEdit below the FileView. --- randomtab.cpp | 35 ++++++++++++++++++++++++++++++----- 1 file changed, 30 insertions(+), 5 deletions(-) (limited to 'randomtab.cpp') diff --git a/randomtab.cpp b/randomtab.cpp index c94deec..52f612b 100644 --- a/randomtab.cpp +++ b/randomtab.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -19,6 +20,8 @@ #include #include #include +#include +#include #include "randomtab.h" @@ -26,6 +29,11 @@ RandomTab::RandomTab(QWidget *parent) : QWidget(parent) { mDb = QSqlDatabase::database("treedb"); mGenreModel = new QStandardItemModel(this); mActorModel = new QStandardItemModel(this); + + // setupModels is logging, so... + mLog = new QTextEdit; + mLog->setFont(QFont("courier new", -1 , QFont::Bold)); + setupModels(); setupGui(); clearAll(); @@ -95,14 +103,19 @@ void RandomTab::setupGui(){ mFileProxy->setSourceModel(mFileModel); mFileView->setModel(mFileProxy); - QWidget *rightWidget = new QWidget; - QVBoxLayout *rwL = new QVBoxLayout; - rwL->addWidget(mFileView); - rightWidget->setLayout(rwL); + QGroupBox *logBox = new QGroupBox(tr("Log")); + QHBoxLayout *logL = new QHBoxLayout; + logL->addWidget(mLog); + logBox->setLayout(logL); + + QSplitter *topBottmSplitter = new QSplitter(Qt::Vertical); + topBottmSplitter->addWidget(mFileView); + topBottmSplitter->addWidget(logBox); + topBottmSplitter->setStretchFactor(0, 4); QSplitter *leftRightSplitter = new QSplitter(Qt::Horizontal); leftRightSplitter->addWidget(leftWidget); - leftRightSplitter->addWidget(rightWidget); + leftRightSplitter->addWidget(topBottmSplitter); leftRightSplitter->setStretchFactor(1, 4); QHBoxLayout *mainLayout = new QHBoxLayout; @@ -118,6 +131,7 @@ void RandomTab::setupModels(){ noneG->setText(tr("")); noneG->setData(-1, IdRole); genreRoot->appendRow(noneG); + logMessage(tr("Collecting Genres")); QSqlQuery genQ("SELECT tgenrename, igenres_id FROM genres ORDER BY tgenrename ASC", mDb); while(genQ.next()){ QStandardItem *i = new QStandardItem; @@ -125,6 +139,8 @@ void RandomTab::setupModels(){ i->setData(genQ.value(1), IdRole); genreRoot->appendRow(i); } + logMessage(tr("Collecting Genres -> Done!")); + logMessage(QString(tr("Have %1 Genres")).arg(QString::number(genreRoot->rowCount()))); // Actors mActorModel->clear(); @@ -133,6 +149,7 @@ void RandomTab::setupModels(){ noneA->setText(tr("")); noneA->setData(-1, IdRole); actorRoot->appendRow(noneA); + logMessage(tr("Collecting Actors")); QSqlQuery actQ("SELECT tactorname, iactors_id FROM actors ORDER BY tactorname ASC", mDb); while(actQ.next()){ QStandardItem *i = new QStandardItem; @@ -140,6 +157,8 @@ void RandomTab::setupModels(){ i->setData(actQ.value(1), IdRole); actorRoot->appendRow(i); } + logMessage(tr("Collecting Actors -> Done!")); + logMessage(QString(tr("Have %1 Actors")).arg(QString::number(actorRoot->rowCount()))); } void RandomTab::clearAll(){ @@ -159,3 +178,9 @@ void RandomTab::refreshComboboxes(){ void RandomTab::select(){ } + +void RandomTab::logMessage(const QString &msg){ + QDateTime now = QDateTime::currentDateTime(); + QString msg1 = QString("[%1] %2").arg(now.toString()).arg(msg); + mLog->append(msg1); +} -- cgit v1.2.3-70-g09d2