From 75ba41283b534d23e32c8e681d08fc37dbdd0dad Mon Sep 17 00:00:00 2001 From: Johannes Paehr Date: Tue, 12 Sep 2017 16:49:44 +0200 Subject: [PATCH] added minimal sector times dialog --- RennbahnZeitmessung.pro.user | 2 +- windowssettings.cpp | 36 +++++++++++++++--- windowssettings.h | 1 + windowssettings.ui | 72 ++++++++++++++++++++++++++++++++++-- 4 files changed, 101 insertions(+), 10 deletions(-) diff --git a/RennbahnZeitmessung.pro.user b/RennbahnZeitmessung.pro.user index 12e51c9..a1d7318 100644 --- a/RennbahnZeitmessung.pro.user +++ b/RennbahnZeitmessung.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId diff --git a/windowssettings.cpp b/windowssettings.cpp index e540d04..d852100 100644 --- a/windowssettings.cpp +++ b/windowssettings.cpp @@ -23,6 +23,13 @@ WindowsSettings::WindowsSettings(DataBase *db, QWidget *parent) : QObject::connect(this->ui->pbSaveDauer, SIGNAL(clicked()), this, SLOT(SaveDauerSlot())); QObject::connect(this->ui->pbSaveAndExitDauer, SIGNAL(clicked()), this, SLOT(SaveDauerAndExitSlot())); + // update minimal lap time on changeing minimal sector time + QObject::connect(this->ui->lEMinTimeSec1, SIGNAL(textChanged(QString)), this, SLOT(repaintMinLapTime())); + QObject::connect(this->ui->lEMinTimeSec2, SIGNAL(textChanged(QString)), this, SLOT(repaintMinLapTime())); + QObject::connect(this->ui->lEMinTimeSec3, SIGNAL(textChanged(QString)), this, SLOT(repaintMinLapTime())); + + + this->db = db; @@ -53,23 +60,42 @@ WindowsSettings::WindowsSettings(DataBase *db, QWidget *parent) : ui->lEDeaSteilkurveAussen->setText(res[0][4]); //duration prepare - statement = "select dauer, mindestrundendauer from renndauer"; - res = db->getData(statement, 2); + statement = "select dauer, mindestrundendauer, minsec1, minsec2, minsec3 from renndauer"; + res = db->getData(statement, 5); this->ui->leRenndauer->setText(res[0][0]); - this->ui->lEMinRundenzeit->setText(res[0][1]); + this->ui->lEMinTimeSec1->setText(res[0][2]); + this->ui->lEMinTimeSec2->setText(res[0][3]); + this->ui->lEMinTimeSec3->setText(res[0][4]); + int minLapTime = res[0][2].toInt() + res[0][3].toInt() + res[0][4].toInt(); + this->ui->lEMinRundenzeit->setText(QString::number(minLapTime)); + statement = "SELECT id, minimumroundtime FROM rennen order by id DESC limit 1"; res = this->db->getData(statement, 2); this->rennId = res[0][0].toInt(); this->ui->lEMinRundenzeitAktRennen->setText(res[0][1]); } +void WindowsSettings::repaintMinLapTime(){ + int minlapTime = 0; + minlapTime += this->ui->lEMinTimeSec1->text().toInt(); + minlapTime += this->ui->lEMinTimeSec2->text().toInt(); + minlapTime += this->ui->lEMinTimeSec3->text().toInt(); + this->ui->lEMinRundenzeit->setText(QString::number(minlapTime)); + this->ui->lEMinRundenzeitAktRennen->setText(QString::number(minlapTime)); +} void WindowsSettings::AbbrechenSlot(){ this->close(); delete this; } void WindowsSettings::SaveDauerSlot(){ - string statement = "update renndauer set dauer="+this->ui->leRenndauer->text().toStdString()+ - ", mindestrundendauer="+this->ui->lEMinRundenzeit->text().toStdString()+" where id like 1"; + string statement = "update renndauer set " + "dauer="+this->ui->leRenndauer->text().toStdString()+", "+ + "mindestrundendauer="+this->ui->lEMinRundenzeit->text().toStdString()+", "+ + "minsec1="+this->ui->lEMinTimeSec1->text().toStdString()+", "+ + "minsec2="+this->ui->lEMinTimeSec2->text().toStdString()+", "+ + "minsec3="+this->ui->lEMinTimeSec3->text().toStdString()+" "+ + " where id like 1"; + cout << statement << endl; this->db->setData(statement); statement = "update rennen set minimumroundtime="+this->ui->lEMinRundenzeitAktRennen->text().toStdString()+ " where id like "+QString::number(this->rennId).toStdString(); diff --git a/windowssettings.h b/windowssettings.h index 123ebe2..8044a7f 100644 --- a/windowssettings.h +++ b/windowssettings.h @@ -28,6 +28,7 @@ public slots: void AbbrechenSlot(); void StreckeSpeichernSlot(); void SaveDauerAndExitSlot(); + void repaintMinLapTime(); }; diff --git a/windowssettings.ui b/windowssettings.ui index db9bb15..260761c 100644 --- a/windowssettings.ui +++ b/windowssettings.ui @@ -48,7 +48,11 @@ - + + + false + + @@ -60,7 +64,11 @@ - + + + false + + @@ -68,7 +76,63 @@ - + + + + + + + + Mindestzeit Sektor 1 in ms + + + + + + + + + + + + Mindestzeit Sektor 2 in ms + + + + + + + + + + + + Mindestzeit Sektor 3 in ms + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + @@ -327,7 +391,7 @@ 0 0 800 - 20 + 25