add QSettings for config parsing

This commit is contained in:
Anika Raemer 2021-09-25 15:11:02 +02:00
parent f9af4c662a
commit 893a2990af
5 changed files with 71 additions and 31 deletions

View file

@ -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
}