X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=skin.py;h=f8fcb1224cf0bca30709a671ea33dea03941215b;hb=d06c9d21f74e5ccf4492d34285db7b6adfc2e94c;hp=fbc5bcd8d843c25f8b439d6eb7cd3d38c887948b;hpb=4bbe1d7e132ead361bf179b8ee618bdaba2335dc;p=vuplus_dvbapp diff --git a/skin.py b/skin.py index fbc5bcd..f8fcb12 100644 --- a/skin.py +++ b/skin.py @@ -14,7 +14,7 @@ def dump(x, i=0): except: None -from Tools.Directories import resolveFilename, SCOPE_SKIN, SCOPE_SKIN_IMAGE +from Tools.Directories import resolveFilename, SCOPE_SKIN, SCOPE_SKIN_IMAGE, SCOPE_FONTS dom_skins = [ ] @@ -84,7 +84,7 @@ def applySingleAttribute(guiObject, desktop, attrib, value): elif attrib == "pixmap": ptr = loadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, value)) # that __deref__ still scares me! -# desktop.makeCompatiblePixmap(ptr.__deref__()) + desktop.makeCompatiblePixmap(ptr.__deref__()) guiObject.setPixmap(ptr.__deref__()) # guiObject.setPixmapFromFile(value) elif attrib == "alphatest": # used by ePixmap @@ -159,7 +159,6 @@ def applySingleAttribute(guiObject, desktop, attrib, value): guiObject.setShadowOffset(parsePosition(value)) elif attrib != 'name': print "unsupported attribute " + attrib + "=" + value - except int: # AttributeError: print "widget %s (%s) doesn't support attribute %s!" % ("", guiObject.__class__.__name__, attrib) @@ -184,6 +183,14 @@ def loadSingleSkinData(desktop, dom_skin): colorNames[name] = parseColor(color) + for c in elementsWithTag(skin.childNodes, "fonts"): + for font in elementsWithTag(c.childNodes, "font"): + filename = str(font.getAttribute("filename") or "") + name = str(font.getAttribute("name") or "Regular") + scale = int(font.getAttribute("scale") or "100") + is_replacement = font.getAttribute("replacement") != "" + addFont(resolveFilename(SCOPE_FONTS, filename), name, scale, is_replacement) + for windowstyle in elementsWithTag(skin.childNodes, "windowstyle"): style = eWindowStyleSkinned()