16.05.2016, 19:33
(Dieser Beitrag wurde zuletzt bearbeitet: 16.05.2016, 20:07 von harryberlin.)
bei grafiken braucht man nur diffusecolor dazu nehmen.
aber ich vertehe nicht, warum man bei farbänderungen die skin neu laden muss. ist doch eine variable, oder?
schau dir das mal an. ist ein script zum farbe setzen, per auswahlliste.:
hatte das noch mit einer variable gelöst, falls nix gesetzt ist, dass ein fallback greift.
gefunden:
das sollte auch mit mehreren strings gehen. müsste man das script etwas umschreiben, dass man den string übergegeben kann, der gesetzt werden soll.
aber ich vertehe nicht, warum man bei farbänderungen die skin neu laden muss. ist doch eine variable, oder?
schau dir das mal an. ist ein script zum farbe setzen, per auswahlliste.:
Code:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import xbmc, xbmcgui, xbmcaddon
import re
# -- for skin --
def log(message):
return xbmc.log('skin.confluence-vertical: %s' % message)
bDebug = False
Farben={}
log(xbmcaddon.Addon(xbmc.getSkinDir()).getAddonInfo('path').decode('utf-8'))
xmlfile=xbmcaddon.Addon(xbmc.getSkinDir()).getAddonInfo('path').decode('utf-8') + '/colors/defaults.xml'
xml = open(xmlfile, 'r').read()
log(xml)
match=re.findall('name="(.*?)"(.*?)>(.*?)</',xml)
for farbe,trash,wert in match:
Farben[farbe] = wert
log(Farben)
Farbliste=Farben.keys()
Wertliste=Farben.values()
log('Farbe 0: ' + Farbliste[0])
log(Farben[Farbliste[0]])
log(Wertliste)
for farbe in Farbliste:
farbe = '[COLOR=%s]%s[/COLOR]' % (Farben[farbe],farbe)
log(farbe)
ret = xbmcgui.Dialog().select('Choose a Color', Farbliste)
log(ret)
log('selected: ' + Farbliste[ret])
if bDebug: xbmcgui.Dialog().ok("Choosed color", Farbliste[ret])
if not ret < 0: xbmc.executebuiltin('Skin.SetString(TextColor1,' + Farbliste[ret] + ')')
hatte das noch mit einer variable gelöst, falls nix gesetzt ist, dass ein fallback greift.
gefunden:
Code:
<?xml version="1.0" encoding="utf-8"?>
<includes>
<variable name="TextColor1">
<value condition="!IsEmpty(Skin.String(TextColor1))">$INFO[Skin.String(TextColor1)]</value>
<value>white</value>
</variable>
</includes>
das sollte auch mit mehreren strings gehen. müsste man das script etwas umschreiben, dass man den string übergegeben kann, der gesetzt werden soll.