mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-04-24 23:47:20 +00:00
edited dataengine
This commit is contained in:
parent
1a99c0cb3d
commit
2ee6949a59
@ -19,12 +19,12 @@
|
|||||||
#include "extsysmon.h"
|
#include "extsysmon.h"
|
||||||
|
|
||||||
#include <Plasma/DataContainer>
|
#include <Plasma/DataContainer>
|
||||||
|
#include <KDE/KGlobal>
|
||||||
|
#include <KDE/KStandardDirs>
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
#include <QProcess>
|
#include <QProcess>
|
||||||
#include <QTextCodec>
|
#include <QTextCodec>
|
||||||
|
|
||||||
#include <QDebug>
|
|
||||||
|
|
||||||
|
|
||||||
ExtendedSysMon::ExtendedSysMon(QObject* parent, const QVariantList& args)
|
ExtendedSysMon::ExtendedSysMon(QObject* parent, const QVariantList& args)
|
||||||
: Plasma::DataEngine(parent, args)
|
: Plasma::DataEngine(parent, args)
|
||||||
@ -83,28 +83,27 @@ QStringList ExtendedSysMon::sources() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool ExtendedSysMon::readConfiguration()
|
void ExtendedSysMon::readConfiguration()
|
||||||
{
|
{
|
||||||
// pre-setup
|
// pre-setup
|
||||||
configuration[QString("CUSTOM")] = QString("wget -qO- http://ifconfig.me/ip");
|
QMap<QString, QString> rawConfig;
|
||||||
configuration[QString("GPUDEV")] = QString("auto");
|
rawConfig[QString("CUSTOM")] = QString("wget -qO- http://ifconfig.me/ip");
|
||||||
configuration[QString("HDDDEV")] = QString("all");
|
rawConfig[QString("GPUDEV")] = QString("auto");
|
||||||
configuration[QString("MPDADDRESS")] = QString("localhost");
|
rawConfig[QString("HDDDEV")] = QString("all");
|
||||||
configuration[QString("MPDPORT")] = QString("6600");
|
rawConfig[QString("MPDADDRESS")] = QString("localhost");
|
||||||
configuration[QString("PKGCMD")] = QString("pacman -Qu");
|
rawConfig[QString("MPDPORT")] = QString("6600");
|
||||||
configuration[QString("PKGNULL")] = QString("0");
|
rawConfig[QString("PKGCMD")] = QString("pacman -Qu");
|
||||||
|
rawConfig[QString("PKGNULL")] = QString("0");
|
||||||
|
|
||||||
|
QString fileName = KGlobal::dirs()->findResource("config", "extsysmon.conf");
|
||||||
|
QFile confFile(fileName);
|
||||||
|
bool ok = confFile.open(QIODevice::ReadOnly);
|
||||||
|
if (!ok) {
|
||||||
|
configuration = updateConfiguration(rawConfig);
|
||||||
|
return;
|
||||||
|
}
|
||||||
QString fileStr;
|
QString fileStr;
|
||||||
QStringList value;
|
QStringList value;
|
||||||
// FIXME: define configuration file
|
|
||||||
QFile confFile(QString(getenv("HOME")) + QString("/.kde4/share/config/extsysmon.conf"));
|
|
||||||
bool exists = confFile.open(QIODevice::ReadOnly);
|
|
||||||
if (!exists) {
|
|
||||||
confFile.setFileName("/usr/share/config/extsysmon.conf");
|
|
||||||
exists = confFile.open(QIODevice::ReadOnly);
|
|
||||||
if (!exists)
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
while (true) {
|
while (true) {
|
||||||
fileStr = QString(confFile.readLine()).trimmed();
|
fileStr = QString(confFile.readLine()).trimmed();
|
||||||
if (fileStr[0] == QChar('#')) continue;
|
if (fileStr[0] == QChar('#')) continue;
|
||||||
@ -113,24 +112,40 @@ bool ExtendedSysMon::readConfiguration()
|
|||||||
value.clear();
|
value.clear();
|
||||||
for (int i=1; i<fileStr.split(QChar('=')).count(); i++)
|
for (int i=1; i<fileStr.split(QChar('=')).count(); i++)
|
||||||
value.append(fileStr.split(QChar('='))[i]);
|
value.append(fileStr.split(QChar('='))[i]);
|
||||||
configuration[fileStr.split(QChar('='))[0]] = value.join(QChar('='));
|
rawConfig[fileStr.split(QChar('='))[0]] = value.join(QChar('='));
|
||||||
}
|
}
|
||||||
if (confFile.atEnd())
|
if (confFile.atEnd())
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
confFile.close();
|
confFile.close();
|
||||||
qDebug() << configuration;
|
configuration = updateConfiguration(rawConfig);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (configuration[QString("GPUDEV")] == QString("auto"))
|
|
||||||
configuration[QString("GPUDEV")] = getAutoGpu();
|
QMap<QString, QString> ExtendedSysMon::updateConfiguration(const QMap<QString, QString> rawConfig)
|
||||||
if (configuration[QString("HDDDEV")] == QString("all"))
|
{
|
||||||
configuration[QString("HDDDEV")] = getAllHdd();
|
QMap<QString, QString> config;
|
||||||
for (int i=configuration[QString("PKGNULL")].split(QString(","), QString::SkipEmptyParts).count();
|
QString key, value;
|
||||||
i<configuration[QString("PKGCMD")].split(QString(","), QString::SkipEmptyParts).count()+1;
|
// remove spaces and copy source map
|
||||||
|
for (int i=0; i<rawConfig.keys().count(); i++) {
|
||||||
|
key = rawConfig.keys()[i];
|
||||||
|
value = rawConfig[key];
|
||||||
|
key.remove(QChar(' '));
|
||||||
|
if ((key != QString("CUSTOM")) && (key != QString("PKGCMD")))
|
||||||
|
value.remove(QChar(' '));
|
||||||
|
config[key] = value;
|
||||||
|
}
|
||||||
|
// update values
|
||||||
|
if (config[QString("GPUDEV")] == QString("auto"))
|
||||||
|
config[QString("GPUDEV")] = getAutoGpu();
|
||||||
|
if (config[QString("HDDDEV")] == QString("all"))
|
||||||
|
config[QString("HDDDEV")] = getAllHdd();
|
||||||
|
for (int i=config[QString("PKGNULL")].split(QString(","), QString::SkipEmptyParts).count();
|
||||||
|
i<config[QString("PKGCMD")].split(QString(","), QString::SkipEmptyParts).count()+1;
|
||||||
i++)
|
i++)
|
||||||
configuration[QString("PKGNULL")] += QString(",0");
|
config[QString("PKGNULL")] += QString(",0");
|
||||||
|
return config;
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ public:
|
|||||||
const int pkgNull = 0);
|
const int pkgNull = 0);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool readConfiguration();
|
void readConfiguration();
|
||||||
bool sourceRequestEvent(const QString &name);
|
bool sourceRequestEvent(const QString &name);
|
||||||
bool updateSourceEvent(const QString &source);
|
bool updateSourceEvent(const QString &source);
|
||||||
QStringList sources() const;
|
QStringList sources() const;
|
||||||
@ -50,6 +50,7 @@ private:
|
|||||||
// reread configuration
|
// reread configuration
|
||||||
QString getAllHdd();
|
QString getAllHdd();
|
||||||
QString getAutoGpu();
|
QString getAutoGpu();
|
||||||
|
QMap<QString, QString> updateConfiguration(const QMap<QString, QString> rawConfig);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* EXTSYSMON_H */
|
#endif /* EXTSYSMON_H */
|
||||||
|
Loading…
Reference in New Issue
Block a user