Index: sources/maintimer.cpp =================================================================== diff -u -r5194f3afffb28dac90a7ca4153b6a0ca2f239387 -rc933552983a659ca4cc351ff4d43d07319adab1e --- sources/maintimer.cpp (.../maintimer.cpp) (revision 5194f3afffb28dac90a7ca4153b6a0ca2f239387) +++ sources/maintimer.cpp (.../maintimer.cpp) (revision c933552983a659ca4cc351ff4d43d07319adab1e) @@ -18,27 +18,30 @@ //Project -// Class instance init -MainTimer *MainTimer::_instance = nullptr; +// Singleton +SINGLETON_INIT(MainTimer) +/*! + * \brief MainTimer Constructor + * \param parent + */ MainTimer::MainTimer(QObject *parent) : QObject(parent) { _timer = new QTimer(this); } void MainTimer::init() { - connect(_timer, SIGNAL(timeout()), this, SLOT(onTimeout())); - connect(_timer, SIGNAL(timeout()), this, SIGNAL(timeout())); + connect(_timer, SIGNAL(timeout()), this, SLOT( onTimeout())); + connect(_timer, SIGNAL(timeout()), this, SIGNAL(didTimeout())); _timer->start(_timeout); } -MainTimer *MainTimer::I() +void MainTimer::quit() { - if (!_instance) { - _instance = new MainTimer(); - } - return _instance; + _timer->stop(); + delete _timer; + _timer = nullptr; } void MainTimer::onTimeout()