New release 1.3.2:

* optimization and refactoring
  * gpu* and hddtemp now read from ext-sysmon DataEngine
Extended SystemMonitor DataEngine:
  initial release 1.0:
    + add gpu source
    + add gputemp source
    + add hddtemp source
    + add install script
This commit is contained in:
arcan1s
2013-05-24 19:48:10 +04:00
parent 9243220505
commit 4c59e7e892
18 changed files with 447 additions and 415 deletions

View File

@ -1,9 +1,8 @@
# -*- coding: utf-8 -*-
from PyQt4.QtCore import *
from PyKDE4.plasma import Plasma
import config
import gpuchecker
import gputempchecker
import hddtempchecker
@ -14,22 +13,22 @@ class Reinit():
def reinit(self):
"""function to reinitializate widget"""
self.parent.settings = config.Config(self.parent)
self.parent.interval = int(self.parent.settings.get('interval', 2000))
self.parent.font_family = str(self.parent.settings.get('font_family', 'Terminus'))
self.parent.font_size = int(self.parent.settings.get('font_size', 12))
self.parent.font_color = str(self.parent.settings.get('font_color', '#000000'))
self.parent.font_style = str(self.parent.settings.get('font_style', 'normal'))
self.parent.font_weight = int(self.parent.settings.get('font_weight', 400))
settings = config.Config(self.parent)
self.parent.interval = settings.get('interval', 2000).toInt()[0]
self.parent.font_family = str(settings.get('font_family', 'Terminus'))
self.parent.font_size = settings.get('font_size', 12).toInt()[0]
self.parent.font_color = str(settings.get('font_color', '#000000'))
self.parent.font_style = str(settings.get('font_style', 'normal'))
self.parent.font_weight = settings.get('font_weight', 400).toInt()[0]
self.parent.formatLine = "<pre><p align=\"center\"><span style=\" font-family:'" + self.parent.font_family + "'; font-style:" + self.parent.font_style
self.parent.formatLine = self.parent.formatLine + "; font-size:" + str(self.parent.font_size) + "pt; font-weight:" + str(self.parent.font_weight)
self.parent.formatLine = self.parent.formatLine + "; color:" + self.parent.font_color + ";\">$LINE</span></p></pre>"
self.parent.label_order = str(self.parent.settings.get('label_order', '1345'))
self.parent.label_order = str(settings.get('label_order', '1345'))
for label in self.parent.dict_orders.values():
if ((label == 'cpu') or (label == 'mem') or (label == 'swap') or (label == 'net')):
exec ('self.parent.' + label + 'Bool = int(self.parent.settings.get("' + label + 'Bool", 1))')
exec ('self.parent.' + label + 'Bool = int(settings.get("' + label + 'Bool", 1))')
else:
exec ('self.parent.' + label + 'Bool = int(self.parent.settings.get("' + label + 'Bool", 0))')
exec ('self.parent.' + label + 'Bool = int(settings.get("' + label + 'Bool", 0))')
# small function for update if errors exist
summ = 0
for label in self.parent.dict_orders.values():
@ -40,14 +39,14 @@ class Reinit():
exec ('self.parent.' + label + 'Bool = 1')
else:
exec ('self.parent.' + label + 'Bool = 0')
exec ('self.parent.settings.set("' + label + 'Bool", self.parent.' + label + 'Bool)')
exec ('settings.set("' + label + 'Bool", self.parent.' + label + 'Bool)')
self.parent.label_order = '1345'
self.parent.settings.set('label_order', self.parent.label_order)
settings.set('label_order', self.parent.label_order)
for order in self.parent.label_order:
if (order == "1"):
if (self.parent.cpuBool == 1):
self.parent.cpuFormat = str(self.parent.settings.get('cpuFormat', '[cpu: $cpu%]'))
self.parent.cpuFormat = str(settings.get('cpuFormat', '[cpu: $cpu%]'))
if (self.parent.cpuFormat.split('$ccpu')[0] != self.parent.cpuFormat):
self.parent.label_cpu0 = Plasma.Label(self.parent.applet)
self.parent.label_cpu1 = Plasma.Label(self.parent.applet)
@ -81,7 +80,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_cpu)
elif (order == "2"):
if (self.parent.tempBool == 1):
self.parent.tempFormat = str(self.parent.settings.get('tempFormat', '[temp: $temp&deg;C]'))
self.parent.tempFormat = str(settings.get('tempFormat', '[temp: $temp&deg;C]'))
self.parent.label_temp = Plasma.Label(self.parent.applet)
if (self.parent.tempFormat.split('$temp')[0] != self.parent.tempFormat):
line = self.parent.tempFormat.split('$temp')[0] + '----' + self.parent.tempFormat.split('$temp')[1]
@ -92,7 +91,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_temp)
elif (order == "3"):
if (self.parent.memBool == 1):
self.parent.memFormat = str(self.parent.settings.get('memFormat', '[mem: $mem%]'))
self.parent.memFormat = str(settings.get('memFormat', '[mem: $mem%]'))
if (self.parent.memFormat.split('$memmb')[0] != self.parent.memFormat):
self.parent.memInMb = True
text = self.parent.formatLine.split('$LINE')[0] + self.parent.memFormat.split('$memmb')[0] + '-----' + self.parent.memFormat.split('$memmb')[1] + self.parent.formatLine.split('$LINE')[1]
@ -110,7 +109,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_mem)
elif (order == "4"):
if (self.parent.swapBool == 1):
self.parent.swapFormat = str(self.parent.settings.get('swapFormat', '[swap: $swap%]'))
self.parent.swapFormat = str(settings.get('swapFormat', '[swap: $swap%]'))
if (self.parent.swapFormat.split('$swapmb')[0] != self.parent.swapFormat):
self.parent.swapInMb = True
text = self.parent.formatLine.split('$LINE')[0] + self.parent.swapFormat.split('$swapmb')[0] + '-----' + self.parent.swapFormat.split('$swapmb')[1] + self.parent.formatLine.split('$LINE')[1]
@ -127,12 +126,12 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_swap)
elif (order == "5"):
if (self.parent.netBool == 1):
self.parent.netNonFormat = str(self.parent.settings.get('netNonFormat', '[net: $netKB/s]'))
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]
else:
self.parent.num_dev = int(self.parent.settings.get('num_dev', 0))
self.parent.num_dev = int(settings.get('num_dev', 0))
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]
@ -156,9 +155,9 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_netUp)
elif (order == "6"):
if (self.parent.batBool == 1):
self.parent.batFormat = str(self.parent.settings.get('batFormat', '[bat: $bat%$ac]'))
self.parent.battery_device= str(self.parent.settings.get('battery_device', '/sys/class/power_supply/BAT0/capacity'))
self.parent.ac_device = str(self.parent.settings.get('ac_device', '/sys/class/power_supply/AC/online'))
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 = Plasma.Label(self.parent.applet)
line = self.parent.batFormat
if (line.split('$ac')[0] != line):
@ -170,7 +169,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_bat)
elif (order == "7"):
if (self.parent.cpuclockBool == 1):
self.parent.cpuclockFormat = str(self.parent.settings.get('cpuclockFormat', '[mhz: $cpucl]'))
self.parent.cpuclockFormat = str(settings.get('cpuclockFormat', '[mhz: $cpucl]'))
if (self.parent.cpuclockFormat.split('$ccpucl')[0] != self.parent.cpuclockFormat):
self.parent.label_cpuclock0 = Plasma.Label(self.parent.applet)
self.parent.label_cpuclock1 = Plasma.Label(self.parent.applet)
@ -204,7 +203,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_cpuclock)
elif (order == "8"):
if (self.parent.uptimeBool == 1):
self.parent.uptimeFormat = str(self.parent.settings.get('uptimeFormat', '[uptime: $uptime]'))
self.parent.uptimeFormat = str(settings.get('uptimeFormat', '[uptime: $uptime]'))
self.parent.label_uptime = Plasma.Label(self.parent.applet)
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]
@ -215,7 +214,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_uptime)
elif (order == "9"):
if (self.parent.gpuBool == 1):
self.parent.gpuFormat = str(self.parent.settings.get('gpuFormat', '[gpu: $gpu%]'))
self.parent.gpuFormat = str(settings.get('gpuFormat', '[gpu: $gpu%]'))
self.parent.label_gpu = Plasma.Label(self.parent.applet)
if (self.parent.gpuFormat.split('$gpu')[0] != self.parent.gpuFormat):
line = self.parent.gpuFormat.split('$gpu')[0] + '-----' + self.parent.gpuFormat.split('$gpu')[1]
@ -226,7 +225,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_gpu)
elif (order == "a"):
if (self.parent.gputempBool == 1):
self.parent.gputempFormat = str(self.parent.settings.get('gputempFormat', '[gpu temp: $gputemp&deg;C]'))
self.parent.gputempFormat = str(settings.get('gputempFormat', '[gpu temp: $gputemp&deg;C]'))
self.parent.label_gputemp = Plasma.Label(self.parent.applet)
if (self.parent.gputempFormat.split('$gputemp')[0] != self.parent.gputempFormat):
line = self.parent.gputempFormat.split('$gputemp')[0] + '----' + self.parent.gputempFormat.split('$gputemp')[1]
@ -237,7 +236,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_gputemp)
elif (order == "b"):
if (self.parent.hddBool == 1):
self.parent.hddFormat = str(self.parent.settings.get('hddFormat', '[hdd: @@/@@%]'))
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]
@ -262,7 +261,7 @@ class Reinit():
self.parent.layout.addItem(self.parent.label_hdd0)
elif (order == "c"):
if (self.parent.hddtempBool == 1):
self.parent.hddtempFormat = str(self.parent.settings.get('hddtempFormat', '[hdd temp: @@/dev/sda@@&deg;C]'))
self.parent.hddtempFormat = str(settings.get('hddtempFormat', '[hdd temp: @@/dev/sda@@&deg;C]'))
self.parent.label_hddtemp = Plasma.Label(self.parent.applet)
if (self.parent.hddtempFormat.split('@@')[0] != self.parent.hddtempFormat):
line = self.parent.hddtempFormat.split('@@')[0] + '----' + self.parent.hddtempFormat.split('@@')[2]
@ -277,17 +276,8 @@ class Reinit():
self.parent.setBackgroundHints(Plasma.Applet.DefaultBackground)
self.parent.resize(10,10)
# create threading
# create dataengines
self.parent.dataengine.connectToEngine()
self.parent.timer = QTimer()
self.parent.timer.setInterval(self.parent.interval)
if (self.parent.gpuBool == 1):
self.parent.gpuChecker = gpuchecker.GpuThread(self.parent.interval, self.parent.gpudev)
self.parent.gpuChecker.start()
if (self.parent.gputempBool == 1):
self.parent.gpuTempChecker = gputempchecker.GpuTempThread(self.parent.interval, self.parent.gpudev)
self.parent.gpuTempChecker.start()
if (self.parent.hddtempBool ==1):
self.parent.hddTempChecker = hddtempchecker.HddTempThread(self.parent.interval, self.parent.hddtempFormat.split('@@')[1])
self.parent.hddTempChecker.start()
self.parent.startPolling()