aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2007-11-13 12:43:16 +0000
committerFelix Domke <tmbinc@elitedvb.net>2007-11-13 12:43:16 +0000
commit2d56db2bf96ca3ca320a5c25c0e2ee6f3435ab43 (patch)
tree91967658882eefecb12d36d998c31c120906d46e
parenta352eedba61b1a74b91db4005f7d9a24f8ac2848 (diff)
downloadenigma2-2d56db2bf96ca3ca320a5c25c0e2ee6f3435ab43.tar.gz
enigma2-2d56db2bf96ca3ca320a5c25c0e2ee6f3435ab43.zip
allow setting framebuffer resolution from skin
-rw-r--r--data/skin.xml5
-rw-r--r--skin.py18
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 @@
<skin>
<!-- Screwed Stone II skin (skin.xml) /Nemesis -->
+ <output id="0">
+ <resolution xres="720" yres="576" bpp="32" />
+ </output>
<!-- Colors (#AARRGGBB) -->
<colors>
<color name="white" value="#ffffff" />
@@ -16,7 +19,7 @@
<color name="background" value="#25062748" />
<color name="foreground" value="#ffffff" />
</colors>
- <!-- Main screen colors (id=0 for Menu's, id=1 for LCD) -->
+ <!-- Main screen colors (id=0 for Framebuffer, id=1 for LCD) -->
<windowstyle type="skinned" id="0">
<title offset="33,14" font="Regular;20" />
<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"))