From 26c642a28e6d5ce6e0d6ab0b89ea3697a4de0182 Mon Sep 17 00:00:00 2001 From: Andreas Monzner Date: Mon, 17 Sep 2007 18:50:39 +0000 Subject: [PATCH] use servicereferences instead of servicename as picon filenames --- data/skin.xml | 2 +- lib/python/Components/Renderer/Picon.py | 25 ++++++++----------------- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/data/skin.xml b/data/skin.xml index df8e3270..3e98dc54 100644 --- a/data/skin.xml +++ b/data/skin.xml @@ -103,7 +103,7 @@ - Name + Reference diff --git a/lib/python/Components/Renderer/Picon.py b/lib/python/Components/Renderer/Picon.py index 32c777f5..060337af 100644 --- a/lib/python/Components/Renderer/Picon.py +++ b/lib/python/Components/Renderer/Picon.py @@ -23,12 +23,14 @@ class Picon(Renderer): pngname = "" if what[0] != self.CHANGED_CLEAR: sname = self.source.text + # strip all after last : + pos = sname.rfind(':') + if pos != -1: + sname = sname[:pos].rstrip(':') pngname = self.nameCache.get(sname, "") if pngname == "": pngname = self.findPicon(self.source.text) - if pngname == "": - self.nameCache[sname] = pngname - else: + if pngname != "": self.nameCache[sname] = pngname if pngname == "": # no picon for service found pngname = self.nameCache.get("default", "") @@ -44,18 +46,7 @@ class Picon(Renderer): def findPicon(self, serviceName): for path in self.searchPaths: - if pathExists(path): - png = self.findFile(path, serviceName) - if png != "": - return png + pngname = path + serviceName + ".png" + if fileExists(pngname): + return pngname return "" - - def findFile(self, path, serviceName): - pngname = path + serviceName + ".png" - if fileExists(pngname): - return pngname - else: - for i in range(len(serviceName), 1, -1): - if fileExists(path + serviceName[0:i] + ".png"): - return path + serviceName[0:i] + ".png" - return "" -- 2.30.2