diff options
| author | Mladen Horvat <acid-burn@opendreambox.org> | 2011-04-19 12:08:09 +0200 |
|---|---|---|
| committer | Mladen Horvat <acid-burn@opendreambox.org> | 2011-04-19 12:08:09 +0200 |
| commit | d9a765120a16c5c1fe8efc5e4ab733e4a30fea4a (patch) | |
| tree | f56231006d962f2ba9a99a5eb084453140aeffc0 | |
| parent | d3c621480a77115a11fea85742ca85ae163c0d4b (diff) | |
| download | enigma2-d9a765120a16c5c1fe8efc5e4ab733e4a30fea4a.tar.gz enigma2-d9a765120a16c5c1fe8efc5e4ab733e4a30fea4a.zip | |
Converter/ValueToPixmap.py, Renderer/Pixmap.py: use cache for LoadPixmap inside ValueToPixmap converter, look for pixmap attribute inside Pixmap renderer and react on changes. refs #750
| -rw-r--r-- | lib/python/Components/Converter/ValueToPixmap.py | 6 | ||||
| -rw-r--r-- | lib/python/Components/Renderer/Pixmap.py | 13 |
2 files changed, 16 insertions, 3 deletions
diff --git a/lib/python/Components/Converter/ValueToPixmap.py b/lib/python/Components/Converter/ValueToPixmap.py index 2ab695ad..ed9f7700 100644 --- a/lib/python/Components/Converter/ValueToPixmap.py +++ b/lib/python/Components/Converter/ValueToPixmap.py @@ -24,11 +24,11 @@ class ValueToPixmap(Converter, object): if val in (None, ""): return None if self.type == self.PATH: - return LoadPixmap(val) + return LoadPixmap(cached=True, path=val) if self.type == self.LANGUAGE_CODE: - png = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "countries/" + val[3:].lower() + ".png")) + png = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "countries/" + val[3:].lower() + ".png")) if png == None: - png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "countries/missing.png")) + png = LoadPixmap(cached=True, path=resolveFilename(SCOPE_SKIN_IMAGE, "countries/missing.png")) return png return None diff --git a/lib/python/Components/Renderer/Pixmap.py b/lib/python/Components/Renderer/Pixmap.py index d67cd559..7c6b5795 100644 --- a/lib/python/Components/Renderer/Pixmap.py +++ b/lib/python/Components/Renderer/Pixmap.py @@ -3,4 +3,17 @@ from Renderer import Renderer from enigma import ePixmap class Pixmap(Renderer): + def __init__(self): + Renderer.__init__(self) + GUI_WIDGET = ePixmap + + def postWidgetCreate(self, instance): + self.changed((self.CHANGED_DEFAULT,)) + + def changed(self, what): + if what[0] != self.CHANGED_CLEAR: + if self.source and hasattr(self.source, "pixmap"): + if self.instance: + self.instance.setPixmap(self.source.pixmap) + |
