diff options
Diffstat (limited to 'src/timeoutdialog.cpp')
-rw-r--r-- | src/timeoutdialog.cpp | 48 |
1 files changed, 27 insertions, 21 deletions
diff --git a/src/timeoutdialog.cpp b/src/timeoutdialog.cpp index 418d791..f9787fb 100644 --- a/src/timeoutdialog.cpp +++ b/src/timeoutdialog.cpp @@ -3,40 +3,46 @@ #include "timeoutdialog.h" #include <QProgressBar> +#include <QDebug> TimeOutDialog::TimeOutDialog(int time, QWidget *parent) - : QProgressDialog(parent), _time(time) + : QProgressDialog(parent), _time(time) { - QObject::connect(&_timer, SIGNAL(timeout()), this, SLOT(update())); - QObject::connect(this, SIGNAL(canceled()), this, SLOT(cancel())); - - - // QProgressDialog takes ownership of QProgressBar - QProgressBar *qbar = new QProgressBar(this); - qbar->setFormat(trUtf8("%v seconds")); - qbar->setMaximum(_time); - qbar->setMinimum(0); - qbar->setValue(_time); - setBar(qbar); - _timer.start(1000); + QObject::connect(&_timer, SIGNAL(timeout()), this, SLOT(update())); + QObject::connect(this, SIGNAL(canceled()), this, SLOT(cancel())); + + + // QProgressDialog takes ownership of QProgressBar + QProgressBar *qbar = new QProgressBar(this); + qbar->setFormat(trUtf8("%v seconds")); + qbar->setMaximum(_time); + qbar->setMinimum(0); + qbar->setValue(_time); + setBar(qbar); + _timer.start(1000); } +void TimeOutDialog::hideEvent(QHideEvent *e) +{ + QProgressDialog::hideEvent(e); + _timer.stop(); +} //___________________________________________________________________________ void TimeOutDialog::update() { - if (_time == 0) { - _timer.stop(); - accept(); - } - else - setValue(_time); - --_time; + --_time; + if (_time == 0) { + _timer.stop(); + accept(); + } else { + setValue(_time); + } } //___________________________________________________________________________ void TimeOutDialog::cancel() { - _timer.stop(); + _timer.stop(); } |