##
from Renderer import Renderer
from enigma import ePixmap
-from Tools.Directories import pathExists, fileExists, SCOPE_SKIN_IMAGE, resolveFilename
+from Components.config import config
+from Tools.Directories import fileExists, SCOPE_SKIN_IMAGE, resolveFilename
class Picon(Renderer):
searchPaths = ['/usr/share/enigma2/%s/',
self.pngname = ""
def applySkin(self, desktop):
- print "-> Picon, applySkin:", self.skinAttributes
attribs = [ ]
for (attrib, value) in self.skinAttributes:
if attrib == "path":
GUI_WIDGET = ePixmap
def changed(self, what):
- print "PICON: path=%s" % self.path
if self.instance:
pngname = ""
if what[0] != self.CHANGED_CLEAR:
pngname = self.nameCache.get("default", "")
if pngname == "": # no default yet in cache..
pngname = self.findPicon("picon_default")
- if pngname == "": # Fallback to enigma2 logo
- pngname = resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/enigma2.png")
+ if pngname == "":
+ pos = config.skin.primary_skin.value.rfind('/')
+ if pos != -1:
+ str = config.skin.primary_skin.value[:pos+1]
+ str += 'picon_default.png'
+ if fileExists(str):
+ pngname = str
+ if pngname == "": # Fallback to enigma2 logo
+ pngname = resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/enigma2.png")
self.nameCache["default"] = pngname
if self.pngname != pngname:
self.instance.setPixmapFromFile(pngname)