diff --git a/CHANGELOG b/CHANGELOG
index f18149a..5cb3576 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Ver.2.0.2:
++ add $fan* tags
+
Ver.2.0.1:
+ add support of custom interfaces
* fix label edge's shading
diff --git a/CHANGELOG-RU b/CHANGELOG-RU
index 99a0b9d..d8100f6 100644
--- a/CHANGELOG-RU
+++ b/CHANGELOG-RU
@@ -1,3 +1,6 @@
+Вер.2.0.2:
++ добавлены теги $fan*
+
Вер.2.0.1:
+ добавлена поддержка кастомных интерфейсов
* фикс затенения краев поля
diff --git a/sources/awesome-widget/advanced.ui b/sources/awesome-widget/advanced.ui
index 3268e7a..31eab86 100644
--- a/sources/awesome-widget/advanced.ui
+++ b/sources/awesome-widget/advanced.ui
@@ -43,7 +43,7 @@
0
0
677
- 590
+ 677
@@ -234,6 +234,30 @@ $m - uptime minutes without zero
+ -
+
+
-
+
+
+
+ 200
+ 0
+
+
+
+ Fan devices
+
+
+
+ -
+
+
+ Editable
+
+
+
+
+
-
-
diff --git a/sources/awesome-widget/awesome-widget.cpp b/sources/awesome-widget/awesome-widget.cpp
index 517ee99..268b69d 100644
--- a/sources/awesome-widget/awesome-widget.cpp
+++ b/sources/awesome-widget/awesome-widget.cpp
@@ -265,6 +265,8 @@ QStringList AwesomeWidget::getKeys()
// temperature
for (int i=counts[QString("temp")]-1; i>=0; i--)
allKeys.append(QString("temp") + QString::number(i));
+ for (int i=counts[QString("fan")]-1; i>=0; i--)
+ allKeys.append(QString("fan") + QString::number(i));
// gputemp
allKeys.append(QString("gputemp"));
// gpu
diff --git a/sources/awesome-widget/awesome-widget.h b/sources/awesome-widget/awesome-widget.h
index 4bc7e60..f256ea0 100644
--- a/sources/awesome-widget/awesome-widget.h
+++ b/sources/awesome-widget/awesome-widget.h
@@ -76,6 +76,7 @@ private slots:
void addNewPkgCommand(QTableWidgetItem *item);
void contextMenuCustomCommand(const QPoint pos);
void contextMenuPkgCommand(const QPoint pos);
+ void editFanItem(QListWidgetItem *item);
void editHddItem(QListWidgetItem *item);
void editHddSpeedItem(QListWidgetItem *item);
void editMountItem(QListWidgetItem *item);
diff --git a/sources/awesome-widget/configuration.cpp b/sources/awesome-widget/configuration.cpp
index 115473c..ab51e56 100644
--- a/sources/awesome-widget/configuration.cpp
+++ b/sources/awesome-widget/configuration.cpp
@@ -171,11 +171,16 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
QString sensor = qoutput.split(QString("\n\n"))[i];
for (int j=0; j -1) {
+ if (device.contains(QChar(0260))) {
QListWidgetItem *item = new QListWidgetItem(QString("lmsensors/") + sensor.split(QChar('\n'))[0] + QString("/") +
device.split(QChar(':'))[0].replace(QChar(' '), QChar('_')));
item->setCheckState(Qt::Unchecked);
uiAdvancedConfig.listWidget_tempDevice->addItem(item);
+ } else if (device.contains(QString("RPM"))) {
+ QListWidgetItem *item = new QListWidgetItem(QString("lmsensors/") + sensor.split(QChar('\n'))[0] + QString("/") +
+ device.split(QChar(':'))[0].replace(QChar(' '), QChar('_')));
+ item->setCheckState(Qt::Unchecked);
+ uiAdvancedConfig.listWidget_fanDevice->addItem(item);
}
}
}
@@ -191,6 +196,18 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
for (int j=0; jsetCheckState(Qt::Checked);
}
+ for (int i=0; i items = uiAdvancedConfig.listWidget_fanDevice
+ ->findItems(configuration[QString("fanDevice")].split(QString("@@"))[i], Qt::MatchFixedString);
+ if ((items.isEmpty()) &&
+ (!configuration[QString("fanDevice")].split(QString("@@"))[i].isEmpty())) {
+ QListWidgetItem *item = new QListWidgetItem(configuration[QString("fanDevice")].split(QString("@@"))[i]);
+ item->setCheckState(Qt::Checked);
+ uiAdvancedConfig.listWidget_fanDevice->addItem(item);
+ } else
+ for (int j=0; jsetCheckState(Qt::Checked);
+ }
cmd = QString("mount");
if (debug) qDebug() << PDEBUG << ":" << "cmd" << cmd;
process = runTask(cmd);
@@ -392,6 +409,8 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
parent->addPage(appWidget, i18n("Appearance"), QString("preferences-desktop-theme"));
parent->addPage(deConfigWidget, i18n("DataEngine"), QString("utilities-system-monitor"));
+ connect(uiAdvancedConfig.listWidget_fanDevice, SIGNAL(itemActivated(QListWidgetItem *)),
+ this, SLOT(editFanItem(QListWidgetItem *)));
connect(uiAdvancedConfig.listWidget_hddDevice, SIGNAL(itemActivated(QListWidgetItem *)),
this, SLOT(editHddItem(QListWidgetItem *)));
connect(uiAdvancedConfig.listWidget_hddSpeedDevice, SIGNAL(itemActivated(QListWidgetItem *)),
@@ -448,6 +467,11 @@ void AwesomeWidget::configAccepted()
items.append(uiAdvancedConfig.listWidget_tempDevice->item(i)->text());
cg.writeEntry("tempDevice", items.join(QString("@@")));
items.clear();
+ for (int i=0; icount(); i++)
+ if (uiAdvancedConfig.listWidget_fanDevice->item(i)->checkState() == Qt::Checked)
+ items.append(uiAdvancedConfig.listWidget_fanDevice->item(i)->text());
+ cg.writeEntry("fanDevice", items.join(QString("@@")));
+ items.clear();
for (int i=0; icount(); i++)
if (uiAdvancedConfig.listWidget_mount->item(i)->checkState() == Qt::Checked)
items.append(uiAdvancedConfig.listWidget_mount->item(i)->text());
@@ -541,6 +565,7 @@ void AwesomeWidget::configChanged()
configuration[QString("customUptime")] = cg.readEntry("customUptime", "$dd,$hh,$mm");
configuration[QString("tempUnits")] = cg.readEntry("tempUnits", "Celsius");
configuration[QString("tempDevice")] = cg.readEntry("tempDevice", "");
+ configuration[QString("fanDevice")] = cg.readEntry("fanDevice", "");
configuration[QString("mount")] = cg.readEntry("mount", "/");
configuration[QString("hdd")] = cg.readEntry("hdd", "/dev/sda");
configuration[QString("disk")] = cg.readEntry("disk", "disk/sda_(8:0)");
@@ -621,6 +646,7 @@ void AwesomeWidget::configChanged()
counts[QString("cpu")] = getNumberCpus();
counts[QString("custom")] = deSettings[QString("CUSTOM")].split(QString("@@")).count();
counts[QString("disk")] = configuration[QString("disk")].split(QString("@@")).count();
+ counts[QString("fan")] = configuration[QString("fanDevice")].split(QString("@@")).count();
counts[QString("hddtemp")] = configuration[QString("hdd")].split(QString("@@")).count();
counts[QString("mount")] = configuration[QString("mount")].split(QString("@@")).count();
counts[QString("pkg")] = deSettings[QString("PKGCMD")].split(QChar(',')).count();
@@ -691,6 +717,14 @@ void AwesomeWidget::contextMenuPkgCommand(const QPoint pos)
}
+void AwesomeWidget::editFanItem(QListWidgetItem *item)
+{
+ if (debug) qDebug() << PDEBUG;
+
+ uiAdvancedConfig.listWidget_fanDevice->openPersistentEditor(item);
+}
+
+
void AwesomeWidget::editHddItem(QListWidgetItem *item)
{
if (debug) qDebug() << PDEBUG;
diff --git a/sources/awesome-widget/deinteraction.cpp b/sources/awesome-widget/deinteraction.cpp
index 3e0c2ac..b6499ae 100644
--- a/sources/awesome-widget/deinteraction.cpp
+++ b/sources/awesome-widget/deinteraction.cpp
@@ -73,6 +73,12 @@ void AwesomeWidget::connectToEngine()
sysmonEngine->connectSource(configuration[QString("disk")].split(QString("@@"))[i] + QString("/Rate/wblk"),
this, configuration[QString("interval")].toInt());
}
+ // fan
+ regExp = QRegExp(QString("fan.*"));
+ if (foundKeys.indexOf(regExp) > -1)
+ for (int i=0; iconnectSource(configuration[QString("fanDevice")].split(QString("@@"))[i],
+ this, configuration[QString("interval")].toInt());
// gpu
regExp = QRegExp(QString("gpu"));
if (foundKeys.indexOf(regExp) > -1)
@@ -384,11 +390,19 @@ void AwesomeWidget::dataUpdated(const QString &sourceName, const Plasma::DataEng
tooltipValues[QString("swap")].append(values[QString("swap")].toFloat());
}
} else if (sourceName.indexOf(tempRegExp) > -1) {
- for (int i=0; idisconnectSource(configuration[QString("disk")].split(QString("@@"))[i] + QString("/Rate/rblk"), this);
sysmonEngine->disconnectSource(configuration[QString("disk")].split(QString("@@"))[i] + QString("/Rate/wblk"), this);
}
+ // fan
+ regExp = QRegExp(QString("fan.*"));
+ if (foundKeys.indexOf(regExp) > -1)
+ for (int i=0; idisconnectSource(configuration[QString("fanDevice")].split(QString("@@"))[i], this);
// gpu
regExp = QRegExp(QString("gpu"));
if (foundKeys.indexOf(regExp) > -1)