From 54174974b19556897061971eeaa4abb87c4712b6 Mon Sep 17 00:00:00 2001 From: arcan1s Date: Tue, 2 Sep 2014 03:29:17 +0400 Subject: [PATCH] edit supported information update desktop panel to tag changes --- PKGBUILD | 11 +- README.md | 218 +++++++++--------- create_archive.sh | 2 +- ... kdeplasma-applets-awesome-widgets.install | 0 sources/CMakeLists.txt | 4 +- sources/awesome-widget/configuration.cpp | 45 ++-- sources/desktop-panel/desktop-panel.cpp | 20 +- sources/desktop-panel/widget.ui | 8 +- 8 files changed, 153 insertions(+), 155 deletions(-) rename kdeplasma-applets-pytextmonitor.install => kdeplasma-applets-awesome-widgets.install (100%) diff --git a/PKGBUILD b/PKGBUILD index 05fdbe3..f4e8cbd 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,12 +1,12 @@ # Maintainer: Evgeniy "arcanis" Alexeev -pkgname=kdeplasma-applets-pytextmonitor -_pkgname=pytextmonitor +pkgname=kdeplasma-applets-awesome-widgets +_pkgname=awesome-widgets pkgver=1.11.0 pkgrel=1 -pkgdesc="Minimalistic Plasmoid script written on Python2. It looks like widgets in Awesome WM" +pkgdesc="Collection of minimalistic Plasmoids which looks like Awesome WM widgets" arch=('i686' 'x86_64') -url="http://arcanis.name/projects/pytextmonitor" +url="http://arcanis.name/projects/awesome-widgets" license=('GPL3') depends=('kdebase-workspace' 'kdebindings-python2' 'lm_sensors') optdepends=("amarok: for music player monitor" @@ -19,11 +19,10 @@ optdepends=("amarok: for music player monitor" "qmmp: for music player monitor" "sysstat: for popup messages") makedepends=('automoc4' 'cmake') -source=(https://github.com/arcan1s/pytextmonitor/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz) +source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz) install=${pkgname}.install md5sums=('23b3f2f2d0a8bd87354d721cbf43ee22') backup=('usr/share/config/extsysmon.conf') -changelog=CHANGELOG prepare() { rm -rf "${srcdir}/build" diff --git a/README.md b/README.md index 2f2af4a..d60824c 100644 --- a/README.md +++ b/README.md @@ -1,79 +1,83 @@ -pytextmonitor -============= +awesome-widgets +=============== Information ----------- -PyTextMonitor is a minimalistic Plasmoid script written on Python2. It looks like widgets in awesome-wm. +A collection of minimalistic widgets which looks like Awesome WM widgets. -**NOTE** [LOOKING FOR TRANSLATORS!](https://github.com/arcan1s/pytextmonitor/issues/14) +**NOTE** [LOOKING FOR TRANSLATORS!](https://github.com/arcan1s/awesome-widgets/issues/14) Configuration ------------- For edited output you must open Settings window and setup output format in lines: -* tag `$time` - time in default format. For example, *fri Nov 6 04:48:01 2013* -* tag `$isotime` - time in iso format -* tag `$shorttime` - time in short locale format -* tag `$longtime` - time in long locale format -* tag `$custom` - custom time format -* tag `$uptime` - uptime, *---d--h--m* -* tag `$custom` - custom uptime format -* tag `$cpu` - total load cpu, *%* -* tag `$cpuN` - load CPU for core N, *%* -* tag `$cpucl` - average cpu clock, *MHz* -* tag `$cpuclN` - cpu clock for core N, *MHz* -* tag `$tempN` - temperature for device N. For example, `$temp0` -* tag `$gpu` - GPU usage, *%*. `aticonfig` or `nvidia-smi` must be installed -* tag `$gputemp` - GPU temperature. `aticonfig` or `nvidia-smi` must be installed -* tag `$mem` - usage memory, *%* -* tag `$memmb` - usage memory, *MB* -* tag `$memgb` - usage memory, *GB* -* tag `$memtotmb` - total RAM, *MB* -* tag `$memtotgb` - total RAM, *GB* -* tag `$swap` - swap, *%* -* tag `$swapmb` - swap, *MB* -* tag `$swapgb` - swap, *GB* -* tag `$swaptotmb` - total swap, *MB* -* tag `$swaptotgb` - total swap, *GB* -* tag `$hddN` - usage for mount point N, *%*. For example, `$hdd0` -* tag `$hddmbN` - usage for mount point N, *MB*. For example, `$hddmb0` -* tag `$hddgbN` - usage for mount point N, *GB*. For example, `$hddgb0` -* tag `$hddtotmbN` - total size of mount point N, *MB*. For example, `$hddtotmb0` -* tag `$hddtotgbN` - total size of mount point N, *GB*. For example, `$hddtotgb0` -* tag `$hddrN` - read speed of disk N, *KB/s*. For example, `$hddr0` -* tag `$hddwN` - write speed of disk N, *KB/s*. For example, `$hddw0` -* tag `$hddtempN` - temperature for HDD N. For example, `$hddtemp0` -* tag `$down` - download speed, *KB/s* -* tag `$up` - upload speed, *KB/s* -* tag `$netdev` - current network device -* tag `$bat` - battery charge, *%* -* tag `$ac` - status AC device. Return (\*) if AC device is online or *( )* if offline -* tag `$album` - current song album. One of supported music players must be installed -* tag `$artist` - current song artist. One of supported music players must be installed -* tag `$progress` - current song progress. One of supported music players must be installed -* tag `$time` - current song duration. One of supported music players must be installed -* tag `$title` - current song title. One of supported music players must be installed -* tag `$pscount` - number of running processes -* tag `$pstotal` - total number of processes -* tag `$ps` - list of running processes -* tag `$pkgcountN` - number of packages, which available to upgrade for command N. For example, `$pkgcount0` -* tag `$customN` - returns output for custom command N. For example, `$custom0` -* tag `$name` - name of the current desktop -* tag `$number` - number of the current desktop -* tag `$total` - total number of desktops - -Label order will changed if you change slider position. HTML tags in label work normally. - -**NOTE** you don't may set to show `$cpu` tag in swap label for example. **`$cpu` will work only in cpu label**. +* tag `$time$` - time in default format. For example, *fri Nov 6 04:48:01 2013* +* tag `$isotime$` - time in iso format +* tag `$shorttime$` - time in short locale format +* tag `$longtime$` - time in long locale format +* tag `$ctime$` - custom time format +* tag `$uptime$` - uptime, *---d--h--m* +* tag `$cuptime$` - custom uptime format +* tag `$cpu$` - total load cpu, *%* +* tag `$cpuN$` - load CPU for core N, *%* +* tag `$cpucl$` - average cpu clock, *MHz* +* tag `$cpuclN$` - cpu clock for core N, *MHz* +* tag `$tempN$` - temperature for device N. For example, `$temp0` +* tag `$gpu$` - GPU usage, *%*. `aticonfig` or `nvidia-smi` must be installed +* tag `$gputemp$` - GPU temperature. `aticonfig` or `nvidia-smi` must be installed +* tag `$mem$` - usage memory, *%* +* tag `$memmb$` - usage memory, *MB* +* tag `$memgb$` - usage memory, *GB* +* tag `$memfreemb$` - free RAM, *MB* +* tag `$memfreegb$` - free RAM, *GB* +* tag `$memtotmb$` - total RAM, *MB* +* tag `$memtotgb$` - total RAM, *GB* +* tag `$memusedmb$` - used and cached RAM, *MB* +* tag `$memusedgb$` - used and cached RAM, *GB* +* tag `$swap$` - swap, *%* +* tag `$swapmb$` - swap, *MB* +* tag `$swapgb$` - swap, *GB* +* tag `$swapfreemb$` - free swap, *MB* +* tag `$swapfreegb$` - free swap, *GB* +* tag `$swaptotmb$` - total swap, *MB* +* tag `$swaptotgb$` - total swap, *GB* +* tag `$hddN$` - usage for mount point N, *%*. For example, `$hdd0` +* tag `$hddmbN$` - usage for mount point N, *MB*. For example, `$hddmb0` +* tag `$hddgbN$` - usage for mount point N, *GB*. For example, `$hddgb0` +* tag `$hddfreembN$` - free space for mount point N, *MB*. For example, `$hddfreemb0` +* tag `$hddfreegbN$` - free space for mount point N, *GB*. For example, `$hddfreegb0` +* tag `$hddtotmbN$` - total size of mount point N, *MB*. For example, `$hddtotmb0` +* tag `$hddtotgbN$` - total size of mount point N, *GB*. For example, `$hddtotgb0` +* tag `$hddrN$` - read speed of disk N, *KB/s*. For example, `$hddr0` +* tag `$hddwN$` - write speed of disk N, *KB/s*. For example, `$hddw0` +* tag `$hddtempN$` - temperature for HDD N. For example, `$hddtemp0` +* tag `$down$` - download speed, *KB/s* +* tag `$up$` - upload speed, *KB/s* +* tag `$netdev$` - current network device +* tag `$bat$` - battery charge, *%* +* tag `$ac$` - status AC device. Return (\*) if AC device is online or *( )* if offline +* tag `$album$` - current song album. One of supported music players must be installed +* tag `$artist$` - current song artist. One of supported music players must be installed +* tag `$duration$` - current song duration. One of supported music players must be installed +* tag `$progress$` - current song progress. One of supported music players must be installed +* tag `$title$` - current song title. One of supported music players must be installed +* tag `$pscount$` - number of running processes +* tag `$pstotal$` - total number of processes +* tag `$ps$` - list of running processes +* tag `$pkgcountN$` - number of packages, which available to upgrade for command N. For example, `$pkgcount0` +* tag `$customN$` - returns output for custom command N. For example, `$custom0` +* tag `$desktop$` - name of the current desktop +* tag `$ndesktop$` - number of the current desktop +* tag `$tdesktops$` - total number of desktops Tips & tricks ------------- -You may use different colors for labels. Just put label text into html code. See [issue](https://github.com/arcan1s/pytextmonitor/issues/9) for more details. +You may use different colors for labels. Just put label text into html code. See [issue](https://github.com/arcan1s/awesome-widgets/issues/9) for more details. -Numbering of elements of temperature, HDD usage, HDD speed, HDD temperature refers to elements order from second tab (*Advanced settings*). You should add item to the required listWidget first. And the first element in the listWidget will be `$tag0`. See [issue](https://github.com/arcan1s/pytextmonitor/issues/17) for more details. +Numbering of elements of temperature, HDD usage, HDD speed, HDD temperature refers to elements order from second tab (*Advanced settings*). You should add item to the required listWidget first. And the first element in the listWidget will be `$tag0`. See [issue](https://github.com/arcan1s/awesome-widgets/issues/17) for more details. Advanced settings ----------------- @@ -96,63 +100,55 @@ Add stretch (spacer) to the selected side of the widget. **Custom time** -* tag `$dddd` - weekday in long format -* tag `$ddd` - weekday in short format -* tag `$dd` - day -* tag `$d` - day without zero -* tag `$MMMM` - month in long format -* tag `$MMM` - month in short format -* tag `$MM` - month -* tag `$M` - month without zero -* tag `$yyyy` - year -* tag `$yy` - year in short format -* tag `$hh` - hours -* tag `$h` - hours without zero -* tag `$mm` - minutes -* tag `$m` - minutes without zero -* tag `$ss` - seconds -* tag `$s` - seconds without zero +* tag `$dddd$` - weekday in long format +* tag `$ddd$` - weekday in short format +* tag `$dd$` - day +* tag `$d$` - day without zero +* tag `$MMMM$` - month in long format +* tag `$MMM$` - month in short format +* tag `$MM$` - month +* tag `$M$` - month without zero +* tag `$yyyy$` - year +* tag `$yy$` - year in short format +* tag `$hh$` - hours +* tag `$h$` - hours without zero +* tag `$mm$` - minutes +* tag `$m$` - minutes without zero +* tag `$ss$` - seconds +* tag `$s$` - seconds without zero **Custom uptime** -* tag `$dd` - uptime days -* tag `$d` - uptime days without zero -* tag `$hh` - uptime hours -* tag `$h` - uptime hours without zero -* tag `$mm` - uptime minutes -* tag `$m` - uptime minutes without zero +* tag `$dd$` - uptime days +* tag `$d$` - uptime days without zero +* tag `$hh$` - uptime hours +* tag `$h$` - uptime hours without zero +* tag `$mm$` - uptime minutes +* tag `$m$` - uptime minutes without zero **Temperature units** -Select units for temperature. Available units are Celsius, Farenheit and Kelvin. +Select units for temperature. Available units are Celsius, Farenheit, Kelvin, Reaumur, cm^-1, kJ/mol, kcal/mol. **Temperature devices** -List of devices, which will be observed in temp label (combo box items come from `sensors`). List widget is editable, delete key will remove current item. +List of devices, which will be observed in temp label (items come from `sensors`). List widget is editable, **Mount points** -List of mount points, which will be observed in hdd label (combo box items come from `mount`). List widget is editable, delete key will remove current item. +List of mount points, which will be observed in hdd label (items come from `mount`). List widget is editable. **HDD (speed)** -List of hard disk devices, which will be observed in hddspeed label (combo box items come from DataEngine). List widget is editable, delete key will remove current item. +List of hard disk devices, which will be observed in hddspeed label (items come from DataEngine). List widget is editable. **HDD (temperature)** -List of hard disk devices, which will be observed in hddtemp label (combo box items come from `find`). List widget is editable, delete key will remove current item. - -**Network directory** - -Path to directory, which contains network devices information. Default is `/sys/class/net`. Required for auto select network device. +List of hard disk devices, which will be observed in hddtemp label (items come from `find`). List widget is editable. **Network device** -Use specified device as active. Combo box items come from **network directory**. Will disable auto select network device. - -**Battery device** - -File with battery information. File (`/sys/class/power_supply/BAT0/capacity` by default) should contain only battery charge in percent. +Use specified device as active. Will disable auto select network device. **AC online tag** @@ -162,10 +158,6 @@ Line which will be shown when AC is online. Line which will be shown when AC is offline. -**AC device** - -File with AC information. File (`/sys/class/power_supply/AC/online` by default) must contain `1` if AC is online. - Tooltip settings ---------------- @@ -174,9 +166,15 @@ Since version 1.7.0 CPU, CPU clock, memory, swap and network labels support grap DataEngine settings ------------------- -**Custom command** +**AC device** -*NOTE* This can cause the computer freeze. +File with AC information. File (`/sys/class/power_supply/AC/online` by default) must contain `1` if AC is online. + +**Battery device** + +File with battery information. File (`/sys/class/power_supply/BAT0/capacity` by default) should contain only battery charge in percent. + +**Custom command** Commands, which will be run for custom label. @@ -226,7 +224,7 @@ Select one of supported music playes for player label. PTM desktop panel ================= -Since version 1.11.0 PyTextMonitor provides a minimalistic panel for monitoring on desktops written on `C++`. And yes, it looks like the same panel in Awesome. +Since version 1.11.0 it provides a minimalistic panel for monitoring on desktops written on `C++`. And yes, it looks like the same panel in Awesome. Desktop panel configuration --------------------------- @@ -249,14 +247,14 @@ Type symbol (or string) which will be shown if this desktop is active now. **Pattern tags** -* tag `$mark` - show mark if this desktop is active -* tag `$name` - name of the current desktop -* tag `$number` - number of the current desktop -* tag `$total` - total number of desktops +* tag `$mark$` - show mark if this desktop is active +* tag `$name$` - name of the current desktop +* tag `$number$` - number of the current desktop +* tag `$total$` - total number of desktops **Command** -Type command which will be run on left click on the selected desktop. Available variables are same as for pattern. Default is `dbus org.kde.kwin /KWin setCurrentDesktop $number`. +Type command which will be run on left click on the selected desktop. Available variables are same as for pattern. Default is `dbus org.kde.kwin /KWin setCurrentDesktop $number$`. Instruction =========== @@ -307,7 +305,7 @@ TODO (wish list) Links ----- -* [Homepage](http://arcanis.name/projects/pytextmonitor/) +* [Homepage](http://arcanis.name/projects/awesome-widgets/) * Plasmoid on [kde-look](http://kde-look.org/content/show.php/Py+Text+Monitor?content=157124) * DataEngine on [kde-look](http://kde-look.org/content/show.php/Extended+Systemmonitor+DataEngine?content=158773) -* Archlinux [AUR](https://aur.archlinux.org/packages/kdeplasma-applets-pytextmonitor/) package +* Archlinux [AUR](https://aur.archlinux.org/packages/kdeplasma-applets-awesome-widgets/) package diff --git a/create_archive.sh b/create_archive.sh index 0800436..4970b20 100755 --- a/create_archive.sh +++ b/create_archive.sh @@ -18,7 +18,7 @@ tar cJf "${ARCHIVE}-${VERSION}-src.tar.xz" "${ARCHIVE}" rm -rf "${ARCHIVE}" # build widget -ARCHIVE="pytextmonitor" +ARCHIVE="awesome-widgets" FILES="AUTHORS CHANGELOG CHANGELOG-RU COPYING" IGNORELIST="build usr" # create archive diff --git a/kdeplasma-applets-pytextmonitor.install b/kdeplasma-applets-awesome-widgets.install similarity index 100% rename from kdeplasma-applets-pytextmonitor.install rename to kdeplasma-applets-awesome-widgets.install diff --git a/sources/CMakeLists.txt b/sources/CMakeLists.txt index 17e88a2..291a053 100644 --- a/sources/CMakeLists.txt +++ b/sources/CMakeLists.txt @@ -6,8 +6,8 @@ cmake_policy (SET CMP0011 NEW) cmake_policy (SET CMP0015 NEW) project (pytextmonitor) -set (PROJECT_VERSION_MAJOR 1) -set (PROJECT_VERSION_MINOR 11) +set (PROJECT_VERSION_MAJOR 2) +set (PROJECT_VERSION_MINOR 0) set (PROJECT_VERSION_PATCH 0) set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}) set (PROJECT_TRDPARTY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty) diff --git a/sources/awesome-widget/configuration.cpp b/sources/awesome-widget/configuration.cpp index 473156b..d876c71 100644 --- a/sources/awesome-widget/configuration.cpp +++ b/sources/awesome-widget/configuration.cpp @@ -47,7 +47,7 @@ QMap AwesomeWidget::readDataEngineConfiguration() rawConfig[QString("PKGNULL")] = QString("0"); rawConfig[QString("PLAYER")] = QString("mpris"); - QString fileName = KGlobal::dirs()->findResource("config", "ext-sysmon.conf"); + QString fileName = KGlobal::dirs()->findResource("config", "extsysmon.conf"); if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName; QFile configFile(fileName); if (!configFile.open(QIODevice::ReadOnly)) @@ -78,7 +78,7 @@ void AwesomeWidget::writeDataEngineConfiguration(const QMap se if (debug) qDebug() << PDEBUG; QMap config = updateDataEngineConfiguration(settings); - QString fileName = KGlobal::dirs()->locateLocal("config", "ext-sysmon.conf"); + QString fileName = KGlobal::dirs()->locateLocal("config", "extsysmon.conf"); if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName; QFile configFile(fileName); if (!configFile.open(QIODevice::WriteOnly)) return; @@ -126,6 +126,7 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent) if (debug) qDebug() << PDEBUG; QString cmd, qoutput; QStringList headerList; + TaskResult process; QWidget *advWidget = new QWidget; uiAdvancedConfig.setupUi(advWidget); @@ -165,11 +166,11 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent) Qt::MatchFixedString)); cmd = QString("sensors"); if (debug) qDebug() << PDEBUG << ":" << "cmd" << cmd; - TaskResult sensorsProcess = runTask(cmd); - if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << sensorsProcess.exitCode; - if (sensorsProcess.exitCode != 0) - if (debug) qDebug() << PDEBUG << ":" << "Error" << sensorsProcess.error; - qoutput = QTextCodec::codecForMib(106)->toUnicode(sensorsProcess.output); + process = runTask(cmd); + if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode; + if (process.exitCode != 0) + if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error; + qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output); uiAdvancedConfig.listWidget_tempDevice->clear(); for (int i=0; itoUnicode(mountProcess.output); + process = runTask(cmd); + if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode; + if (process.exitCode != 0) + if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error; + qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output); uiAdvancedConfig.listWidget_mount->clear(); for (int i=0; itoUnicode(findProcess.output).trimmed(); + process = runTask(cmd); + if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode; + if (process.exitCode != 0) + if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error; + qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed(); uiAdvancedConfig.listWidget_hddDevice->clear(); for (int i=0; ifindText(deSettings[QString("GPUDEV")], Qt::MatchFixedString)); cmd = QString("find /dev -name [hms]d[a-z]"); if (debug) qDebug() << PDEBUG << ":" << "cmd" << cmd; - TaskResult hddProcess = runTask(cmd); - if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << hddProcess.exitCode; - if (hddProcess.exitCode != 0) - if (debug) qDebug() << PDEBUG << ":" << "Error" << hddProcess.error; - qoutput = QTextCodec::codecForMib(106)->toUnicode(hddProcess.output).trimmed(); + process = runTask(cmd); + if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode; + if (process.exitCode != 0) + if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error; + qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed(); uiDEConfig.comboBox_hdddev->clear(); uiDEConfig.comboBox_hdddev->addItem(QString("all")); uiDEConfig.comboBox_hdddev->addItem(QString("disable")); diff --git a/sources/desktop-panel/desktop-panel.cpp b/sources/desktop-panel/desktop-panel.cpp index a65ca76..bf469f3 100644 --- a/sources/desktop-panel/desktop-panel.cpp +++ b/sources/desktop-panel/desktop-panel.cpp @@ -167,21 +167,21 @@ QString DesktopPanel::parsePattern(const QString rawLine, const int num) mark = configuration[QString("mark")]; else mark = QString(""); - if (line.split(QString("$mark"))[0] != line) { + if (line.split(QString("$mark$"))[0] != line) { if (debug) qDebug() << PDEBUG << ":" << "Found mark"; - line = line.split(QString("$mark"))[0] + mark + line.split(QString("$mark"))[1]; + line = line.split(QString("$mark$"))[0] + mark + line.split(QString("$mark$"))[1]; } - if (line.split(QString("$name"))[0] != line) { + if (line.split(QString("$name$"))[0] != line) { if (debug) qDebug() << PDEBUG << ":" << "Found name"; - line = line.split(QString("$name"))[0] + desktopNames[num] + line.split(QString("$name"))[1]; + line = line.split(QString("$name$"))[0] + desktopNames[num] + line.split(QString("$name$"))[1]; } - if (line.split(QString("$number"))[0] != line) { + if (line.split(QString("$number$"))[0] != line) { if (debug) qDebug() << PDEBUG << ":" << "Found number"; - line = line.split(QString("$number"))[0] + QString::number(num + 1) + line.split(QString("$number"))[1]; + line = line.split(QString("$number$"))[0] + QString::number(num + 1) + line.split(QString("$number$"))[1]; } - if (line.split(QString("$total"))[0] != line) { + if (line.split(QString("$total$"))[0] != line) { if (debug) qDebug() << PDEBUG << ":" << "Found total"; - line = line.split(QString("$total"))[0] + QString::number(desktopNames.count()) + line.split(QString("$total"))[1]; + line = line.split(QString("$total$"))[0] + QString::number(desktopNames.count()) + line.split(QString("$total$"))[1]; } return line; @@ -443,13 +443,13 @@ void DesktopPanel::configChanged() KConfigGroup cg = config(); configuration[QString("background")] = cg.readEntry("background", "2"); - configuration[QString("desktopcmd")] = cg.readEntry("desktopcmd", "qdbus org.kde.kwin /KWin setCurrentDesktop $number"); + configuration[QString("desktopcmd")] = cg.readEntry("desktopcmd", "qdbus org.kde.kwin /KWin setCurrentDesktop $number$"); configuration[QString("interval")] = cg.readEntry("interval", "1000"); configuration[QString("layout")] = cg.readEntry("layout", "0"); configuration[QString("leftStretch")] = cg.readEntry("leftStretch", "2"); configuration[QString("mark")] = cg.readEntry("mark", "ยค"); configuration[QString("panels")] = cg.readEntry("panels", "-1"); - configuration[QString("pattern")] = cg.readEntry("pattern", "[$mark$number/$total: $name]"); + configuration[QString("pattern")] = cg.readEntry("pattern", "[$mark$$number$/$total$: $name$]"); configuration[QString("rightStretch")] = cg.readEntry("rightStretch", "2"); extsysmonEngine->connectSource(QString("desktop"), this, configuration[QString("interval")].toInt()); diff --git a/sources/desktop-panel/widget.ui b/sources/desktop-panel/widget.ui index bdb43bc..4261585 100644 --- a/sources/desktop-panel/widget.ui +++ b/sources/desktop-panel/widget.ui @@ -233,10 +233,10 @@ - $mark - show mark if the current desktop is active -$name - desktop name -$number - desktop number -$total - total number of desktops + $mark$ - show mark if the current desktop is active +$name$ - desktop name +$number$ - desktop number +$total$ - total number of desktops