From 2d56db2bf96ca3ca320a5c25c0e2ee6f3435ab43 Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Tue, 13 Nov 2007 12:43:16 +0000 Subject: [PATCH] allow setting framebuffer resolution from skin --- data/skin.xml | 5 ++++- skin.py | 18 +++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/data/skin.xml b/data/skin.xml index 8e6445fa..dbfe25e9 100644 --- a/data/skin.xml +++ b/data/skin.xml @@ -1,5 +1,8 @@ + + + @@ -16,7 +19,7 @@ - + <color name="Background" color="#25062748" /> diff --git a/skin.py b/skin.py index 1f5c9cfc..baa53f74 100644 --- a/skin.py +++ b/skin.py @@ -217,7 +217,23 @@ def loadSingleSkinData(desktop, dom_skin, path_prefix): skin = dom_skin.childNodes[0] assert skin.tagName == "skin", "root element in skin must be 'skin'!" - + + for c in elementsWithTag(skin.childNodes, "output"): + id = int(c.getAttribute("id") or "0") + if id == 0: # framebuffer + for res in elementsWithTag(c.childNodes, "resolution"): + xres = int(res.getAttribute("xres" or "720")) + yres = int(res.getAttribute("yres" or "576")) + bpp = int(res.getAttribute("bpp" or "32")) + + from enigma import gFBDC + i = gFBDC.getInstance() + i.setResolution(xres, yres) + + if bpp != 32: + # load palette (not yet implemented) + pass + for c in elementsWithTag(skin.childNodes, "colors"): for color in elementsWithTag(c.childNodes, "color"): name = str(color.getAttribute("name")) -- 2.30.2