Compare commits

...

10 Commits

Author SHA1 Message Date
29da9b43f3 Edited README 2013-11-18 21:09:03 +04:00
e2e511f083 Release pytextmonitor 1.5.2
+ added time formats
* fixed definition of conf file for dataengine
2013-11-18 21:02:55 +04:00
ccaca2a725 Edited for 1.5 ext-sysmon 2013-11-18 19:51:57 +04:00
916c32589f Release ext-sysmon 1.5
+ added configuration file
2013-11-18 19:16:38 +04:00
24325e2d3a Edited archives 2013-11-11 09:50:23 +04:00
9569400757 Edited for #6 2013-11-11 09:47:48 +04:00
4d4317150a Edited pkgbuild 2013-11-07 01:45:55 +04:00
946c0ea874 Release ext-sysmon 1.4
* fix #4
2013-11-07 01:38:32 +04:00
ebb828dd4c Edited readme 2013-11-06 04:48:28 +04:00
f5fa6af1bc Release 1.5.1
+ added date andtime support
2013-11-06 04:45:58 +04:00
21 changed files with 273 additions and 71 deletions

View File

@ -3,10 +3,10 @@
pkgname=kdeplasma-applets-pytextmonitor
_pkgname=py-text-monitor
pkgver=1.5.0
pkgrel=1
pkgver=1.5.2
pkgrel=2
_dtengine=ext-sysmon
_dtver=1.3
_dtver=1.5
pkgdesc="Minimalistic Plasmoid script written on Python2. It looks like widgets in awesome-wm"
arch=('i686' 'x86_64')
url="https://github.com/arcan1s/pytextmonitor"
@ -22,8 +22,9 @@ makedepends=('automoc4' 'cmake')
source=(https://github.com/arcan1s/pytextmonitor/releases/download/V.${pkgver}/${_pkgname}-${pkgver}.plasmoid
https://github.com/arcan1s/pytextmonitor/releases/download/V.${pkgver}/${_dtengine}-${_dtver}.zip)
install=${pkgname}.install
md5sums=('df8e9f6df8e7b3caee3a502315756d81'
'f7fce53d5f616891b30beac1afd99728')
md5sums=('62a83e665d5a60e40891357a237cea1c'
'e8c0e40298facf6f515f3c72c66b2aa0')
backup=('usr/share/config/extsysmon.conf')
build ()
{

View File

@ -8,9 +8,13 @@ PyTextMonitor is a minimalistic Plasmoid script written on Python2. It looks lik
Configuration
-------------
For edited output you must open Settings window and setup output format in lines:
* label `$uptime` means uptime, <i>---d--h--m</i>
* label `$cpu` means total load cpu, <i>%</i>
* label `$ccpu` means load CPU for each core, <i>%</i>
* label `$time` - time in default format. For example, `fri Nov 6 04:48:01 2013`
* label `$isotime` - time in iso format
* label `$shorttime` - time in short locale format
* label `$longtime` - time in long locale format
* label `$uptime` - uptime, <i>---d--h--m</i>
* label `$cpu` - total load cpu, <i>%</i>
* label `$ccpu` - load CPU for each core, <i>%</i>
* label `$cpucl` - average cpu clock, <i>MHz</i>
* label `$ccpucl` - cpu clock for each core, <i>MHz</i>
* label `$temp` - average temperature in system
@ -33,6 +37,10 @@ Label order will changed if you change slider position. HTML tags in label work
**NOTE** you don't may set to show $cpu in swap label for example. <b>$cpu will work only in cpu label</b>.
DataEngine configuration
------------------------
You may edit DataEngine configuration. It is `/usr/share/config/extsysmon.conf` or `$HOME/share/config/extsysmon.conf` depending on the type of installation. Uncomment needed line and edit it.
TODO (wish) list
----------------
Tooltip (graphical information):

Binary file not shown.

BIN
ext-sysmon-1.5.zip Normal file

Binary file not shown.

View File

@ -14,11 +14,13 @@ include_directories (${CMAKE_SOURCE_DIR}
set (PLUGIN_NAME ${PROJECT_NAME})
file (GLOB PROJECT_DESKTOP *.desktop)
file (GLOB PROJECT_SRCS *.cpp)
file (GLOB PROJECT_CONF *.conf)
# make
kde4_add_plugin (${PLUGIN_NAME} ${PROJECT_SRCS})
target_link_libraries (${PLUGIN_NAME} ${KDE4_KDECORE_LIBS} ${KDE4_PLASMA_LIBS})
# install
install(TARGETS ${PLUGIN_NAME} DESTINATION ${PLUGIN_INSTALL_DIR})
install(FILES ${PROJECT_DESKTOP} DESTINATION ${SERVICES_INSTALL_DIR})
install (TARGETS ${PLUGIN_NAME} DESTINATION ${PLUGIN_INSTALL_DIR})
install (FILES ${PROJECT_DESKTOP} DESTINATION ${SERVICES_INSTALL_DIR})
install (FILES ${PROJECT_CONF} DESTINATION ${CONFIG_INSTALL_DIR})

13
ext-sysmon/extsysmon.conf Normal file
View File

@ -0,0 +1,13 @@
# Configuration file for Extended Systemmonitor DataEngine (v.1.5)
# Uncomment needed lines
# Set GPU device
# May be 'nvidia' (for nvidia), 'ati' (for ATI RADEON), 'ignore' or 'auto'
#GPUDEV=auto
# Set block device for hddtemp comma separated or use 'all'
#HDDDEV=all
# Set MPD settings
#MPDADDRESS=localhost
#MPDPORT=6600

View File

@ -20,8 +20,10 @@
#include "extsysmon.h"
#include <Plasma/DataContainer>
#include <QFile>
#include <stdio.h>
#include <stdlib.h>
ExtendedSysMon::ExtendedSysMon(QObject* parent, const QVariantList& args)
@ -30,29 +32,7 @@ ExtendedSysMon::ExtendedSysMon(QObject* parent, const QVariantList& args)
Q_UNUSED(args)
setMinimumPollingInterval(333);
FILE *f_out;
f_out = popen("lspci 2>&1", "r");
char device[256];
QString dev;
while (fgets(device, 256, f_out) != NULL)
{
dev = QString(device);
if (dev.toLower().contains("nvidia"))
gpudev = QString("nvidia");
else if (dev.toLower().contains("radeon"))
gpudev = QString("ati");
}
pclose(f_out);
f_out = popen("ls -1 /dev/sd[a-z] && ls -1 /dev/hd[a-z] 2>&1", "r");
while (fgets(device, 256, f_out) != NULL)
{
dev = QString(device);
if (dev[0] == '/')
hdddev.append(dev);
}
pclose(f_out);
readConfiguration();
}
QStringList ExtendedSysMon::sources() const
@ -65,6 +45,90 @@ QStringList ExtendedSysMon::sources() const
return source;
}
bool ExtendedSysMon::readConfiguration()
{
// pre-setup
FILE *f_out;
f_out = popen("lspci 2> /dev/null", "r");
char device[256];
QString dev;
while (fgets(device, 256, f_out) != NULL)
{
dev = QString(device);
if (dev.toLower().contains("nvidia"))
gpudev = QString("nvidia");
else if (dev.toLower().contains("radeon"))
gpudev = QString("ati");
}
pclose(f_out);
f_out = popen("ls -1 /dev/sd[a-z] 2> /dev/null ; ls -1 /dev/hd[a-z] 2> /dev/null", "r");
while (fgets(device, 256, f_out) != NULL)
{
dev = QString(device).split("\n")[0];
if (dev[0] == '/')
hdddev.append(dev);
}
pclose(f_out);
mpdAddress = QString("localhost");
mpdPort = QString("6600");
QString fileStr;
// FIXME: define configuration file
QString confFileName = QString(getenv("HOME")) + QString("/.kde4/share/config/extsysmon.conf");
QFile confFile(confFileName);
bool exists = confFile.open(QIODevice::ReadOnly);
if (!exists)
{
confFileName = QString("/usr/share/config/extsysmon.conf");
confFile.setFileName(confFileName);
exists = confFile.open(QIODevice::ReadOnly);
if (!exists)
return false;
}
while (true)
{
fileStr = QString(confFile.readLine());
if (confFile.atEnd())
break;
else if (fileStr[0] != '#')
{
if (fileStr.split(QString("="), QString::SkipEmptyParts).count() == 2)
{
if (fileStr.split(QString("="), QString::SkipEmptyParts)[0] == QString("GPUDEV"))
{
if (fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0] == QString("ati"))
gpudev = fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0];
else if (fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0] == QString("nvidia"))
gpudev = fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0];
else if (fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0] != QString("auto"))
gpudev = QString("ignore");
}
else if (fileStr.split(QString("="), QString::SkipEmptyParts)[0] == QString("HDDDEV"))
{
if (fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0] != QString("all"))
{
hdddev.clear();
for (int i=0; i<fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), \
QString::SkipEmptyParts)[0].split(QString(","), QString::SkipEmptyParts).count(); i++)
hdddev.append(fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), \
QString::SkipEmptyParts)[0].split(QString(","), QString::SkipEmptyParts)[i]);
}
}
else if (fileStr.split(QString("="), QString::SkipEmptyParts)[0] == QString("MPDADDRESS"))
mpdAddress = fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0];
else if (fileStr.split(QString("="), QString::SkipEmptyParts)[0] == QString("MPDPORT"))
mpdPort = fileStr.split(QString("="), QString::SkipEmptyParts)[1].split(QString("\n"), QString::SkipEmptyParts)[0];
}
}
}
confFile.close();
return true;
}
bool ExtendedSysMon::sourceRequestEvent(const QString &name)
{
return updateSourceEvent(name);
@ -235,7 +299,10 @@ bool ExtendedSysMon::updateSourceEvent(const QString &source)
QString value_artist;
value = QString("N\\A");
value_artist = QString("N\\A");
f_out = popen("echo 'currentsong\nclose' | curl --connect-timeout 1 -fsm 3 telnet://localhost:6600 2> /dev/null", "r");
char commandStr[512];
sprintf (commandStr, "echo 'currentsong\nclose' | curl --connect-timeout 1 -fsm 3 telnet://%s:%s 2> /dev/null", \
mpdAddress.toUtf8().data(), mpdPort.toUtf8().data());
f_out = popen(commandStr, "r");
while (true)
{
fgets(output, 256, f_out);

View File

@ -32,9 +32,14 @@ public:
protected:
bool sourceRequestEvent(const QString &name);
bool updateSourceEvent(const QString &source);
bool readConfiguration();
QStringList sources() const;
// main configuration
QStringList hdddev;
QString gpudev;
QStringList sources() const;
// configuration
QString mpdAddress;
QString mpdPort;
};
#endif // EXTSYSMON_H

View File

@ -13,7 +13,7 @@ X-Plasma-EngineName=ext-sysmon
X-KDE-PluginInfo-Author=Evgeniy Alekseev aka arcanis
X-KDE-PluginInfo-Email=esalexeev@gmail.com
X-KDE-PluginInfo-Name=ext-sysmon
X-KDE-PluginInfo-Version=1.3
X-KDE-PluginInfo-Version=1.5
X-KDE-PluginInfo-Category=System Information
X-KDE-PluginInfo-Depends=
X-KDE-PluginInfo-License=GPL

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 205 KiB

After

Width:  |  Height:  |  Size: 175 KiB

View File

@ -134,10 +134,15 @@ class ConfigDefinition:
self.parent.label_bat.setText('')
self.parent.layout.removeItem(self.parent.label_bat)
if (self.parent.playerBool > 0):
self.parent.extsysmon.disconnectSource("player", self.parent)
self.parent.label_player.setText('')
self.parent.layout.removeItem(self.parent.label_player)
if (self.parent.timeBool > 0):
self.parent.timemon.disconnectSource("Local", self.parent)
self.parent.label_time.setText('')
self.parent.layout.removeItem(self.parent.label_time)
self.parent.label_order = "-------------"
self.parent.label_order = "--------------"
for label in self.parent.dict_orders.keys():
exec ('self.parent.' + self.parent.dict_orders[label] + 'Bool = ' + str(self.configpage.checkboxes[self.parent.dict_orders[label]].checkState()))

View File

@ -36,21 +36,21 @@ class ConfigWindow(QWidget):
'hddtemp':self.ui.checkBox_hddTemp, 'mem':self.ui.checkBox_mem,
'net':self.ui.checkBox_net, 'swap':self.ui.checkBox_swap,
'temp':self.ui.checkBox_temp, 'uptime':self.ui.checkBox_uptime,
'player':self.ui.checkBox_player}
'player':self.ui.checkBox_player, 'time':self.ui.checkBox_time}
self.sliders = {'bat':self.ui.slider_bat, 'cpu':self.ui.slider_cpu,
'cpuclock':self.ui.slider_cpuclock, 'gpu':self.ui.slider_gpu,
'gputemp':self.ui.slider_gpuTemp, 'hdd':self.ui.slider_hdd,
'hddtemp':self.ui.slider_hddTemp, 'mem':self.ui.slider_mem,
'net':self.ui.slider_net, 'swap':self.ui.slider_swap,
'temp':self.ui.slider_temp, 'uptime':self.ui.slider_uptime,
'player':self.ui.slider_player}
'player':self.ui.slider_player, 'time':self.ui.slider_time}
self.lineedits = {'bat':self.ui.lineEdit_bat, 'cpu':self.ui.lineEdit_cpu,
'cpuclock':self.ui.lineEdit_cpuclock, 'gpu':self.ui.lineEdit_gpu,
'gputemp':self.ui.lineEdit_gpuTemp, 'hdd':self.ui.lineEdit_hdd,
'hddtemp':self.ui.lineEdit_hddTemp, 'mem':self.ui.lineEdit_mem,
'net':self.ui.lineEdit_net, 'swap':self.ui.lineEdit_swap,
'temp':self.ui.lineEdit_temp, 'uptime':self.ui.lineEdit_uptime,
'player':self.ui.lineEdit_player}
'player':self.ui.lineEdit_player, 'time':self.ui.lineEdit_time}
for item in self.checkboxes.values():
QObject.connect(item, SIGNAL("stateChanged(int)"), self.setStatus)

View File

@ -35,6 +35,10 @@ class DataEngine:
if ((self.parent.gputempBool > 0) or (self.parent.gpuBool > 0) or (self.parent.hddtempBool > 0) or (self.parent.playerBool > 0)):
self.parent.extsysmon = self.parent.dataEngine("ext-sysmon")
if (self.parent.timeBool > 0):
self.parent.timemon = self.parent.dataEngine("time")
self.parent.timemon.connectSource("Local", self.parent, 1000)
if (self.parent.uptimeBool > 0):
self.parent.systemmonitor.connectSource("system/uptime", self.parent, self.parent.interval)
if (self.parent.cpuBool > 0):
@ -270,8 +274,24 @@ class DataEngine:
line = line.split('$title')[0] + title + line.split('$title')[1]
text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1]
self.parent.label_player.setText(text)
elif (sourceName == "Local"):
if (self.parent.timeFormat.split('$time')[0] != self.parent.timeFormat):
value = str(data[QString(u'DateTime')].toString(Qt.TextDate).toUtf8())
line = self.parent.timeFormat.split('$time')[0] + value.decode("utf-8") + self.parent.timeFormat.split('$time')[1]
elif (self.parent.timeFormat.split('$isotime')[0] != self.parent.timeFormat):
value = str(data[QString(u'DateTime')].toString(Qt.ISODate).toUtf8())
line = self.parent.timeFormat.split('$isotime')[0] + value.decode("utf-8") + self.parent.timeFormat.split('$isotime')[1]
elif (self.parent.timeFormat.split('$shorttime')[0] != self.parent.timeFormat):
value = str(data[QString(u'DateTime')].toString(Qt.SystemLocaleShortDate).toUtf8())
line = self.parent.timeFormat.split('$shorttime')[0] + value.decode("utf-8") + self.parent.timeFormat.split('$shorttime')[1]
elif (self.parent.timeFormat.split('$longtime')[0] != self.parent.timeFormat):
value = str(data[QString(u'DateTime')].toString(Qt.SystemLocaleLongDate).toUtf8())
line = self.parent.timeFormat.split('$longtime')[0] + value.decode("utf-8") + self.parent.timeFormat.split('$longtime')[1]
else:
line = self.parent.timeFormat
text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1]
self.parent.label_time.setText(text)
self.parent.update()
except:
pass

View File

@ -120,14 +120,14 @@ class pyTextWidget(plasmascript.Applet):
# create dictionaries
self.dict_orders = {'6':'bat', '1':'cpu', '7':'cpuclock', '9':'gpu', 'a':'gputemp',
'b':'hdd', 'c':'hddtemp', '3':'mem', '5':'net', '4':'swap', '2':'temp', '8':'uptime',
'd':'player'}
'd':'player', 'e':'time'}
self.dict_defFormat = {'bat':'[bat: $bat%$ac]', 'cpu':'[cpu: $cpu%]',
'cpuclock':'[mhz: $cpucl]', 'gpu':'[gpu: $gpu%]',
'gputemp':'[gpu temp: $gputemp&deg;C]', 'hdd':'[hdd: @@/@@%]',
'hddtemp':'[hdd temp: @@/dev/sda@@&deg;C]', 'mem':'[mem: $mem%]',
'net':'[$netdev: $netKB/s]', 'swap':'[swap: $swap%]',
'temp':'[temp: $temp&deg;C]', 'uptime':'[uptime: $uptime]',
'player':'[$artist - $title]'}
'player':'[$artist - $title]', 'time':'[$time]'}
def showConfigurationInterface(self):
"""function to show configuration window"""

View File

@ -180,6 +180,12 @@ class PTMNotify:
def initText(self, sender):
"""function to send text"""
try:
if (sender == self.parent.parent.label_time):
content = self.createText("system")
return content
except:
pass
try:
if (sender == self.parent.parent.label_uptime):
content = self.createText("system")

View File

@ -307,6 +307,17 @@ class Reinit():
text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1]
self.parent.label_player.setText(text)
self.parent.layout.addItem(self.parent.label_player)
elif (order == "e"):
if (self.parent.timeBool > 0):
self.parent.timeFormat = str(settings.get('timeFormat', '[$time]'))
self.parent.label_time = NewPlasmaLabel(self.parent.applet, self.parent)
if (self.parent.timeFormat.split('$time')[0] != self.parent.timeFormat):
line = self.parent.timeFormat.split('$time')[0] + '----------------------' + self.parent.timeFormat.split('$time')[1]
else:
line = self.parent.timeFormat
text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1]
self.parent.label_time.setText(text)
self.parent.layout.addItem(self.parent.label_time)
if not confAccept:
self.parent.applet.setLayout(self.parent.layout)
self.parent.theme = Plasma.Svg(self.parent)

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>575</width>
<height>530</height>
<height>561</height>
</rect>
</property>
<property name="sizePolicy">
@ -42,6 +42,64 @@
<string>Widget settings</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<layout class="QHBoxLayout" name="layout_time">
<item>
<widget class="QCheckBox" name="checkBox_time">
<property name="minimumSize">
<size>
<width>120</width>
<height>0</height>
</size>
</property>
<property name="text">
<string notr="true">Time</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_time">
<property name="toolTip">
<string notr="true">$time - time in default format
$isotime - time in ISO format
$shorttime - time in short format
$longtime - time in log format</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="slider_time">
<property name="maximumSize">
<size>
<width>120</width>
<height>16777215</height>
</size>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="tickPosition">
<enum>QSlider::TicksAbove</enum>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_uptime">
<item>
@ -82,11 +140,14 @@
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>2</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
@ -138,13 +199,13 @@ $ccpu - load CPU for each core, %</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>2</number>
<number>3</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -197,13 +258,13 @@ $ccpucl - CPU clock for each core, MHz</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>3</number>
<number>4</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -268,13 +329,13 @@ $ccpucl - CPU clock for each core, MHz</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>4</number>
<number>5</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -326,13 +387,13 @@ $ccpucl - CPU clock for each core, MHz</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>5</number>
<number>6</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -384,13 +445,13 @@ $ccpucl - CPU clock for each core, MHz</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>6</number>
<number>7</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -443,13 +504,13 @@ $memmb - RAM usage, MB</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>7</number>
<number>8</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -502,13 +563,13 @@ $swapmb - swap usage, MB</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>8</number>
<number>9</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -560,13 +621,13 @@ $swapmb - swap usage, MB</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>9</number>
<number>10</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -618,13 +679,13 @@ $swapmb - swap usage, MB</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>10</number>
<number>11</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -678,13 +739,13 @@ $netdev - current network device
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>11</number>
<number>12</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -737,13 +798,13 @@ $ac - AC status</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>12</number>
<number>13</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -907,13 +968,13 @@ $artist - song artist</string>
<number>1</number>
</property>
<property name="maximum">
<number>13</number>
<number>14</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="value">
<number>13</number>
<number>14</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
@ -1268,6 +1329,9 @@ $artist - song artist</string>
</customwidgets>
<tabstops>
<tabstop>tabWidget</tabstop>
<tabstop>checkBox_time</tabstop>
<tabstop>lineEdit_time</tabstop>
<tabstop>slider_time</tabstop>
<tabstop>checkBox_uptime</tabstop>
<tabstop>lineEdit_uptime</tabstop>
<tabstop>slider_uptime</tabstop>

View File

@ -12,7 +12,7 @@ X-Plasma-RequiredExtensions=LaunchApp,LocalIO,FileDialog
X-KDE-PluginInfo-Author=Evgeniy Alekseev aka arcanis
X-KDE-PluginInfo-Email=esalexeev@gmail.com
X-KDE-PluginInfo-Name=py-text-monitor
X-KDE-PluginInfo-Version=1.5.0
X-KDE-PluginInfo-Version=1.5.2
X-KDE-PluginInfo-Website=http://kde-look.org/
X-KDE-PluginInfo-Category=System Information
X-KDE-PluginInfo-Depends=