plasmoid fixes

This commit is contained in:
arcan1s 2014-08-31 18:45:43 +04:00
parent 6e5a068ad2
commit eac50a8799
6 changed files with 239 additions and 228 deletions

View File

@ -41,9 +41,9 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>0</x> <x>0</x>
<y>-145</y> <y>-87</y>
<width>677</width> <width>677</width>
<height>723</height> <height>665</height>
</rect> </rect>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_8"> <layout class="QVBoxLayout" name="verticalLayout_8">
@ -363,30 +363,6 @@ $m - uptime minutes without zero</string>
</item> </item>
</layout> </layout>
</item> </item>
<item>
<layout class="QHBoxLayout" name="layout_batdev">
<item>
<widget class="QLabel" name="label_batdev">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Battery device</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_batdev">
<property name="toolTip">
<string>&quot;/sys/class/power_supply/BAT0/capacity&quot; by default</string>
</property>
</widget>
</item>
</layout>
</item>
<item> <item>
<layout class="QHBoxLayout" name="layout_acOnline"> <layout class="QHBoxLayout" name="layout_acOnline">
<item> <item>
@ -447,30 +423,6 @@ $m - uptime minutes without zero</string>
</item> </item>
</layout> </layout>
</item> </item>
<item>
<layout class="QHBoxLayout" name="layout_acdev">
<item>
<widget class="QLabel" name="label_acdev">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>AC device</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_acdev">
<property name="toolTip">
<string>&quot;/sys/class/power_supply/AC/online&quot; by default</string>
</property>
</widget>
</item>
</layout>
</item>
<item> <item>
<spacer name="spacer_advanced"> <spacer name="spacer_advanced">
<property name="orientation"> <property name="orientation">

View File

@ -32,6 +32,8 @@ QMap<QString, QString> AwesomeWidget::readDataEngineConfiguration()
if (debug) qDebug() << PDEBUG; if (debug) qDebug() << PDEBUG;
QMap<QString, QString> rawConfig; QMap<QString, QString> rawConfig;
rawConfig[QString("AC")] = QString("/sys/class/power_supply/AC/online");
rawConfig[QString("BATTERY")] = QString("/sys/class/power_supply/BAT0/capacity");
rawConfig[QString("CUSTOM")] = QString("wget -qO- http://ifconfig.me/ip"); rawConfig[QString("CUSTOM")] = QString("wget -qO- http://ifconfig.me/ip");
rawConfig[QString("DESKTOPCMD")] = QString("qdbus org.kde.kwin /KWin currentDesktop"); rawConfig[QString("DESKTOPCMD")] = QString("qdbus org.kde.kwin /KWin currentDesktop");
rawConfig[QString("GPUDEV")] = QString("auto"); rawConfig[QString("GPUDEV")] = QString("auto");
@ -255,8 +257,6 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
uiAdvancedConfig.comboBox_netdev->setCurrentIndex( uiAdvancedConfig.comboBox_netdev->setCurrentIndex(
uiAdvancedConfig.comboBox_netdev->findText(configuration[QString("customNetdev")], uiAdvancedConfig.comboBox_netdev->findText(configuration[QString("customNetdev")],
Qt::MatchFixedString)); Qt::MatchFixedString));
uiAdvancedConfig.lineEdit_batdev->setText(configuration[QString("batteryDevice")]);
uiAdvancedConfig.lineEdit_acdev->setText(configuration[QString("acDevice")]);
uiAdvancedConfig.lineEdit_acOnline->setText(configuration[QString("acOnline")]); uiAdvancedConfig.lineEdit_acOnline->setText(configuration[QString("acOnline")]);
uiAdvancedConfig.lineEdit_acOffline->setText(configuration[QString("acOffile")]); uiAdvancedConfig.lineEdit_acOffline->setText(configuration[QString("acOffile")]);
@ -318,6 +318,8 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
// dataengine // dataengine
QMap<QString, QString> deSettings = readDataEngineConfiguration(); QMap<QString, QString> deSettings = readDataEngineConfiguration();
uiDEConfig.lineEdit_acdev->setText(deSettings[QString("AC")]);
uiDEConfig.lineEdit_batdev->setText(deSettings[QString("BATTERY")]);
uiDEConfig.tableWidget_customCommand->clear(); uiDEConfig.tableWidget_customCommand->clear();
uiDEConfig.tableWidget_customCommand->setRowCount(deSettings[QString("CUSTOM")].split(QString("@@")).count() + 1); uiDEConfig.tableWidget_customCommand->setRowCount(deSettings[QString("CUSTOM")].split(QString("@@")).count() + 1);
headerList.clear(); headerList.clear();
@ -415,8 +417,6 @@ void AwesomeWidget::configAccepted()
cg.writeEntry("disk", items.join(QString("@@"))); cg.writeEntry("disk", items.join(QString("@@")));
cg.writeEntry("useCustomNetdev", QString::number(uiAdvancedConfig.checkBox_netdev->checkState())); cg.writeEntry("useCustomNetdev", QString::number(uiAdvancedConfig.checkBox_netdev->checkState()));
cg.writeEntry("customNetdev", uiAdvancedConfig.comboBox_netdev->currentText()); cg.writeEntry("customNetdev", uiAdvancedConfig.comboBox_netdev->currentText());
cg.writeEntry("batteryDevice", uiAdvancedConfig.lineEdit_batdev->text());
cg.writeEntry("acDevice", uiAdvancedConfig.lineEdit_acdev->text());
cg.writeEntry("acOnline", uiAdvancedConfig.lineEdit_acOnline->text()); cg.writeEntry("acOnline", uiAdvancedConfig.lineEdit_acOnline->text());
cg.writeEntry("acOffile", uiAdvancedConfig.lineEdit_acOffline->text()); cg.writeEntry("acOffile", uiAdvancedConfig.lineEdit_acOffline->text());
@ -447,6 +447,8 @@ void AwesomeWidget::configAccepted()
// dataengine // dataengine
QMap<QString, QString> deSettings; QMap<QString, QString> deSettings;
deSettings[QString("AC")] = uiDEConfig.lineEdit_acdev->text();
deSettings[QString("BATTERY")] = uiDEConfig.lineEdit_batdev->text();
items.clear(); items.clear();
for (int i=0; i<uiDEConfig.tableWidget_customCommand->rowCount(); i++) for (int i=0; i<uiDEConfig.tableWidget_customCommand->rowCount(); i++)
if (uiDEConfig.tableWidget_customCommand->item(i, 0) != 0) if (uiDEConfig.tableWidget_customCommand->item(i, 0) != 0)
@ -498,8 +500,6 @@ void AwesomeWidget::configChanged()
configuration[QString("disk")] = cg.readEntry("disk", "disk/sda_(8:0)"); configuration[QString("disk")] = cg.readEntry("disk", "disk/sda_(8:0)");
configuration[QString("useCustomNetdev")] = cg.readEntry("useCustomNetdev", "0"); configuration[QString("useCustomNetdev")] = cg.readEntry("useCustomNetdev", "0");
configuration[QString("customNetdev")] = cg.readEntry("customNetdev", "lo"); configuration[QString("customNetdev")] = cg.readEntry("customNetdev", "lo");
configuration[QString("batteryDevice")] = cg.readEntry("batteryDevice", "/sys/class/power_supply/BAT0/capacity");
configuration[QString("acDevice")] = cg.readEntry("acDevice", "/sys/class/power_supply/AC/online");
configuration[QString("acOnline")] = cg.readEntry("acOnline", "(*)"); configuration[QString("acOnline")] = cg.readEntry("acOnline", "(*)");
configuration[QString("acOffile")] = cg.readEntry("acOffile", "( )"); configuration[QString("acOffile")] = cg.readEntry("acOffile", "( )");

View File

@ -47,116 +47,7 @@
</rect> </rect>
</property> </property>
<layout class="QGridLayout" name="gridLayout"> <layout class="QGridLayout" name="gridLayout">
<item row="8" column="0"> <item row="5" column="0">
<layout class="QHBoxLayout" name="layout_playerSelect">
<item>
<widget class="QLabel" name="label_playerSelect">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Music player</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="comboBox_playerSelect">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<item>
<property name="text">
<string notr="true">mpris</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">mpd</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item row="10" column="0">
<spacer name="spacer_dataengine">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="0">
<layout class="QHBoxLayout" name="layout_gpudev">
<item>
<widget class="QLabel" name="label_gpudev">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>GPU device</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="comboBox_gpudev">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<item>
<property name="text">
<string notr="true">auto</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">disable</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">nvidia</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">ati</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item row="3" column="0">
<layout class="QHBoxLayout" name="layout_hdddev"> <layout class="QHBoxLayout" name="layout_hdddev">
<item> <item>
<widget class="QLabel" name="label_hdddev"> <widget class="QLabel" name="label_hdddev">
@ -189,55 +80,7 @@
</item> </item>
</layout> </layout>
</item> </item>
<item row="4" column="0"> <item row="8" column="0">
<layout class="QHBoxLayout" name="layout_hddtempCmd">
<item>
<widget class="QLabel" name="label_hddtempCmd">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>hddtemp cmd</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_hddtempCmd">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="5" column="0">
<layout class="QHBoxLayout" name="layout_mpdaddress">
<item>
<widget class="QLabel" name="label_mpdaddress">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>MPD address</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_mpdaddress">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="6" column="0">
<layout class="QHBoxLayout" name="layout_mpdport"> <layout class="QHBoxLayout" name="layout_mpdport">
<item> <item>
<widget class="QLabel" name="label_mpdport"> <widget class="QLabel" name="label_mpdport">
@ -292,7 +135,164 @@
</item> </item>
</layout> </layout>
</item> </item>
<item row="1" column="0"> <item row="4" column="0">
<layout class="QHBoxLayout" name="layout_gpudev">
<item>
<widget class="QLabel" name="label_gpudev">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>GPU device</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="comboBox_gpudev">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<item>
<property name="text">
<string notr="true">auto</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">disable</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">nvidia</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">ati</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item row="12" column="0">
<spacer name="spacer_dataengine">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="6" column="0">
<layout class="QHBoxLayout" name="layout_hddtempCmd">
<item>
<widget class="QLabel" name="label_hddtempCmd">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>hddtemp cmd</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_hddtempCmd">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="10" column="0">
<layout class="QHBoxLayout" name="layout_playerSelect">
<item>
<widget class="QLabel" name="label_playerSelect">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Music player</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="comboBox_playerSelect">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<item>
<property name="text">
<string notr="true">mpris</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">mpd</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item row="7" column="0">
<layout class="QHBoxLayout" name="layout_mpdaddress">
<item>
<widget class="QLabel" name="label_mpdaddress">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>MPD address</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_mpdaddress">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="3" column="0">
<layout class="QHBoxLayout" name="layout_desktopCmd"> <layout class="QHBoxLayout" name="layout_desktopCmd">
<item> <item>
<widget class="QLabel" name="label_desktopCmd"> <widget class="QLabel" name="label_desktopCmd">
@ -316,7 +316,7 @@
</item> </item>
</layout> </layout>
</item> </item>
<item row="7" column="0"> <item row="9" column="0">
<layout class="QVBoxLayout" name="layout_mpris"> <layout class="QVBoxLayout" name="layout_mpris">
<item> <item>
<widget class="QLabel" name="label_mprisInfo"> <widget class="QLabel" name="label_mprisInfo">
@ -406,7 +406,7 @@
</item> </item>
</layout> </layout>
</item> </item>
<item row="9" column="0"> <item row="11" column="0">
<layout class="QVBoxLayout" name="layout_pkgCommand"> <layout class="QVBoxLayout" name="layout_pkgCommand">
<item> <item>
<widget class="QTableWidget" name="tableWidget_pkgCommand"> <widget class="QTableWidget" name="tableWidget_pkgCommand">
@ -437,7 +437,7 @@ del - remove item</string>
</item> </item>
</layout> </layout>
</item> </item>
<item row="0" column="0"> <item row="2" column="0">
<widget class="QTableWidget" name="tableWidget_customCommand"> <widget class="QTableWidget" name="tableWidget_customCommand">
<property name="toolTip"> <property name="toolTip">
<string>Editable <string>Editable
@ -456,6 +456,54 @@ del - remove item</string>
</column> </column>
</widget> </widget>
</item> </item>
<item row="1" column="0">
<layout class="QHBoxLayout" name="layout_batdev">
<item>
<widget class="QLabel" name="label_batdev">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Battery device</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_batdev">
<property name="toolTip">
<string>&quot;/sys/class/power_supply/BAT0/capacity&quot; by default</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="0">
<layout class="QHBoxLayout" name="layout_acdev">
<item>
<widget class="QLabel" name="label_acdev">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>AC device</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_acdev">
<property name="toolTip">
<string>&quot;/sys/class/power_supply/AC/online&quot; by default</string>
</property>
</widget>
</item>
</layout>
</item>
</layout> </layout>
</widget> </widget>
</widget> </widget>

View File

@ -27,6 +27,11 @@ void AwesomeWidget::connectToEngine()
if (debug) qDebug() << PDEBUG; if (debug) qDebug() << PDEBUG;
QRegExp regExp; QRegExp regExp;
// battery
regExp = QRegExp(QString("(ac|bat)"));
if (foundKeys.indexOf(regExp) > -1)
extsysmonEngine->connectSource(QString("battery"),
this, configuration[QString("interval")].toInt());
// cpu // cpu
regExp = QRegExp(QString("cpu.*")); regExp = QRegExp(QString("cpu.*"));
if (foundKeys.indexOf(regExp) > -1) { if (foundKeys.indexOf(regExp) > -1) {
@ -175,6 +180,10 @@ void AwesomeWidget::disconnectFromEngine()
if (debug) qDebug() << PDEBUG; if (debug) qDebug() << PDEBUG;
QRegExp regExp; QRegExp regExp;
// battery
regExp = QRegExp(QString("(ac|bat)"));
if (foundKeys.indexOf(regExp) > -1)
extsysmonEngine->disconnectSource(QString("battery"), this);
// cpu // cpu
regExp = QRegExp(QString("cpu.*")); regExp = QRegExp(QString("cpu.*"));
if (foundKeys.indexOf(regExp) > -1) { if (foundKeys.indexOf(regExp) > -1) {

View File

@ -278,18 +278,20 @@ QMap<QString, QString> ExtendedSysMon::updateConfiguration(const QMap<QString, Q
} }
QMap<QString, int> ExtendedSysMon::getBattery(const QString acPath, const QString batPath) QMap<QString, QVariant> ExtendedSysMon::getBattery(const QString acPath, const QString batPath)
{ {
if (debug) qDebug() << PDEBUG; if (debug) qDebug() << PDEBUG;
if (debug) qDebug() << PDEBUG << ":" << "AC path" << acPath; if (debug) qDebug() << PDEBUG << ":" << "AC path" << acPath;
if (debug) qDebug() << PDEBUG << ":" << "Battery path" << batPath; if (debug) qDebug() << PDEBUG << ":" << "Battery path" << batPath;
QMap<QString, int> battery; QMap<QString, QVariant> battery;
battery[QString("ac")] = 0; battery[QString("ac")] = false;
battery[QString("battery")] = 0; battery[QString("battery")] = 0;
QFile acFile(acPath); QFile acFile(acPath);
if (acFile.open(QIODevice::ReadOnly)) if (acFile.open(QIODevice::ReadOnly)) {
battery[QString("ac")] = QString(acFile.readLine()).trimmed().toInt(); if (QString(acFile.readLine()).trimmed().toInt() == 1)
battery[QString("ac")] = true;
}
acFile.close(); acFile.close();
QFile batFile(batPath); QFile batFile(batPath);
if (batFile.open(QIODevice::ReadOnly)) if (batFile.open(QIODevice::ReadOnly))
@ -569,10 +571,10 @@ bool ExtendedSysMon::updateSourceEvent(const QString &source)
if (debug) qDebug() << PDEBUG << ":" << "Source" << source; if (debug) qDebug() << PDEBUG << ":" << "Source" << source;
if (source == QString("battery")) { if (source == QString("battery")) {
QMap<QString, int> battery = getBattery(configuration[QString("AC")], QMap<QString, QVariant> battery = getBattery(configuration[QString("AC")],
configuration[QString("BATTERY")]); configuration[QString("BATTERY")]);
setData(source, QString("ac"), QString::number(battery[QString("ac")])); setData(source, QString("ac"), battery[QString("ac")].toBool());
setData(source, QString("bat"), QString::number(battery[QString("battery")])); setData(source, QString("bat"), battery[QString("battery")].toInt());
} else if (source == QString("custom")) { } else if (source == QString("custom")) {
for (int i=0; i<configuration[QString("CUSTOM")].split(QString("@@"), QString::SkipEmptyParts).count(); i++) { for (int i=0; i<configuration[QString("CUSTOM")].split(QString("@@"), QString::SkipEmptyParts).count(); i++) {
setData(source, QString("custom") + QString::number(i), setData(source, QString("custom") + QString::number(i),

View File

@ -28,7 +28,7 @@ class ExtendedSysMon : public Plasma::DataEngine
public: public:
ExtendedSysMon(QObject *parent, const QVariantList &args); ExtendedSysMon(QObject *parent, const QVariantList &args);
// update functions // update functions
QMap<QString, int> getBattery(const QString acPath, const QString batPath); QMap<QString, QVariant> getBattery(const QString acPath, const QString batPath);
QMap<QString, QVariant> getCurrentDesktop(const QString cmd); QMap<QString, QVariant> getCurrentDesktop(const QString cmd);
QString getCustomCmd(const QString cmd); QString getCustomCmd(const QString cmd);
float getGpu(const QString device); float getGpu(const QString device);