mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-04-24 23:47:20 +00:00
configuration window refactoring
type "player_name" is str now
This commit is contained in:
parent
2e93325601
commit
614e15d336
@ -65,7 +65,7 @@ class ConfigDefinition:
|
||||
settings.set('custom_netdev', str(self.configpage.ui.comboBox_netdev.currentText()))
|
||||
settings.set('battery_device', str(self.configpage.ui.lineEdit_batdev.text()))
|
||||
settings.set('ac_device', str(self.configpage.ui.lineEdit_acdev.text()))
|
||||
settings.set('player_name', self.configpage.ui.comboBox_playerSelect.currentIndex())
|
||||
settings.set('player_name', str(self.configpage.ui.comboBox_playerSelect.currentText()))
|
||||
|
||||
settings.set('tooltip_num', self.configpage.ui.spinBox_tooltipNum.value())
|
||||
for label in ['cpu', 'cpuclock', 'mem', 'swap', 'down', 'up']:
|
||||
@ -84,87 +84,16 @@ class ConfigDefinition:
|
||||
|
||||
# disconnecting from source and clear layout
|
||||
self.parent.disconnectFromSource()
|
||||
if (self.parent.uptimeBool > 0):
|
||||
self.parent.systemmonitor.disconnectSource("system/uptime", self.parent)
|
||||
self.parent.label_uptime.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_uptime)
|
||||
if (self.parent.cpuBool > 0):
|
||||
self.parent.systemmonitor.disconnectSource("cpu/system/TotalLoad", self.parent)
|
||||
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)
|
||||
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):
|
||||
for item in self.parent.temp:
|
||||
self.parent.systemmonitor.disconnectSource(item, self.parent)
|
||||
self.parent.label_temp.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_temp)
|
||||
if (self.parent.gpuBool > 0):
|
||||
self.parent.extsysmon.disconnectSource("gpu", self.parent)
|
||||
self.parent.label_gpu.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_gpu)
|
||||
if (self.parent.gputempBool > 0):
|
||||
self.parent.extsysmon.disconnectSource("gputemp", self.parent)
|
||||
self.parent.label_gputemp.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_gputemp)
|
||||
if (self.parent.memBool > 0):
|
||||
self.parent.systemmonitor.disconnectSource("mem/physical/application", self.parent)
|
||||
self.parent.systemmonitor.disconnectSource("mem/physical/free", self.parent)
|
||||
self.parent.systemmonitor.disconnectSource("mem/physical/used", self.parent)
|
||||
self.parent.label_mem.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_mem)
|
||||
if (self.parent.swapBool > 0):
|
||||
self.parent.systemmonitor.disconnectSource("mem/swap/used", self.parent)
|
||||
self.parent.systemmonitor.disconnectSource("mem/swap/free", self.parent)
|
||||
self.parent.label_swap.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_swap)
|
||||
if (self.parent.hddBool > 0):
|
||||
for item in self.parent.mount:
|
||||
self.parent.systemmonitor.disconnectSource("partitions" + item + "/filllevel", self.parent)
|
||||
self.parent.label_hdd.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_hdd)
|
||||
if (self.parent.hddtempBool > 0):
|
||||
self.parent.extsysmon.disconnectSource("hddtemp", self.parent)
|
||||
self.parent.label_hddtemp.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_hddtemp)
|
||||
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_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)
|
||||
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)
|
||||
if (self.parent.customBool > 0):
|
||||
self.parent.label_custom.setText('')
|
||||
self.parent.layout.removeItem(self.parent.label_custom)
|
||||
|
||||
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()))
|
||||
if (self.configpage.checkboxes[self.parent.dict_orders[label]].checkState() > 0):
|
||||
pos = self.configpage.sliders[self.parent.dict_orders[label]].value() - 1
|
||||
self.parent.label_order = self.parent.label_order[:pos] + label + self.parent.label_order[pos+1:]
|
||||
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)')
|
||||
self.parent.label_order = ''.join(self.parent.label_order.split('-'))
|
||||
settings.set('label_order', self.parent.label_order)
|
||||
labelOrder = "---------------"
|
||||
for label in self.defaults['order'].keys():
|
||||
if (self.configpage.checkboxes[self.defaults['order'][label]].checkState() > 0):
|
||||
pos = self.configpage.sliders[self.defaults['order'][label]].value() - 1
|
||||
labelOrder = labelOrder[:pos] + label + labelOrder[pos+1:]
|
||||
settings.set(self.defaults['confFormat'][self.defaults['order'][label]], str(self.configpage.lineedits[self.defaults['order'][label]].text()))
|
||||
settings.set(self.defaults['confBool'][self.defaults['order'][label]], self.configpage.checkboxes[self.defaults['order'][label]].checkState())
|
||||
labelOrder = ''.join(labelOrder.split('-'))
|
||||
settings.set('label_order', labelOrder)
|
||||
|
||||
# reinitializate
|
||||
self.parent.reInit()
|
||||
@ -228,7 +157,8 @@ class ConfigDefinition:
|
||||
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])
|
||||
index = self.configpage.ui.comboBox_playerSelect.findText(str(settings.get('player_name', "amarok")))
|
||||
self.configpage.ui.comboBox_playerSelect.setCurrentIndex(index)
|
||||
|
||||
self.configpage.ui.spinBox_tooltipNum.setValue(settings.get('tooltip_num', 100).toInt()[0])
|
||||
self.configpage.ui.kcolorcombo_cpu.setColor(QColor(str(settings.get('cpu_color', '#ff0000'))))
|
||||
@ -264,13 +194,14 @@ class ConfigDefinition:
|
||||
self.configpage.ui.spinBox_mpdport.setValue(int(deSettings['MPDPORT']))
|
||||
self.configpage.ui.lineEdit_customCommand.setText(deSettings['CUSTOM'])
|
||||
|
||||
label_order = str(settings.get('label_order', '1345'))
|
||||
labelOrder = str(settings.get('label_order', '1345'))
|
||||
for label in self.defaults['order'].keys():
|
||||
bool = self.defaults['confBool'][self.defaults['order'][label]]
|
||||
bool = self.defaults['bool'][self.defaults['order'][label]]
|
||||
self.configpage.checkboxes[self.defaults['order'][label]].setCheckState(bool)
|
||||
if (bool > 0):
|
||||
self.configpage.sliders[self.defaults['order'][label]].setValue(label_order.find(label)+1)
|
||||
self.configpage.lineedits[self.defaults['order'][label]].setText(str(settings.get(self.defaults['confFormat'][label], self.defaults['format'][label])))
|
||||
self.configpage.sliders[self.defaults['order'][label]].setValue(labelOrder.find(label) + 1)
|
||||
self.configpage.lineedits[self.defaults['order'][label]].setText(str(settings.get(self.defaults['confFormat'][self.defaults['order'][label]],
|
||||
self.defaults['format'][self.defaults['order'][label]])))
|
||||
|
||||
# add config page
|
||||
page = parent.addPage(self.configpage, i18n(self.parent.name()))
|
||||
|
@ -168,19 +168,19 @@ class DataEngine:
|
||||
elif (sourceName == "player"):
|
||||
updatedData['name'] = "player"
|
||||
updatedData['value'] = {}
|
||||
if (adv['player'] == 0):
|
||||
if (adv['player'] == "amarok"):
|
||||
updatedData['value']['album'] = str(data[QString(u'amarok_album')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['artist'] = str(data[QString(u'amarok_artist')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['progress'] = str(data[QString(u'amarok_progress')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['time'] = str(data[QString(u'amarok_duration')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['title'] = str(data[QString(u'amarok_title')].toUtf8()).decode("utf-8")
|
||||
elif (adv['player'] == 1):
|
||||
elif (adv['player'] == "mpd"):
|
||||
updatedData['value']['album'] = str(data[QString(u'mpd_album')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['artist'] = str(data[QString(u'mpd_artist')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['progress'] = str(data[QString(u'mpd_progress')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['time'] = str(data[QString(u'mpd_duration')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['title'] = str(data[QString(u'mpd_title')].toUtf8()).decode("utf-8")
|
||||
elif (adv['player'] == 2):
|
||||
elif (adv['player'] == "qmmp"):
|
||||
updatedData['value']['album'] = str(data[QString(u'qmmp_album')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['artist'] = str(data[QString(u'qmmp_artist')].toUtf8()).decode("utf-8")
|
||||
updatedData['value']['progress'] = str(data[QString(u'qmmp_progress')].toUtf8()).decode("utf-8")
|
||||
@ -244,3 +244,49 @@ class DataEngine:
|
||||
#pass
|
||||
|
||||
return updatedData
|
||||
|
||||
|
||||
def disconnectFromSource(self, dataEngines=None, keys=None, name=None):
|
||||
"""function to disconnect from sources"""
|
||||
if (name == "bat"):
|
||||
pass
|
||||
elif (name == "cpu"):
|
||||
dataEngines['system'].disconnectSource("cpu/system/TotalLoad", self.parent)
|
||||
for item in keys['cpu']:
|
||||
if (item != -1):
|
||||
dataEngines['system'].disconnectSource("cpu/cpu" + str(item) + "/TotalLoad", self.parent)
|
||||
elif (name == "cpuclock"):
|
||||
dataEngines['system'].disconnectSource("cpu/system/AverageClock", self.parent)
|
||||
for item in keys['cpuclock']:
|
||||
if (item != -1):
|
||||
dataEngines['system'].disconnectSource("cpu/cpu" + str(item) + "/clock", self.parent)
|
||||
elif (name == "custom"):
|
||||
dataEngines['ext'].disconnectSource("custom", self.parent)
|
||||
elif (name == "gpu"):
|
||||
dataEngines['ext'].disconnectSource("gpu", self.parent)
|
||||
elif (name == "gputemp"):
|
||||
dataEngines['ext'].disconnectSource("gputemp", self.parent)
|
||||
elif (name == "hdd"):
|
||||
for item in keys['hdd']:
|
||||
dataEngines['system'].disconnectSource("partitions" + item + "/filllevel", self.parent)
|
||||
elif (name == "hddtemp"):
|
||||
dataEngines['ext'].disconnectSource("hddtemp", self.parent)
|
||||
elif (name == "mem"):
|
||||
dataEngines['system'].disconnectSource("mem/physical/application", self.parent)
|
||||
dataEngines['system'].disconnectSource("mem/physical/free", self.parent)
|
||||
dataEngines['system'].disconnectSource("mem/physical/used", self.parent)
|
||||
elif (name == "net"):
|
||||
dataEngines['system'].disconnectSource("network/interfaces/" + keys['net'] + "/transmitter/data", self.parent)
|
||||
dataEngines['system'].disconnectSource("network/interfaces/" + keys['net'] + "/receiver/data", self.parent)
|
||||
elif (name == "player"):
|
||||
dataEngines['ext'].disconnectSource("player", self.parent)
|
||||
elif (name == "swap"):
|
||||
dataEngines['system'].disconnectSource("mem/swap/used", self.parent)
|
||||
dataEngines['system'].disconnectSource("mem/swap/free", self.parent)
|
||||
elif (name == "temp"):
|
||||
for item in keys['temp']:
|
||||
dataEngines['system'].disconnectSource(item, self.parent)
|
||||
elif (name == "time"):
|
||||
dataEngines['time'].disconnectSource("Local", self.parent)
|
||||
elif (name == "uptime"):
|
||||
dataEngines['system'].disconnectSource("system/uptime", self.parent)
|
||||
|
@ -402,6 +402,13 @@ class pyTextWidget(plasmascript.Applet):
|
||||
|
||||
def disconnectFromSource(self):
|
||||
"""function to disconnect from sources"""
|
||||
for label in self.ptm['defaults']['format'].keys():
|
||||
if (self.ptm['vars']['bools'][label] > 0):
|
||||
self.addLabel(label, None, False)
|
||||
keys = {'cpu':self.ptm['values']['cpu'].keys(), 'cpuclock':self.ptm['values']['cpuclock'].keys(),
|
||||
'hdd':self.ptm['values']['hdd'].keys(), 'net':self.ptm['names']['net'],
|
||||
'temp':self.ptm['values']['temp'].keys()}
|
||||
self.dataengine.disconnectFromSource(self.ptm['dataengine'], keys, label)
|
||||
|
||||
|
||||
def reInit(self):
|
||||
|
@ -149,16 +149,16 @@ class PTMNotify:
|
||||
text = text + "%s" %(commands.getoutput("acpi -abi"))
|
||||
except:
|
||||
text = "Something wrong"
|
||||
elif (type == "musicplayer"):
|
||||
elif (type == "player"):
|
||||
try:
|
||||
artist = "N\\A"
|
||||
album = "N\\A"
|
||||
title = "N\\A"
|
||||
if (self.parent.parent.player_name == 0):
|
||||
if (self.parent.parent.player_name == "amarok"):
|
||||
artist = commands.getoutput("qdbus org.kde.amarok /Player GetMetadata 2> /dev/null | grep albumartist: | cut -c14-")
|
||||
album = commands.getoutput("qdbus org.kde.amarok /Player GetMetadata 2> /dev/null | grep album: | cut -c8-")
|
||||
title = commands.getoutput("qdbus org.kde.amarok /Player GetMetadata 2> /dev/null | grep title: | cut -c8-")
|
||||
elif (self.parent.parent.player_name == 1):
|
||||
elif (self.parent.parent.player_name == "mpd"):
|
||||
output = commands.getoutput("echo 'currentsong\nclose' | curl --connect-timeout 1 -fsm 3 telnet://localhost:6600 2> /dev/null")
|
||||
for line in output.split("\n"):
|
||||
if (line.split(": ")[0] == "Artist"):
|
||||
@ -167,7 +167,7 @@ class PTMNotify:
|
||||
album = line.split(": ")[1]
|
||||
elif (line.split(": ")[0] == "Title"):
|
||||
title = line.split(": ")[1]
|
||||
elif (self.parent.parent.player_name == 2):
|
||||
elif (self.parent.parent.player_name == "qmmp"):
|
||||
artist = commands.getoutput("qmmp --nowplaying '%if(%p,%p,Unknown)' 2> /dev/null")
|
||||
album = commands.getoutput("qmmp --nowplaying '%if(%a,%a,Unknown)' 2> /dev/null")
|
||||
title = commands.getoutput("qmmp --nowplaying '%if(%t,%t,Unknown)' 2> /dev/null")
|
||||
@ -261,7 +261,7 @@ class PTMNotify:
|
||||
pass
|
||||
try:
|
||||
if (sender == self.parent.parent.label_player):
|
||||
content = self.createText("musicplayer")
|
||||
content = self.createText("player")
|
||||
return content
|
||||
except:
|
||||
pass
|
||||
|
@ -43,7 +43,7 @@ class Reinit():
|
||||
ptmVars['adv']['customUptime'] = str(settings.get('custom_uptime', '$dd,$hh,$mm'))
|
||||
ptmVars['adv']['netdevBool'] = settings.get('netdevBool', 0).toInt()[0]
|
||||
ptmVars['adv']['netDir'] = str(settings.get('netdir', '/sys/class/net'))
|
||||
ptmVars['adv']['player'] = settings.get('player_name', 0).toInt()[0]
|
||||
ptmVars['adv']['player'] = str(settings.get('player_name', "amarok"))
|
||||
|
||||
ptmVars['app'] = {}
|
||||
ptmVars['app']['format'] = "<pre><p align=\"center\"><span style=\" font-family:'" + str(settings.get('font_family', 'Terminus')) +\
|
||||
|
Loading…
Reference in New Issue
Block a user