mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-04-24 23:47:20 +00:00
rewrite to iterators library part
This commit is contained in:
parent
08cb7d9abe
commit
3122c2fa8c
@ -196,8 +196,8 @@ void AbstractExtItem::readConfiguration()
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
for (int i=m_dirs.count()-1; i>=0; i--) {
|
for (int i=m_dirs.count()-1; i>=0; i--) {
|
||||||
if (!QDir(m_dirs[i]).entryList(QDir::Files).contains(m_fileName)) continue;
|
if (!QDir(m_dirs.at(i)).entryList(QDir::Files).contains(m_fileName)) continue;
|
||||||
QSettings settings(QString("%1/%2").arg(m_dirs[i]).arg(m_fileName), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(m_dirs.at(i)).arg(m_fileName), QSettings::IniFormat);
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
setName(settings.value(QString("Name"), m_name).toString());
|
setName(settings.value(QString("Name"), m_name).toString());
|
||||||
@ -215,15 +215,14 @@ bool AbstractExtItem::tryDelete() const
|
|||||||
{
|
{
|
||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
for (int i=0; i<m_dirs.count(); i++) {
|
foreach(QString dir, m_dirs) {
|
||||||
bool status = QFile::remove(QString("%1/%2").arg(m_dirs[i]).arg(m_fileName));
|
bool status = QFile::remove(QString("%1/%2").arg(dir).arg(m_fileName));
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Remove file" << QString("%1/%2").arg(m_dirs[i]).arg(m_fileName) << status;
|
if (debug) qDebug() << PDEBUG << ":" << "Remove file" << QString("%1/%2").arg(dir).arg(m_fileName) << status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// check if exists
|
// check if exists
|
||||||
for (int i=0; i<m_dirs.count(); i++)
|
foreach(QString dir, m_dirs)
|
||||||
if (QFile::exists(QString("%1/%2").arg(m_dirs[i]).arg(m_fileName))) return false;
|
if (QFile::exists(QString("%1/%2").arg(dir).arg(m_fileName))) return false;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -232,7 +231,7 @@ void AbstractExtItem::writeConfiguration() const
|
|||||||
{
|
{
|
||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
QSettings settings(QString("%1/%2").arg(m_dirs[0]).arg(m_fileName), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(m_dirs.first()).arg(m_fileName), QSettings::IniFormat);
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
|
@ -76,7 +76,7 @@ public:
|
|||||||
|
|
||||||
int originalItem = -1;
|
int originalItem = -1;
|
||||||
for (int i=0; i<m_items.count(); i++) {
|
for (int i=0; i<m_items.count(); i++) {
|
||||||
if (m_items[i]->fileName() != item->text()) continue;
|
if (m_items.at(i)->fileName() != item->text()) continue;
|
||||||
originalItem = i;
|
originalItem = i;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -96,11 +96,9 @@ public:
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
QList<int> tagList;
|
QList<int> tagList;
|
||||||
for (int i=0; i<m_items.count(); i++)
|
foreach(T *item, m_items) tagList.append(item->number());
|
||||||
tagList.append(m_items[i]->number());
|
|
||||||
int number = 0;
|
int number = 0;
|
||||||
while (tagList.contains(number))
|
while (tagList.contains(number)) number++;
|
||||||
number++;
|
|
||||||
|
|
||||||
return number;
|
return number;
|
||||||
};
|
};
|
||||||
@ -128,14 +126,14 @@ private:
|
|||||||
QStandardPaths::LocateDirectory);
|
QStandardPaths::LocateDirectory);
|
||||||
QStringList names;
|
QStringList names;
|
||||||
QList<T *> items;
|
QList<T *> items;
|
||||||
for (int i=0; i<dirs.count(); i++) {
|
foreach(QString dir, dirs) {
|
||||||
QStringList files = QDir(dirs[i]).entryList(QDir::Files, QDir::Name);
|
QStringList files = QDir(dir).entryList(QDir::Files, QDir::Name);
|
||||||
for (int j=0; j<files.count(); j++) {
|
foreach(QString file, files) {
|
||||||
if (!files[j].endsWith(QString(".desktop"))) continue;
|
if (!file.endsWith(QString(".desktop"))) continue;
|
||||||
if (names.contains(files[j])) continue;
|
if (names.contains(file)) continue;
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Found file" << files[j] << "in" << dirs[i];
|
if (debug) qDebug() << PDEBUG << ":" << "Found file" << file << "in" << dir;
|
||||||
names.append(files[j]);
|
names.append(file);
|
||||||
items.append(new T(this, files[j], dirs, debug));
|
items.append(new T(this, file, dirs, debug));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -145,12 +143,12 @@ private:
|
|||||||
void repaint()
|
void repaint()
|
||||||
{
|
{
|
||||||
widgetDialog->clear();
|
widgetDialog->clear();
|
||||||
for (int i=0; i<m_items.count(); i++) {
|
foreach(T *_item, m_items) {
|
||||||
QListWidgetItem *item = new QListWidgetItem(m_items[i]->fileName(), widgetDialog);
|
QListWidgetItem *item = new QListWidgetItem(_item->fileName(), widgetDialog);
|
||||||
QStringList tooltip;
|
QStringList tooltip;
|
||||||
tooltip.append(i18n("Name: %1", m_items[i]->name()));
|
tooltip.append(i18n("Name: %1", _item->name()));
|
||||||
tooltip.append(i18n("Comment: %1", m_items[i]->comment()));
|
tooltip.append(i18n("Comment: %1", _item->comment()));
|
||||||
tooltip.append(i18n("Identity: %1", m_items[i]->uniq()));
|
tooltip.append(i18n("Identity: %1", _item->uniq()));
|
||||||
item->setToolTip(tooltip.join(QChar('\n')));
|
item->setToolTip(tooltip.join(QChar('\n')));
|
||||||
widgetDialog->addItem(item);
|
widgetDialog->addItem(item);
|
||||||
}
|
}
|
||||||
|
@ -120,8 +120,8 @@ void ExtQuotes::readConfiguration()
|
|||||||
AbstractExtItem::readConfiguration();
|
AbstractExtItem::readConfiguration();
|
||||||
|
|
||||||
for (int i=directories().count()-1; i>=0; i--) {
|
for (int i=directories().count()-1; i>=0; i--) {
|
||||||
if (!QDir(directories()[i]).entryList(QDir::Files).contains(fileName())) continue;
|
if (!QDir(directories().at(i)).entryList(QDir::Files).contains(fileName())) continue;
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[i]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().at(i)).arg(fileName()), QSettings::IniFormat);
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
setTicker(settings.value(QString("X-AW-Ticker"), m_ticker).toString());
|
setTicker(settings.value(QString("X-AW-Ticker"), m_ticker).toString());
|
||||||
@ -188,7 +188,7 @@ void ExtQuotes::writeConfiguration() const
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
AbstractExtItem::writeConfiguration();
|
AbstractExtItem::writeConfiguration();
|
||||||
|
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[0]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().first()).arg(fileName()), QSettings::IniFormat);
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
|
@ -167,8 +167,8 @@ void ExtScript::setFilters(const QStringList _filters)
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Filters" << _filters;
|
if (debug) qDebug() << PDEBUG << ":" << "Filters" << _filters;
|
||||||
|
|
||||||
for (int i=0; i<_filters.count(); i++)
|
foreach(QString filter, _filters)
|
||||||
updateFilter(_filters[i]);
|
updateFilter(filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -218,15 +218,15 @@ QString ExtScript::applyFilters(QString _value) const
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Value" << _value;
|
if (debug) qDebug() << PDEBUG << ":" << "Value" << _value;
|
||||||
|
|
||||||
for (int i=0; i<m_filters.count(); i++) {
|
foreach(QString filt, m_filters) {
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Found filter" << m_filters[i];
|
if (debug) qDebug() << PDEBUG << ":" << "Found filter" << filt;
|
||||||
QVariantMap filter = jsonFilters[m_filters[i]].toMap();
|
QVariantMap filter = jsonFilters[filt].toMap();
|
||||||
if (filter.isEmpty()) {
|
if (filter.isEmpty()) {
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Could not find filter in the json";
|
if (debug) qDebug() << PDEBUG << ":" << "Could not find filter in the json";
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
for (int j=0; j<filter.keys().count(); j++)
|
foreach(QString f, filter.keys())
|
||||||
_value.replace(filter.keys()[j], filter[filter.keys()[j]].toString());
|
_value.replace(f, filter[f].toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
return _value;
|
return _value;
|
||||||
@ -254,8 +254,8 @@ void ExtScript::readConfiguration()
|
|||||||
AbstractExtItem::readConfiguration();
|
AbstractExtItem::readConfiguration();
|
||||||
|
|
||||||
for (int i=directories().count()-1; i>=0; i--) {
|
for (int i=directories().count()-1; i>=0; i--) {
|
||||||
if (!QDir(directories()[i]).entryList(QDir::Files).contains(fileName())) continue;
|
if (!QDir(directories().at(i)).entryList(QDir::Files).contains(fileName())) continue;
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[i]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().at(i)).arg(fileName()), QSettings::IniFormat);
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
setExecutable(settings.value(QString("Exec"), m_executable).toString());
|
setExecutable(settings.value(QString("Exec"), m_executable).toString());
|
||||||
@ -367,7 +367,7 @@ void ExtScript::writeConfiguration() const
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
AbstractExtItem::writeConfiguration();
|
AbstractExtItem::writeConfiguration();
|
||||||
|
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[0]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().first()).arg(fileName()), QSettings::IniFormat);
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
|
@ -126,8 +126,8 @@ void ExtUpgrade::readConfiguration()
|
|||||||
AbstractExtItem::readConfiguration();
|
AbstractExtItem::readConfiguration();
|
||||||
|
|
||||||
for (int i=directories().count()-1; i>=0; i--) {
|
for (int i=directories().count()-1; i>=0; i--) {
|
||||||
if (!QDir(directories()[i]).entryList(QDir::Files).contains(fileName())) continue;
|
if (!QDir(directories().at(i)).entryList(QDir::Files).contains(fileName())) continue;
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[i]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().at(i)).arg(fileName()), QSettings::IniFormat);
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
setExecutable(settings.value(QString("Exec"), m_executable).toString());
|
setExecutable(settings.value(QString("Exec"), m_executable).toString());
|
||||||
@ -192,7 +192,7 @@ void ExtUpgrade::writeConfiguration() const
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
AbstractExtItem::writeConfiguration();
|
AbstractExtItem::writeConfiguration();
|
||||||
|
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[0]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().first()).arg(fileName()), QSettings::IniFormat);
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
|
@ -253,8 +253,8 @@ void ExtWeather::readConfiguration()
|
|||||||
AbstractExtItem::readConfiguration();
|
AbstractExtItem::readConfiguration();
|
||||||
|
|
||||||
for (int i=directories().count()-1; i>=0; i--) {
|
for (int i=directories().count()-1; i>=0; i--) {
|
||||||
if (!QDir(directories()[i]).entryList(QDir::Files).contains(fileName())) continue;
|
if (!QDir(directories().at(i)).entryList(QDir::Files).contains(fileName())) continue;
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[i]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().at(i)).arg(fileName()), QSettings::IniFormat);
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
setCity(settings.value(QString("X-AW-City"), m_city).toString());
|
setCity(settings.value(QString("X-AW-City"), m_city).toString());
|
||||||
@ -327,7 +327,7 @@ void ExtWeather::writeConfiguration() const
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
AbstractExtItem::writeConfiguration();
|
AbstractExtItem::writeConfiguration();
|
||||||
|
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[0]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().first()).arg(fileName()), QSettings::IniFormat);
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
@ -368,10 +368,9 @@ void ExtWeather::weatherReplyReceived(QNetworkReply *reply)
|
|||||||
data = parseSingleJson(json);
|
data = parseSingleJson(json);
|
||||||
else {
|
else {
|
||||||
QVariantList list = json[QString("list")].toList();
|
QVariantList list = json[QString("list")].toList();
|
||||||
data = parseSingleJson(list.count() <= m_ts ? list[m_ts-1].toMap() : list.last().toMap());
|
data = parseSingleJson(list.count() <= m_ts ? list.at(m_ts-1).toMap() : list.last().toMap());
|
||||||
}
|
}
|
||||||
for (int i=0; i<data.keys().count(); i++)
|
foreach(QString key, data.keys()) values[tag(key)] = data[key];
|
||||||
values[tag(data.keys()[i])] = data[data.keys()[i]];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -383,15 +382,15 @@ QVariantHash ExtWeather::parseSingleJson(const QVariantMap json) const
|
|||||||
|
|
||||||
// weather status
|
// weather status
|
||||||
QVariantList weather = json[QString("weather")].toList();
|
QVariantList weather = json[QString("weather")].toList();
|
||||||
if (weather.count() > 0) {
|
if (!weather.isEmpty()) {
|
||||||
int _id = weather[0].toMap()[QString("id")].toInt();
|
int _id = weather.first().toMap()[QString("id")].toInt();
|
||||||
output[QString("weatherId")] = _id;
|
output[QString("weatherId")] = _id;
|
||||||
output[QString("weather")] = weatherFromInt(_id);
|
output[QString("weather")] = weatherFromInt(_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
// main data
|
// main data
|
||||||
QVariantMap mainWeather = json[QString("main")].toMap();
|
QVariantMap mainWeather = json[QString("main")].toMap();
|
||||||
if (weather.count() > 0) {
|
if (!weather.isEmpty()) {
|
||||||
output[QString("humidity")] = mainWeather[QString("humidity")].toFloat();
|
output[QString("humidity")] = mainWeather[QString("humidity")].toFloat();
|
||||||
output[QString("pressure")] = mainWeather[QString("pressure")].toFloat();
|
output[QString("pressure")] = mainWeather[QString("pressure")].toFloat();
|
||||||
output[QString("temperature")] = mainWeather[QString("temp")].toFloat();
|
output[QString("temperature")] = mainWeather[QString("temp")].toFloat();
|
||||||
|
@ -369,8 +369,8 @@ void GraphicalItem::readConfiguration()
|
|||||||
AbstractExtItem::readConfiguration();
|
AbstractExtItem::readConfiguration();
|
||||||
|
|
||||||
for (int i=directories().count()-1; i>=0; i--) {
|
for (int i=directories().count()-1; i>=0; i--) {
|
||||||
if (!QDir(directories()[i]).entryList(QDir::Files).contains(fileName())) continue;
|
if (!QDir(directories().at(i)).entryList(QDir::Files).contains(fileName())) continue;
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[i]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().at(i)).arg(fileName()), QSettings::IniFormat);
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
setBar(settings.value(QString("X-AW-Value"), m_bar).toString());
|
setBar(settings.value(QString("X-AW-Value"), m_bar).toString());
|
||||||
@ -443,7 +443,7 @@ void GraphicalItem::writeConfiguration() const
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
AbstractExtItem::writeConfiguration();
|
AbstractExtItem::writeConfiguration();
|
||||||
|
|
||||||
QSettings settings(QString("%1/%2").arg(directories()[0]).arg(fileName()), QSettings::IniFormat);
|
QSettings settings(QString("%1/%2").arg(directories().first()).arg(fileName()), QSettings::IniFormat);
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName();
|
||||||
|
|
||||||
settings.beginGroup(QString("Desktop Entry"));
|
settings.beginGroup(QString("Desktop Entry"));
|
||||||
@ -487,10 +487,10 @@ QColor GraphicalItem::stringToColor(const QString _color) const
|
|||||||
QStringList listColor = _color.split(QChar(','));
|
QStringList listColor = _color.split(QChar(','));
|
||||||
while (listColor.count() < 4)
|
while (listColor.count() < 4)
|
||||||
listColor.append(QString("0"));
|
listColor.append(QString("0"));
|
||||||
qcolor.setRed(listColor[0].toInt());
|
qcolor.setRed(listColor.at(0).toInt());
|
||||||
qcolor.setGreen(listColor[1].toInt());
|
qcolor.setGreen(listColor.at(1).toInt());
|
||||||
qcolor.setBlue(listColor[2].toInt());
|
qcolor.setBlue(listColor.at(2).toInt());
|
||||||
qcolor.setAlpha(listColor[3].toInt());
|
qcolor.setAlpha(listColor.at(3).toInt());
|
||||||
|
|
||||||
return qcolor;
|
return qcolor;
|
||||||
}
|
}
|
||||||
|
@ -116,12 +116,12 @@ QString ExtendedSysMon::getAutoMpris() const
|
|||||||
|
|
||||||
QDBusMessage listServices = QDBusConnection::sessionBus().interface()->call(QDBus::BlockWithGui, QString("ListNames"));
|
QDBusMessage listServices = QDBusConnection::sessionBus().interface()->call(QDBus::BlockWithGui, QString("ListNames"));
|
||||||
if (listServices.arguments().isEmpty()) return QString();
|
if (listServices.arguments().isEmpty()) return QString();
|
||||||
QStringList arguments = listServices.arguments().at(0).toStringList();
|
QStringList arguments = listServices.arguments().first().toStringList();
|
||||||
|
|
||||||
for (int i=0; i<arguments.count(); i++) {
|
foreach(QString arg, arguments) {
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Service found" << arguments.at(i);
|
if (debug) qDebug() << PDEBUG << ":" << "Service found" << arg;
|
||||||
if (!arguments.at(i).startsWith(QString("org.mpris.MediaPlayer2."))) continue;
|
if (!arg.startsWith(QString("org.mpris.MediaPlayer2."))) continue;
|
||||||
QString service = arguments.at(i);
|
QString service = arg;
|
||||||
service.remove(QString("org.mpris.MediaPlayer2."));
|
service.remove(QString("org.mpris.MediaPlayer2."));
|
||||||
return service;
|
return service;
|
||||||
}
|
}
|
||||||
@ -201,10 +201,9 @@ QHash<QString, QString> ExtendedSysMon::updateConfiguration(QHash<QString, QStri
|
|||||||
QStringList deviceList = rawConfig[QString("HDDDEV")].split(QChar(','), QString::SkipEmptyParts);
|
QStringList deviceList = rawConfig[QString("HDDDEV")].split(QChar(','), QString::SkipEmptyParts);
|
||||||
QStringList devices;
|
QStringList devices;
|
||||||
QRegExp diskRegexp = QRegExp("^/dev/[hms]d[a-z]$");
|
QRegExp diskRegexp = QRegExp("^/dev/[hms]d[a-z]$");
|
||||||
for (int i=0; i<deviceList.count(); i++)
|
foreach(QString device, deviceList)
|
||||||
if ((QFile::exists(deviceList.at(i))) &&
|
if ((QFile::exists(device)) && (diskRegexp.indexIn(device) > -1))
|
||||||
(diskRegexp.indexIn(deviceList.at(i)) > -1))
|
devices.append(device);
|
||||||
devices.append(deviceList.at(i));
|
|
||||||
if (devices.isEmpty())
|
if (devices.isEmpty())
|
||||||
rawConfig[QString("HDDDEV")] = allHddDevices.join(QChar(','));
|
rawConfig[QString("HDDDEV")] = allHddDevices.join(QChar(','));
|
||||||
else
|
else
|
||||||
@ -216,9 +215,8 @@ QHash<QString, QString> ExtendedSysMon::updateConfiguration(QHash<QString, QStri
|
|||||||
(rawConfig[QString("PLAYER")] != QString("disable")))
|
(rawConfig[QString("PLAYER")] != QString("disable")))
|
||||||
rawConfig[QString("PLAYER")] = QString("mpris");
|
rawConfig[QString("PLAYER")] = QString("mpris");
|
||||||
|
|
||||||
for (int i=0; i<rawConfig.keys().count(); i++)
|
foreach(QString key, rawConfig.keys())
|
||||||
if (debug) qDebug() << PDEBUG << ":" <<
|
if (debug) qDebug() << PDEBUG << ":" << key << "=" << rawConfig[key];
|
||||||
rawConfig.keys().at(i) + QString("=") + rawConfig[rawConfig.keys().at(i)];
|
|
||||||
return rawConfig;
|
return rawConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -304,23 +302,20 @@ float ExtendedSysMon::getGpu(const QString device) const
|
|||||||
|
|
||||||
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed();
|
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed();
|
||||||
if (configuration[QString("GPUDEV")] == QString("nvidia"))
|
if (configuration[QString("GPUDEV")] == QString("nvidia"))
|
||||||
for (int i=0; i<qoutput.split(QChar('\n'), QString::SkipEmptyParts).count(); i++) {
|
foreach(QString str, qoutput.split(QChar('\n'), QString::SkipEmptyParts)) {
|
||||||
if (qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i).contains(QString("<gpu_util>"))) {
|
if (!str.contains(QString("<gpu_util>"))) continue;
|
||||||
QString load = qoutput.split(QChar('\n'), QString::SkipEmptyParts)[i]
|
QString load = str.remove(QString("<gpu_util>")).remove(QString("</gpu_util>"))
|
||||||
.remove(QString("<gpu_util>"))
|
.remove(QChar('%'));
|
||||||
.remove(QString("</gpu_util>"))
|
value = load.toFloat();
|
||||||
.remove(QChar('%'));
|
break;
|
||||||
value = load.toFloat();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if (configuration[QString("GPUDEV")] == QString("ati"))
|
else if (configuration[QString("GPUDEV")] == QString("ati"))
|
||||||
for (int i=0; i<qoutput.split(QChar('\n'), QString::SkipEmptyParts).count(); i++) {
|
foreach(QString str, qoutput.split(QChar('\n'), QString::SkipEmptyParts)) {
|
||||||
if (qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i).contains(QString("load"))) {
|
if (!str.contains(QString("load"))) continue;
|
||||||
QString load = qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i)
|
QString load = str.split(QChar(' '), QString::SkipEmptyParts)[3]
|
||||||
.split(QChar(' '), QString::SkipEmptyParts)[3]
|
.remove(QChar('%'));
|
||||||
.remove(QChar('%'));
|
value = load.toFloat();
|
||||||
value = load.toFloat();
|
break;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return value;
|
return value;
|
||||||
@ -347,21 +342,18 @@ float ExtendedSysMon::getGpuTemp(const QString device) const
|
|||||||
|
|
||||||
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output);
|
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output);
|
||||||
if (configuration[QString("GPUDEV")] == QString("nvidia"))
|
if (configuration[QString("GPUDEV")] == QString("nvidia"))
|
||||||
for (int i=0; i<qoutput.split(QChar('\n'), QString::SkipEmptyParts).count(); i++) {
|
foreach(QString str, qoutput.split(QChar('\n'), QString::SkipEmptyParts)) {
|
||||||
if (qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i).contains(QString("<gpu_temp>"))) {
|
if (!str.contains(QString("<gpu_temp>"))) continue;
|
||||||
QString temp = qoutput.split(QChar('\n'), QString::SkipEmptyParts)[i]
|
QString temp = str.remove(QString("<gpu_temp>")).remove(QString("C</gpu_temp>"));
|
||||||
.remove(QString("<gpu_temp>"))
|
value = temp.toFloat();
|
||||||
.remove(QString("C</gpu_temp>"));
|
break;
|
||||||
value = temp.toFloat();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if (configuration[QString("GPUDEV")] == QString("ati"))
|
else if (configuration[QString("GPUDEV")] == QString("ati"))
|
||||||
for (int i=0; i<qoutput.split(QChar('\n'), QString::SkipEmptyParts).count(); i++) {
|
foreach(QString str, qoutput.split(QChar('\n'), QString::SkipEmptyParts)) {
|
||||||
if (qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i).contains(QString("Temperature"))) {
|
if (!str.contains(QString("Temperature"))) continue;
|
||||||
QString temp = qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i)
|
QString temp = str.split(QChar(' '), QString::SkipEmptyParts).at(4);
|
||||||
.split(QChar(' '), QString::SkipEmptyParts).at(4);
|
value = temp.toFloat();
|
||||||
value = temp.toFloat();
|
break;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return value;
|
return value;
|
||||||
@ -384,10 +376,10 @@ float ExtendedSysMon::getHddTemp(const QString cmd, const QString device) const
|
|||||||
|
|
||||||
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed();
|
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed();
|
||||||
if (smartctl) {
|
if (smartctl) {
|
||||||
for (int i=0; i<qoutput.split(QChar('\n'), QString::SkipEmptyParts).count(); i++) {
|
foreach(QString str, qoutput.split(QChar('\n'), QString::SkipEmptyParts)) {
|
||||||
if (!qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i).startsWith(QString("194"))) continue;
|
if (!str.startsWith(QString("194"))) continue;
|
||||||
if (qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i).split(QChar(' '), QString::SkipEmptyParts).count() < 9) break;
|
if (str.split(QChar(' '), QString::SkipEmptyParts).count() < 9) break;
|
||||||
value = qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i).split(QChar(' '), QString::SkipEmptyParts).at(9).toFloat();
|
value = str.split(QChar(' '), QString::SkipEmptyParts).at(9).toFloat();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -408,11 +400,11 @@ QString ExtendedSysMon::getNetworkDevice() const
|
|||||||
|
|
||||||
QString device = QString("lo");
|
QString device = QString("lo");
|
||||||
QList<QNetworkInterface> rawInterfaceList = QNetworkInterface::allInterfaces();
|
QList<QNetworkInterface> rawInterfaceList = QNetworkInterface::allInterfaces();
|
||||||
for (int i=0; i<rawInterfaceList.count(); i++)
|
foreach(QNetworkInterface interface, rawInterfaceList)
|
||||||
if ((rawInterfaceList.at(i).flags().testFlag(QNetworkInterface::IsUp)) &&
|
if ((interface.flags().testFlag(QNetworkInterface::IsUp)) &&
|
||||||
(!rawInterfaceList.at(i).flags().testFlag(QNetworkInterface::IsLoopBack)) &&
|
(!interface.flags().testFlag(QNetworkInterface::IsLoopBack)) &&
|
||||||
(!rawInterfaceList.at(i).flags().testFlag(QNetworkInterface::IsPointToPoint))) {
|
(!interface.flags().testFlag(QNetworkInterface::IsPointToPoint))) {
|
||||||
device = rawInterfaceList.at(i).name();
|
device = interface.name();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -470,19 +462,17 @@ QVariantHash ExtendedSysMon::getPlayerMpdInfo(const QString mpdAddress, const QS
|
|||||||
if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error;
|
if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error;
|
||||||
|
|
||||||
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed();
|
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed();
|
||||||
QString qstr = QString("");
|
foreach(QString str, qoutput.split(QChar('\n'), QString::SkipEmptyParts)) {
|
||||||
for (int i=0; i<qoutput.split(QChar('\n'), QString::SkipEmptyParts).count(); i++) {
|
if (str.split(QString(": "), QString::SkipEmptyParts).count() > 1) {
|
||||||
qstr = qoutput.split(QChar('\n'), QString::SkipEmptyParts).at(i);
|
if (str.split(QString(": "), QString::SkipEmptyParts).first() == QString("Album"))
|
||||||
if (qstr.split(QString(": "), QString::SkipEmptyParts).count() > 1) {
|
info[QString("album")] = str.split(QString(": "), QString::SkipEmptyParts)[1].trimmed();
|
||||||
if (qstr.split(QString(": "), QString::SkipEmptyParts).at(0) == QString("Album"))
|
else if (str.split(QString(": "), QString::SkipEmptyParts).first() == QString("Artist"))
|
||||||
info[QString("album")] = qstr.split(QString(": "), QString::SkipEmptyParts)[1].trimmed();
|
info[QString("artist")] = str.split(QString(": "), QString::SkipEmptyParts)[1].trimmed();
|
||||||
else if (qstr.split(QString(": "), QString::SkipEmptyParts).at(0) == QString("Artist"))
|
else if (str.split(QString(": "), QString::SkipEmptyParts).first() == QString("time")) {
|
||||||
info[QString("artist")] = qstr.split(QString(": "), QString::SkipEmptyParts)[1].trimmed();
|
info[QString("duration")] = str.split(QString(": "), QString::SkipEmptyParts)[1].trimmed().split(QString(":"))[0];
|
||||||
else if (qstr.split(QString(": "), QString::SkipEmptyParts).at(0) == QString("time")) {
|
info[QString("progress")] = str.split(QString(": "), QString::SkipEmptyParts)[1].trimmed().split(QString(":"))[1];
|
||||||
info[QString("duration")] = qstr.split(QString(": "), QString::SkipEmptyParts)[1].trimmed().split(QString(":"))[0];
|
} else if (str.split(QString(": "), QString::SkipEmptyParts).first() == QString("Title"))
|
||||||
info[QString("progress")] = qstr.split(QString(": "), QString::SkipEmptyParts)[1].trimmed().split(QString(":"))[1];
|
info[QString("title")] = str.split(QString(": "), QString::SkipEmptyParts)[1].trimmed();
|
||||||
} else if (qstr.split(QString(": "), QString::SkipEmptyParts).at(0) == QString("Title"))
|
|
||||||
info[QString("title")] = qstr.split(QString(": "), QString::SkipEmptyParts)[1].trimmed();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -518,7 +508,7 @@ QVariantHash ExtendedSysMon::getPlayerMprisInfo(const QString mpris) const
|
|||||||
if (debug) qDebug() << PDEBUG << ":" << "Error message" << response.errorMessage();
|
if (debug) qDebug() << PDEBUG << ":" << "Error message" << response.errorMessage();
|
||||||
} else {
|
} else {
|
||||||
// another portion of dirty magic
|
// another portion of dirty magic
|
||||||
QVariantHash map = qdbus_cast<QVariantHash>(response.arguments().at(0)
|
QVariantHash map = qdbus_cast<QVariantHash>(response.arguments().first()
|
||||||
.value<QDBusVariant>().variant()
|
.value<QDBusVariant>().variant()
|
||||||
.value<QDBusArgument>());
|
.value<QDBusArgument>());
|
||||||
info[QString("album")] = map.value(QString("xesam:album"), QString("unknown"));
|
info[QString("album")] = map.value(QString("xesam:album"), QString("unknown"));
|
||||||
@ -536,7 +526,7 @@ QVariantHash ExtendedSysMon::getPlayerMprisInfo(const QString mpris) const
|
|||||||
if (debug) qDebug() << PDEBUG << ":" << "Error message" << response.errorMessage();
|
if (debug) qDebug() << PDEBUG << ":" << "Error message" << response.errorMessage();
|
||||||
} else
|
} else
|
||||||
// this cast is simpler than the previous one ;)
|
// this cast is simpler than the previous one ;)
|
||||||
info[QString("progress")] = response.arguments().at(0).value<QDBusVariant>()
|
info[QString("progress")] = response.arguments().first().value<QDBusVariant>()
|
||||||
.variant().toLongLong() / (1000 * 1000);
|
.variant().toLongLong() / (1000 * 1000);
|
||||||
|
|
||||||
return info;
|
return info;
|
||||||
@ -552,10 +542,10 @@ QVariantHash ExtendedSysMon::getPsStats() const
|
|||||||
QStringList directories = allDirectories.filter(QRegExp(QString("(\\d+)")));
|
QStringList directories = allDirectories.filter(QRegExp(QString("(\\d+)")));
|
||||||
QStringList running;
|
QStringList running;
|
||||||
|
|
||||||
for (int i=0; i<directories.count(); i++) {
|
foreach(QString dir, directories) {
|
||||||
QFile statusFile(QString("/proc/%1/status").arg(directories.at(i)));
|
QFile statusFile(QString("/proc/%1/status").arg(dir));
|
||||||
if (!statusFile.open(QIODevice::ReadOnly)) continue;
|
if (!statusFile.open(QIODevice::ReadOnly)) continue;
|
||||||
QFile cmdFile(QString("/proc/%1/cmdline").arg(directories.at(i)));
|
QFile cmdFile(QString("/proc/%1/cmdline").arg(dir));
|
||||||
if (!cmdFile.open(QIODevice::ReadOnly)) continue;
|
if (!cmdFile.open(QIODevice::ReadOnly)) continue;
|
||||||
|
|
||||||
QString output = statusFile.readAll();
|
QString output = statusFile.readAll();
|
||||||
@ -587,18 +577,15 @@ bool ExtendedSysMon::updateSourceEvent(const QString &source)
|
|||||||
|
|
||||||
if (source == QString("battery")) {
|
if (source == QString("battery")) {
|
||||||
QVariantHash battery = getBattery(configuration[QString("ACPIPATH")]);
|
QVariantHash battery = getBattery(configuration[QString("ACPIPATH")]);
|
||||||
for (int i=0; i<battery.keys().count(); i++)
|
foreach(QString key, battery.keys()) setData(source, key, battery[key]);
|
||||||
setData(source, battery.keys().at(i), battery[battery.keys().at(i)]);
|
|
||||||
} else if (source == QString("custom")) {
|
} else if (source == QString("custom")) {
|
||||||
for (int i=0; i<externalScripts->items().count(); i++) {
|
foreach(ExtScript *script, externalScripts->items()) {
|
||||||
QVariantHash data = externalScripts->items().at(i)->run();
|
QVariantHash data = script->run();
|
||||||
for (int j=0; j<data.keys().count(); j++)
|
foreach(QString key, data.keys()) setData(source, key, data[key]);
|
||||||
setData(source, data.keys().at(j), data[data.keys().at(j)]);
|
|
||||||
}
|
}
|
||||||
} else if (source == QString("desktop")) {
|
} else if (source == QString("desktop")) {
|
||||||
QVariantHash desktop = getCurrentDesktop();
|
QVariantHash desktop = getCurrentDesktop();
|
||||||
for (int i=0; i<desktop.keys().count(); i++)
|
foreach(QString key, desktop.keys()) setData(source, key, desktop[key]);
|
||||||
setData(source, desktop.keys().at(i), desktop[desktop.keys().at(i)]);
|
|
||||||
} else if (source == QString("gpu")) {
|
} else if (source == QString("gpu")) {
|
||||||
setData(source, QString("value"), getGpu(configuration[QString("GPUDEV")]));
|
setData(source, QString("value"), getGpu(configuration[QString("GPUDEV")]));
|
||||||
} else if (source == QString("gputemp")) {
|
} else if (source == QString("gputemp")) {
|
||||||
@ -606,42 +593,36 @@ bool ExtendedSysMon::updateSourceEvent(const QString &source)
|
|||||||
} else if (source == QString("hddtemp")) {
|
} else if (source == QString("hddtemp")) {
|
||||||
QStringList deviceList = configuration[QString("HDDDEV")].split(QChar(','), QString::SkipEmptyParts);
|
QStringList deviceList = configuration[QString("HDDDEV")].split(QChar(','), QString::SkipEmptyParts);
|
||||||
QStringList allHddDevices = getAllHdd();
|
QStringList allHddDevices = getAllHdd();
|
||||||
for (int i=0; i<allHddDevices.count(); i++)
|
foreach(QString device, allHddDevices)
|
||||||
setData(source, allHddDevices.at(i), deviceList.contains(allHddDevices.at(i)) ?
|
setData(source, device, deviceList.contains(device) ?
|
||||||
getHddTemp(configuration[QString("HDDTEMPCMD")], allHddDevices.at(i)) :
|
getHddTemp(configuration[QString("HDDTEMPCMD")], device) : 0.0);
|
||||||
0.0);
|
|
||||||
} else if (source == QString("netdev")) {
|
} else if (source == QString("netdev")) {
|
||||||
setData(source, QString("value"), getNetworkDevice());
|
setData(source, QString("value"), getNetworkDevice());
|
||||||
} else if (source == QString("pkg")) {
|
} else if (source == QString("pkg")) {
|
||||||
for (int i=0; i<externalUpgrade->items().count(); i++) {
|
foreach(ExtUpgrade *upgrade, externalUpgrade->items()) {
|
||||||
QVariantHash data = externalUpgrade->items().at(i)->run();
|
QVariantHash data = upgrade->run();
|
||||||
for (int j=0; j<data.keys().count(); j++)
|
foreach(QString key, data.keys()) setData(source, key, data[key]);
|
||||||
setData(source, data.keys().at(j), data[data.keys().at(j)]);
|
|
||||||
}
|
}
|
||||||
} else if (source == QString("player")) {
|
} else if (source == QString("player")) {
|
||||||
QVariantHash player = getPlayerInfo(configuration[QString("PLAYER")],
|
QVariantHash player = getPlayerInfo(configuration[QString("PLAYER")],
|
||||||
configuration[QString("MPDADDRESS")],
|
configuration[QString("MPDADDRESS")],
|
||||||
configuration[QString("MPDPORT")],
|
configuration[QString("MPDPORT")],
|
||||||
configuration[QString("MPRIS")]);
|
configuration[QString("MPRIS")]);
|
||||||
for (int i=0; i<player.keys().count(); i++)
|
foreach(QString key, player.keys()) setData(source, key, player[key]);
|
||||||
setData(source, player.keys().at(i), player[player.keys().at(i)]);
|
|
||||||
} else if (source == QString("ps")) {
|
} else if (source == QString("ps")) {
|
||||||
QVariantHash ps = getPsStats();
|
QVariantHash ps = getPsStats();
|
||||||
for (int i=0; i<ps.keys().count(); i++)
|
foreach(QString key, ps.keys()) setData(source, key, ps[key]);
|
||||||
setData(source, ps.keys().at(i), ps[ps.keys().at(i)]);
|
|
||||||
} else if (source == QString("quotes")) {
|
} else if (source == QString("quotes")) {
|
||||||
for (int i=0; i<externalQuotes->items().count(); i++) {
|
foreach(ExtQuotes *quote, externalQuotes->items()) {
|
||||||
QVariantHash data = externalQuotes->items().at(i)->run();
|
QVariantHash data = quote->run();
|
||||||
for (int j=0; j<data.keys().count(); j++)
|
foreach(QString key, data.keys()) setData(source, key, data[key]);
|
||||||
setData(source, data.keys().at(j), data[data.keys().at(j)]);
|
|
||||||
}
|
}
|
||||||
} else if (source == QString("update")) {
|
} else if (source == QString("update")) {
|
||||||
setData(source, QString("value"), true);
|
setData(source, QString("value"), true);
|
||||||
} else if (source == QString("weather")) {
|
} else if (source == QString("weather")) {
|
||||||
for (int i=0; i<externalWeather->items().count(); i++) {
|
foreach(ExtWeather *weather, externalWeather->items()) {
|
||||||
QVariantHash data = externalWeather->items().at(i)->run();
|
QVariantHash data = weather->run();
|
||||||
for (int j=0; j<data.keys().count(); j++)
|
foreach(QString key, data.keys()) setData(source, key, data[key]);
|
||||||
setData(source, data.keys().at(j), data[data.keys().at(j)]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user