From 0b1fa67af4b42c99a2e20a394408ed74ddf162cb Mon Sep 17 00:00:00 2001 From: 0xFEEDC0DE64 <0xFEEDC0DE64@gmail.com> Date: Wed, 28 Feb 2018 18:34:42 +0100 Subject: [PATCH] Implemented timer updating time --- zeiterfassungguilib/mainwindow.cpp | 16 +++++++++++++++- zeiterfassungguilib/mainwindow.h | 6 ++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/zeiterfassungguilib/mainwindow.cpp b/zeiterfassungguilib/mainwindow.cpp index c5e10cf..b514a4a 100644 --- a/zeiterfassungguilib/mainwindow.cpp +++ b/zeiterfassungguilib/mainwindow.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include #include "zeiterfassungapi.h" @@ -33,7 +34,8 @@ MainWindow::MainWindow(ZeiterfassungSettings &settings, ZeiterfassungApi &erfass m_erfassung(erfassung), m_userInfo(userInfo), m_stripFactory(stripFactory), - m_currentStripWidget(Q_NULLPTR) + m_currentStripWidget(Q_NULLPTR), + m_timerId(-1) { ui->setupUi(this); @@ -74,6 +76,8 @@ MainWindow::MainWindow(ZeiterfassungSettings &settings, ZeiterfassungApi &erfass connect(ui->pushButtonStart, &QAbstractButton::pressed, this, &MainWindow::pushButtonStartPressed); connect(ui->pushButtonEnd, &QAbstractButton::pressed, this, &MainWindow::pushButtonEndPressed); + m_timerId = startTimer(60000); + for(quint8 i = 0; i < 7; i++) { m_stripsWidgets[i] = new StripsWidget(*this, ui->widgetWeek); @@ -154,6 +158,16 @@ const std::array &MainWindow::stripsWidgets() const return m_stripsWidgets; } +void MainWindow::timerEvent(QTimerEvent *event) +{ + if(event->timerId() == m_timerId) + { + ui->timeEditTime->setTime(timeNormalise(QTime::currentTime())); + } + else + QMainWindow::timerEvent(event); +} + void MainWindow::getProjectsFinished() { if(m_getProjectsReply->success()) diff --git a/zeiterfassungguilib/mainwindow.h b/zeiterfassungguilib/mainwindow.h index 940a71f..2f1666b 100644 --- a/zeiterfassungguilib/mainwindow.h +++ b/zeiterfassungguilib/mainwindow.h @@ -50,6 +50,10 @@ Q_SIGNALS: void dateChanged(const QDate &date); void refreshEverything(); +protected: + // QObject interface + virtual void timerEvent(QTimerEvent *event) Q_DECL_OVERRIDE; + private Q_SLOTS: void getProjectsFinished(); void pushButtonNowPressed(); @@ -76,4 +80,6 @@ private: std::array m_stripsWidgets; StripsWidget *m_currentStripWidget; + + int m_timerId; };