diff --git a/sources/ptm/contents/code/config.py b/sources/ptm/contents/code/config.py index 03ccc26..37fb1a7 100644 --- a/sources/ptm/contents/code/config.py +++ b/sources/ptm/contents/code/config.py @@ -1,20 +1,22 @@ # -*- coding: utf-8 -*- -# Copyright 2012 Alex Oleshkevich -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +############################################################################ +# Copyright 2012 Alex Oleshkevich # +# # +# This program is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 2 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., # +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # +############################################################################ from util import * diff --git a/sources/ptm/contents/code/configdef.py b/sources/ptm/contents/code/configdef.py index b733759..ce6ce43 100644 --- a/sources/ptm/contents/code/configdef.py +++ b/sources/ptm/contents/code/configdef.py @@ -17,6 +17,7 @@ # along with pytextmonitor. If not, see http://www.gnu.org/licenses/ # ############################################################################ +from PyQt4.QtCore import * from PyQt4.QtGui import * from PyKDE4.kdecore import * from PyKDE4.kdeui import * @@ -53,6 +54,32 @@ class ConfigDefinition: self.parent.font_weight = self.configpage.ui.spinBox_weight.value() settings.set('font_weight', self.parent.font_weight) + self.parent.custom_time = str(self.configpage.ui.lineEdit_timeFormat.text()) + settings.set('custom_time', self.parent.custom_time) + self.parent.custom_uptime = str(self.configpage.ui.lineEdit_uptimeFormat.text()) + settings.set('custom_uptime', self.parent.custom_uptime) + # temp and mount below + self.parent.hddNames = [] + self.parent.hdd = {} + for item in self.configpage.ui.listWidget_hddDevice.items(QMimeData()): + self.parent.hddNames.append(str(item.text())) + self.parent.hdd[str(item.text())] =" 0.0" + settings.set('hdd', '@@'.join(self.parent.hddNames)) + self.parent.netdir = str(self.configpage.ui.lineEdit_netdir.text()) + settings.set('netdir', self.parent.netdir) + self.parent.netdevBool = str(self.configpage.ui.checkBox_netdev.checkState()) + settings.set('netdevBool', self.parent.netdevBool) + self.parent.custom_netdev = str(self.configpage.ui.comboBox_netdev.currentText()) + settings.set('custom_netdev', self.parent.custom_netdev) + self.parent.battery_device = str(self.configpage.ui.lineEdit_batdev.text()) + settings.set('battery_device', self.parent.battery_device) + self.parent.ac_device = str(self.configpage.ui.lineEdit_acdev.text()) + settings.set('ac_device', self.parent.ac_device) + self.parent.player_name = self.configpage.ui.comboBox_playerSelect.currentIndex() + settings.set('player_name', self.parent.player_name) + self.parent.custom_command = str(self.configpage.ui.lineEdit_customCommand.text()) + settings.set('custom_command', self.parent.custom_command) + # disconnecting from source and clear layout if (self.parent.uptimeBool > 0): self.parent.systemmonitor.disconnectSource("system/uptime", self.parent) @@ -60,36 +87,27 @@ class ConfigDefinition: self.parent.layout.removeItem(self.parent.label_uptime) if (self.parent.cpuBool > 0): self.parent.systemmonitor.disconnectSource("cpu/system/TotalLoad", self.parent) - if (self.parent.cpuFormat.split('$ccpu')[0] != self.parent.cpuFormat): - self.parent.label_cpu.setText('') - self.parent.layout.removeItem(self.parent.label_cpu) - self.parent.label_cpu1.setText('') - self.parent.layout.removeItem(self.parent.label_cpu1) - for core in range(self.parent.numCores): - self.parent.systemmonitor.disconnectSource("cpu/cpu"+str(core)+"/TotalLoad", self.parent) - exec ("self.parent.label_coreCpu" + str(core) + ".setText('')") - exec ("self.parent.layout.removeItem(self.parent.label_coreCpu" + str(core) + ")") - else: - self.parent.label_cpu.setText('') - self.parent.layout.removeItem(self.parent.label_cpu) + for core in self.parent.cpuCore.keys(): + self.parent.systemmonitor.disconnectSource("cpu/cpu"+str(core)+"/TotalLoad", self.parent) + self.parent.label_cpu.setText('') + self.parent.layout.removeItem(self.parent.label_cpu) if (self.parent.cpuclockBool > 0): self.parent.systemmonitor.disconnectSource("cpu/system/AverageClock", self.parent) - if (self.parent.cpuclockFormat.split('$ccpu')[0] != self.parent.cpuclockFormat): - self.parent.label_cpuclock.setText('') - self.parent.layout.removeItem(self.parent.label_cpuclock) - self.parent.label_cpuclock1.setText('') - self.parent.layout.removeItem(self.parent.label_cpuclock1) - for core in range(self.parent.numCores): - self.parent.systemmonitor.disconnectSource("cpu/cpu"+str(core)+"/clock", self.parent) - exec ("self.parent.label_coreCpuclock" + str(core) + ".setText('')") - exec ("self.parent.layout.removeItem(self.parent.label_coreCpuclock" + str(core) + ")") - else: - self.parent.label_cpuclock.setText('') - self.parent.layout.removeItem(self.parent.label_cpuclock) + for core in self.parent.cpuClockCore.keys(): + self.parent.systemmonitor.disconnectSource("cpu/cpu"+str(core)+"/clock", self.parent) + self.parent.label_cpuclock.setText('') + self.parent.layout.removeItem(self.parent.label_cpuclock) if (self.parent.tempBool > 0): - self.parent.systemmonitor.disconnectSource(self.parent.tempdev, self.parent) + for item in self.parent.temp: + self.parent.systemmonitor.disconnectSource(item[0], self.parent) self.parent.label_temp.setText('') self.parent.layout.removeItem(self.parent.label_temp) + self.parent.tempNames = [] + self.parent.temp = {} + for item in self.configpage.ui.listWidget_tempDevice.items(QMimeData()): + self.parent.tempNames.append(str(item.text())) + self.parent.temp[str(item.text())] =" 0.0" + settings.set('temp_device', '@@'.join(self.parent.tempNames)) if (self.parent.gpuBool > 0): self.parent.extsysmon.disconnectSource("gpu", self.parent) self.parent.label_gpu.setText('') @@ -112,14 +130,16 @@ class ConfigDefinition: self.parent.label_swap.setText('') self.parent.layout.removeItem(self.parent.label_swap) if (self.parent.hddBool > 0): - for mount in self.parent.mountPoints: - self.parent.systemmonitor.disconnectSource("partitions" + mount + "/filllevel", self.parent) - exec ('self.parent.label_hdd_' + ''.join(mount.split('/')) + '.setText("")') - exec ("self.parent.layout.removeItem(self.parent.label_hdd_" + ''.join(mount.split('/')) + ")") - self.parent.label_hdd0.setText('') - self.parent.label_hdd1.setText('') - self.parent.layout.removeItem(self.parent.label_hdd0) - self.parent.layout.removeItem(self.parent.label_hdd1) + for item in self.parent.mount: + self.parent.systemmonitor.disconnectSource("partitions" + item[0] + "/filllevel", self.parent) + self.parent.label_hdd.setText('') + self.parent.layout.removeItem(self.parent.label_hdd) + self.parent.mountNames = [] + self.parent.mount = {} + for item in self.configpage.ui.listWidget_mount.items(QMimeData()): + self.parent.mountNames.append(str(item.text())) + self.parent.mount[str(item.text())] =" 0.0" + settings.set('mount', '@@'.join(self.parent.mountNames)) if (self.parent.hddtempBool > 0): self.parent.extsysmon.disconnectSource("hddtemp", self.parent) self.parent.label_hddtemp.setText('') @@ -127,10 +147,8 @@ class ConfigDefinition: if (self.parent.netBool > 0): self.parent.systemmonitor.disconnectSource("network/interfaces/"+self.parent.netdev+"/transmitter/data", self.parent) self.parent.systemmonitor.disconnectSource("network/interfaces/"+self.parent.netdev+"/receiver/data", self.parent) - self.parent.label_netDown.setText('') - self.parent.label_netUp.setText('') - self.parent.layout.removeItem(self.parent.label_netUp) - self.parent.layout.removeItem(self.parent.label_netDown) + self.parent.label_net.setText('') + self.parent.layout.removeItem(self.parent.label_net) if (self.parent.batBool > 0): self.parent.label_bat.setText('') self.parent.layout.removeItem(self.parent.label_bat) @@ -142,8 +160,11 @@ class ConfigDefinition: self.parent.timemon.disconnectSource("Local", self.parent) self.parent.label_time.setText('') self.parent.layout.removeItem(self.parent.label_time) + if (self.parent.customBool > 0): + self.parent.label_custom.setText('') + self.parent.layout.removeItem(self.parent.label_custom) - 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())) @@ -156,19 +177,7 @@ class ConfigDefinition: else: exec ('self.parent.' + self.parent.dict_orders[label] + 'Format = str(self.configpage.lineedits[self.parent.dict_orders[label]].text())') exec ('settings.set("' + self.parent.dict_orders[label] + 'Format", self.parent.' + self.parent.dict_orders[label] + 'Format)') - exec ('settings.set("' + self.parent.dict_orders[label] + 'Bool", self.parent.' + self.parent.dict_orders[label] + 'Bool)') - if (self.parent.dict_orders[label] == 'bat'): - self.parent.battery_device = str(self.configpage.ui.lineEdit_batdev.text()) - self.parent.ac_device = str(self.configpage.ui.lineEdit_acdev.text()) - settings.set('battery_device', self.parent.battery_device) - settings.set('ac_device', self.parent.ac_device) - elif (self.parent.dict_orders[label] == 'temp'): - self.parent.tempdev = str(self.configpage.ui.comboBox_temp.currentText()) - settings.set('temp_device', self.parent.tempdev) - elif (self.parent.dict_orders[label] == 'player'): - self.parent.player_name = self.configpage.ui.comboBox_player.currentIndex() - settings.set('player_name', self.parent.player_name) - + exec ('settings.set("' + self.parent.dict_orders[label] + 'Bool", self.parent.' + self.parent.dict_orders[label] + 'Bool)') self.parent.label_order = ''.join(self.parent.label_order.split('-')) settings.set('label_order', self.parent.label_order) @@ -191,6 +200,52 @@ class ConfigDefinition: else: self.configpage.ui.comboBox_style.setCurrentIndex(1) self.configpage.ui.spinBox_weight.setValue(settings.get('font_weight', 400).toInt()[0]) + + self.configpage.ui.lineEdit_timeFormat.setText(str(settings.get('custom_time', '$hh:$mm'))) + self.configpage.ui.lineEdit_uptimeFormat.setText(str(settings.get('custom_uptime', '$ds,$hs,$ms'))) + commandOut = commands.getoutput("sensors") + for item in commandOut.split("\n\n"): + for device in item.split("\n"): + if (device.find('\xc2\xb0C') > -1): + try: + tempdev = 'lmsensors/' + item.split("\n")[0] + '/' + '_'.join(device.split(":")[0].split()) + self.configpage.ui.comboBox_tempDevice.addItem(tempdev) + except: + pass + self.configpage.ui.listWidget_tempDevice.clear() + for item in str(settings.get('temp_device', '')).split('@@'): + if (len(item) > 0): + self.configpage.ui.listWidget_tempDevice.addItem(item) + commandOut = commands.getoutput("mount") + for item in commandOut.split("\n"): + try: + mount = item.split(' on ')[1].split(' type ')[0] + self.configpage.ui.comboBox_mount.addItem(mount) + except: + pass + self.configpage.ui.listWidget_mount.clear() + for item in str(settings.get('mount', '/')).split('@@'): + self.configpage.ui.listWidget_mount.addItem(item) + commandOut = commands.getoutput("find /dev -name '[hs]d[a-z]'") + for item in commandOut.split("\n"): + try: + self.configpage.ui.comboBox_hddDevice.addItem(item) + except: + pass + self.configpage.ui.listWidget_hddDevice.clear() + for item in str(settings.get('hdd', '/dev/sda')).split('@@'): + self.configpage.ui.listWidget_hddDevice.addItem(item) + self.configpage.ui.lineEdit_netdir.setText(str(settings.get('netdir', '/sys/class/net'))) + self.configpage.ui.checkBox_netdev.setCheckState(settings.get('netdevBool', 0).toInt()[0]) + for item in QDir.entryList(QDir(str(settings.get('netdir', '/sys/class/net'))), QDir.Dirs | QDir.NoDotAndDotDot): + self.configpage.ui.comboBox_netdev.addItem(item) + index = self.configpage.ui.comboBox_netdev.findText(str(settings.get('custom_netdev', 'lo'))) + self.configpage.ui.comboBox_netdev.setCurrentIndex(index) + self.configpage.ui.lineEdit_batdev.setText(str(settings.get('battery_device', '/sys/class/power_supply/BAT0/capacity'))) + self.configpage.ui.lineEdit_acdev.setText(str(settings.get('ac_device', '/sys/class/power_supply/AC/online'))) + self.configpage.ui.comboBox_playerSelect.setCurrentIndex(settings.get('player_name', 0).toInt()[0]) + self.configpage.ui.lineEdit_customCommand.setText(str(settings.get('custom_command', 'wget -qO- http://ifconfig.me/ip'))) + for label in self.parent.dict_orders.keys(): exec ('bool = self.parent.' + self.parent.dict_orders[label] + 'Bool') self.configpage.checkboxes[self.parent.dict_orders[label]].setCheckState(bool) @@ -200,22 +255,6 @@ class ConfigDefinition: self.configpage.lineedits[self.parent.dict_orders[label]].setText(str(settings.get(self.parent.dict_orders[label] + 'NonFormat', self.parent.dict_defFormat[self.parent.dict_orders[label]]))) else: self.configpage.lineedits[self.parent.dict_orders[label]].setText(str(settings.get(self.parent.dict_orders[label] + 'Format', self.parent.dict_defFormat[self.parent.dict_orders[label]]))) - if (self.parent.dict_orders[label] == 'bat'): - self.configpage.ui.lineEdit_batdev.setText(str(settings.get('battery_device', '/sys/class/power_supply/BAT0/capacity'))) - self.configpage.ui.lineEdit_acdev.setText(str(settings.get('ac_device', '/sys/class/power_supply/AC/online'))) - elif (self.parent.dict_orders[label] == 'temp'): - self.configpage.ui.comboBox_temp.addItem(str(settings.get('temp_device', '')) self.parent.tempFormat = str(settings.get('tempFormat', '[temp: $temp°C]')) self.parent.label_temp = NewPlasmaLabel(self.parent.applet, self.parent) - if (self.parent.tempFormat.split('$temp')[0] != self.parent.tempFormat): - line = self.parent.tempFormat.split('$temp')[0] + '----' + self.parent.tempFormat.split('$temp')[1] - else: - line = self.parent.tempFormat + line = self.parent.tempFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] self.parent.label_temp.setText(text) self.parent.layout.addItem(self.parent.label_temp) elif (order == "3"): if (self.parent.memBool > 0): self.parent.memFormat = str(settings.get('memFormat', '[mem: $mem%]')) + self.parent.label_mem = NewPlasmaLabel(self.parent.applet, self.parent) if (self.parent.memFormat.split('$memmb')[0] != self.parent.memFormat): self.parent.memInMb = True - line = self.parent.memFormat.split('$memmb')[0] + '-----' + self.parent.memFormat.split('$memmb')[1] elif (self.parent.memFormat.split('$mem')[0] != self.parent.memFormat): self.parent.memInMb = False self.parent.mem_used = 0.0 self.parent.mem_free = 1.0 self.parent.mem_uf = 0.0 - line = self.parent.memFormat.split('$mem')[0] + '-----' + self.parent.memFormat.split('$mem')[1] - else: - line = self.parent.memFormat + line = self.parent.memFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_mem = NewPlasmaLabel(self.parent.applet, self.parent) self.parent.label_mem.setText(text) self.parent.layout.addItem(self.parent.label_mem) elif (order == "4"): if (self.parent.swapBool > 0): self.parent.swapFormat = str(settings.get('swapFormat', '[swap: $swap%]')) + self.parent.label_swap = NewPlasmaLabel(self.parent.applet, self.parent) if (self.parent.swapFormat.split('$swapmb')[0] != self.parent.swapFormat): self.parent.swapInMb = True - line = self.parent.swapFormat.split('$swapmb')[0] + '-----' + self.parent.swapFormat.split('$swapmb')[1] elif (self.parent.swapFormat.split('$swap')[0] != self.parent.swapFormat): self.parent.swapInMb = False self.parent.swap_free = 1.0 self.parent.swap_used = 0.0 - line = self.parent.swapFormat.split('$swap')[0] + '-----' + self.parent.swapFormat.split('$swap')[1] - else: - line = self.parent.swapFormat + line = self.parent.swapFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_swap = NewPlasmaLabel(self.parent.applet, self.parent) self.parent.label_swap.setText(text) self.parent.layout.addItem(self.parent.label_swap) elif (order == "5"): if (self.parent.netBool > 0): self.parent.netNonFormat = str(settings.get('netNonFormat', '[net: $netKB/s]')) - if (self.parent.netNonFormat.split('@@')[0] != self.parent.netNonFormat): - self.parent.netdev = self.parent.netNonFormat.split('@@')[1] - self.parent.netNonFormat = self.parent.netNonFormat.split('@@')[0] + self.parent.netNonFormat.split('@@')[2] + self.parent.label_net = NewPlasmaLabel(self.parent.applet, self.parent) + if (self.parent.netdevBool > 0): + self.parent.netdev = self.parent.custom_netdev else: self.parent.netdev = self.parent.setupNetdev() if (self.parent.netNonFormat.split('$netdev')[0] != self.parent.netNonFormat): self.parent.netFormat = self.parent.netNonFormat.split('$netdev')[0] + self.parent.netdev + self.parent.netNonFormat.split('$netdev')[1] else: self.parent.netFormat = self.parent.netNonFormat - self.parent.label_netDown = NewPlasmaLabel(self.parent.applet, self.parent) - if (self.parent.netFormat.split('$net')[0] != self.parent.netFormat): - line = self.parent.netFormat.split('$net')[0] + '----' - else: - line = self.parent.netFormat + line = self.parent.netFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_netDown.setText(text) - self.parent.layout.addItem(self.parent.label_netDown) - self.parent.label_netUp = Plasma.Label(self.parent.applet) - if (self.parent.netFormat.split('$net')[0] != self.parent.netFormat): - line = '/----' + self.parent.netFormat.split('$net')[1] - else: - line = '' - text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_netUp.setText(text) - self.parent.layout.addItem(self.parent.label_netUp) + self.parent.label_net.setText(text) + self.parent.layout.addItem(self.parent.label_net) elif (order == "6"): if (self.parent.batBool > 0): self.parent.batFormat = str(settings.get('batFormat', '[bat: $bat%$ac]')) - self.parent.battery_device= str(settings.get('battery_device', '/sys/class/power_supply/BAT0/capacity')) - self.parent.ac_device = str(settings.get('ac_device', '/sys/class/power_supply/AC/online')) self.parent.label_bat = NewPlasmaLabel(self.parent.applet, self.parent) line = self.parent.batFormat - if (line.split('$ac')[0] != line): - line = line.split('$ac')[0] + '(-)' + line.split('$ac')[1] - if (line.split('$bat')[0] != line): - line = line.split('$bat')[0] + '---' + line.split('$bat')[1] text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] self.parent.label_bat.setText(text) self.parent.layout.addItem(self.parent.label_bat) elif (order == "7"): if (self.parent.cpuclockBool > 0): self.parent.cpuclockFormat = str(settings.get('cpuclockFormat', '[mhz: $cpucl]')) - if (self.parent.cpuclockFormat.split('$ccpucl')[0] != self.parent.cpuclockFormat): - self.parent.label_cpuclock = NewPlasmaLabel(self.parent.applet, self.parent) - self.parent.label_cpuclock1 = Plasma.Label(self.parent.applet) - if (self.parent.cpuclockFormat.split('$ccpucl')[0].split('$cpucl')[0] != self.parent.cpuclockFormat.split('$ccpucl')[0]): - line = self.parent.cpuclockFormat.split('$ccpucl')[0].split('$cpucl')[0] + '----' + self.parent.cpuclockFormat.split('$ccpucl')[0].split('$cpucl')[1] - else: - line = self.parent.cpuclockFormat.split('$ccpucl')[0] - text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_cpuclock.setText(text) - self.parent.layout.addItem(self.parent.label_cpuclock) - text = self.parent.formatLine.split('$LINE')[0] + "----" + self.parent.formatLine.split('$LINE')[1] - for core in range(self.parent.numCores): - exec ('self.parent.label_coreCpuclock' + str(core) + ' = Plasma.Label(self.parent.applet)') - exec ('self.parent.label_coreCpuclock' + str(core) + '.setText(text)') - exec ('self.parent.layout.addItem(self.parent.label_coreCpuclock' + str(core) + ')') - if (self.parent.cpuclockFormat.split('$ccpucl')[1].split('$cpucl')[0] != self.parent.cpuclockFormat.split('$ccpucl')[1]): - line = self.parent.cpuclockFormat.split('$ccpucl')[1].split('$cpucl')[0] + '----' + self.parent.cpuclockFormat.split('$ccpucl')[1].split('$cpucl')[1] - else: - line = self.parent.cpuclockFormat.split('$ccpucl')[1] - text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_cpuclock1.setText(text) - self.parent.layout.addItem(self.parent.label_cpuclock1) - else: - self.parent.label_cpuclock = NewPlasmaLabel(self.parent.applet, self.parent) - if (self.parent.cpuclockFormat.split('$cpucl')[0] != self.parent.cpuclockFormat): - line = self.parent.cpuclockFormat.split('$cpucl')[0] + '----' + self.parent.cpuclockFormat.split('$cpucl')[1] - else: - line = self.parent.cpuclockFormat - text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_cpuclock.setText(text) - self.parent.layout.addItem(self.parent.label_cpuclock) + self.parent.label_cpuclock = NewPlasmaLabel(self.parent.applet, self.parent) + line = self.parent.cpuclockFormat + text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] + self.parent.label_cpuclock.setText(text) + self.parent.layout.addItem(self.parent.label_cpuclock) elif (order == "8"): if (self.parent.uptimeBool > 0): self.parent.uptimeFormat = str(settings.get('uptimeFormat', '[uptime: $uptime]')) self.parent.label_uptime = NewPlasmaLabel(self.parent.applet, self.parent) - if (self.parent.uptimeFormat.split('$uptime')[0] != self.parent.uptimeFormat): - line = self.parent.uptimeFormat.split('$uptime')[0] + '---d--h--m' + self.parent.uptimeFormat.split('$uptime')[1] - else: - line = self.parent.uptimeFormat + line = self.parent.uptimeFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] self.parent.label_uptime.setText(text) self.parent.layout.addItem(self.parent.label_uptime) @@ -240,10 +183,7 @@ class Reinit(): if (self.parent.gpuBool > 0): self.parent.gpuFormat = str(settings.get('gpuFormat', '[gpu: $gpu%]')) self.parent.label_gpu = NewPlasmaLabel(self.parent.applet, self.parent) - if (self.parent.gpuFormat.split('$gpu')[0] != self.parent.gpuFormat): - line = self.parent.gpuFormat.split('$gpu')[0] + '-----' + self.parent.gpuFormat.split('$gpu')[1] - else: - line = self.parent.gpuFormat + line = self.parent.gpuFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] self.parent.label_gpu.setText(text) self.parent.layout.addItem(self.parent.label_gpu) @@ -251,65 +191,31 @@ class Reinit(): if (self.parent.gputempBool > 0): self.parent.gputempFormat = str(settings.get('gputempFormat', '[gpu temp: $gputemp°C]')) self.parent.label_gputemp = NewPlasmaLabel(self.parent.applet, self.parent) - if (self.parent.gputempFormat.split('$gputemp')[0] != self.parent.gputempFormat): - line = self.parent.gputempFormat.split('$gputemp')[0] + '----' + self.parent.gputempFormat.split('$gputemp')[1] - else: - line = self.parent.gputempFormat + line = self.parent.gputempFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] self.parent.label_gputemp.setText(text) self.parent.layout.addItem(self.parent.label_gputemp) elif (order == "b"): if (self.parent.hddBool > 0): - self.parent.hddFormat = str(settings.get('hddFormat', '[hdd: @@/@@%]')) - if (self.parent.hddFormat.split('@@')[0] != self.parent.hddFormat): - self.parent.mountPoints = self.parent.hddFormat.split('@@')[1].split(';') - line = self.parent.hddFormat.split('@@')[0] - text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_hdd0 = NewPlasmaLabel(self.parent.applet, self.parent) - self.parent.label_hdd0.setText(text) - self.parent.layout.addItem(self.parent.label_hdd0) - text = self.parent.formatLine.split('$LINE')[0] + "-----" + self.parent.formatLine.split('$LINE')[1] - for mount in self.parent.mountPoints: - exec ('self.parent.label_hdd_' + ''.join(mount.split('/')) + ' = Plasma.Label(self.parent.applet)') - exec ('self.parent.label_hdd_' + ''.join(mount.split('/')) + '.setText(text)') - exec ('self.parent.layout.addItem(self.parent.label_hdd_' + ''.join(mount.split('/')) + ')') - line = self.parent.hddFormat.split('@@')[2] - text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_hdd1 = Plasma.Label(self.parent.applet) - self.parent.label_hdd1.setText(text) - self.parent.layout.addItem(self.parent.label_hdd1) - else: - line = self.parent.hddFormat - text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] - self.parent.label_hdd0.setText(text) - self.parent.layout.addItem(self.parent.label_hdd0) + self.parent.hddFormat = str(settings.get('hddFormat', '[hdd: $hdd0%]')) + self.parent.label_hdd = NewPlasmaLabel(self.parent.applet, self.parent) + line = self.parent.hddFormat + text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] + self.parent.label_hdd.setText(text) + self.parent.layout.addItem(self.parent.label_hdd) elif (order == "c"): if (self.parent.hddtempBool > 0): - self.parent.hddtempFormat = str(settings.get('hddtempFormat', '[hdd temp: @@/dev/sda@@°C]')) + self.parent.hddtempFormat = str(settings.get('hddtempFormat', '[hdd temp: $hddtemp0°C]')) self.parent.label_hddtemp = NewPlasmaLabel(self.parent.applet, self.parent) - if (self.parent.hddtempFormat.split('@@')[0] != self.parent.hddtempFormat): - line = self.parent.hddtempFormat.split('@@')[0] + '----' + self.parent.hddtempFormat.split('@@')[2] - else: - line = self.parent.hddtempFormat + line = self.parent.hddtempFormat text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] self.parent.label_hddtemp.setText(text) self.parent.layout.addItem(self.parent.label_hddtemp) elif (order == "d"): if (self.parent.playerBool > 0): self.parent.playerFormat = str(settings.get('playerFormat', '[$artist - $title]')) - self.parent.player_name = settings.get('player_name', 0).toInt()[0] self.parent.label_player = NewPlasmaLabel(self.parent.applet, self.parent) line = self.parent.playerFormat - if (line.split('$album')[0] != line): - line = line.split('$album')[0] + 'N\\A' + line.split('$album')[1] - if (line.split('$artist')[0] != line): - line = line.split('$artist')[0] + 'N\\A' + line.split('$artist')[1] - if (line.split('$progress')[0] != line): - line = line.split('$progress')[0] + '00:00' + line.split('$progress')[1] - if (line.split('$title')[0] != line): - line = line.split('$title')[0] + 'N\\A' + line.split('$title')[1] - if (line.split('$time')[0] != line): - line = line.split('$time')[0] + '00:00' + line.split('$time')[1] 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) @@ -317,13 +223,18 @@ class Reinit(): 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 + 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) + elif (order == "f"): + if (self.parent.customBool > 0): + self.parent.customFormat = str(settings.get('customFormat', '[$custom]')) + self.parent.label_custom = NewPlasmaLabel(self.parent.applet, self.parent) + line = self.parent.customFormat + text = self.parent.formatLine.split('$LINE')[0] + line + self.parent.formatLine.split('$LINE')[1] + self.parent.label_custom.setText(text) + self.parent.layout.addItem(self.parent.label_custom) if not confAccept: self.parent.layout.setContentsMargins(1, 1, 1, 1) self.parent.applet.setLayout(self.parent.layout) diff --git a/sources/ptm/contents/code/util.py b/sources/ptm/contents/code/util.py index 015af14..499e523 100644 --- a/sources/ptm/contents/code/util.py +++ b/sources/ptm/contents/code/util.py @@ -1,20 +1,22 @@ # -*- coding: utf-8 -*- -# Copyright 2012 Alex Oleshkevich -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +############################################################################ +# Copyright 2012 Alex Oleshkevich # +# # +# This program is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 2 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., # +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # +############################################################################ from shutil import copyfile from PyKDE4.kdecore import * diff --git a/sources/ptm/contents/ui/configwindow.ui b/sources/ptm/contents/ui/configwindow.ui index c0a5449..e2fedc1 100644 --- a/sources/ptm/contents/ui/configwindow.ui +++ b/sources/ptm/contents/ui/configwindow.ui @@ -313,7 +313,7 @@ $cpucl7 - CPU clock for core 7, MHz - $temp - physical temperature on CPU + $tempN - physical temperature on device N (from 0). Example: $temp0 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -605,7 +605,7 @@ $swapmb - swap usage, MB - $hddN - usage for mount point N, %. Example: $hdd0 + $hddN - usage for mount point N (from 0), %. Example: $hdd0 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -663,7 +663,7 @@ $swapmb - swap usage, MB - $hddtempN - physical temperature on device N. Example: $hddtemp0 + $hddtempN - physical temperature on device N (from 0). Example: $hddtemp0 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -721,7 +721,8 @@ $swapmb - swap usage, MB - $net - network speed, down/up, KB/s + $down - download speed, KB/s +$up - upload speed, KB/s $netdev - current network device @@ -1223,6 +1224,9 @@ del - remove item "/sys/class/net" by default + + + @@ -1247,6 +1251,9 @@ del - remove item + + false + 0