add QSettings for config parsing
This commit is contained in:
parent
f9af4c662a
commit
893a2990af
5 changed files with 71 additions and 31 deletions
|
|
@ -1,14 +1,19 @@
|
|||
#include "EnergySaver.h"
|
||||
|
||||
#include <QDebug>
|
||||
#include <QFileInfo>
|
||||
#include <QProcess>
|
||||
#include <iostream>
|
||||
|
||||
void EnergySaver::init(int interval)
|
||||
void EnergySaver::init(int interval, const QString &shutdownScript)
|
||||
{
|
||||
EnergySaver* saver = instance();
|
||||
saver->initTimer(interval*1000);
|
||||
saver->restartTimer();
|
||||
QFileInfo script(shutdownScript);
|
||||
if(script.exists()){
|
||||
auto saver = instance();
|
||||
saver->setShutdownScript(shutdownScript);
|
||||
saver->initTimer(interval*1000);
|
||||
saver->restartTimer();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -39,13 +44,18 @@ void EnergySaver::initTimer(int interval)
|
|||
mTimer.setSingleShot(true);
|
||||
}
|
||||
|
||||
void EnergySaver::setShutdownScript(const QString &shutdownScript)
|
||||
{
|
||||
mShutdownScript = shutdownScript;
|
||||
}
|
||||
|
||||
|
||||
void EnergySaver::onTimeout()
|
||||
{
|
||||
std::cout << "Shutting down.";
|
||||
#ifndef _DEBUG
|
||||
QProcess p;
|
||||
p.start("/usr/local/sbin/do_shutdown.sh");
|
||||
p.start(mShutdownScript);
|
||||
p.waitForFinished();
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue