except:
None
-from Tools.Directories import resolveFilename, SCOPE_SKIN
+from Tools.Directories import resolveFilename, SCOPE_SKIN, SCOPE_SKIN_IMAGE
# read the skin
skinfile = file(resolveFilename(SCOPE_SKIN, 'skin.xml'), 'r')
elif attrib == 'zPosition':
guiObject.setZPosition(int(value))
elif attrib == "pixmap":
- ptr = loadPNG(value)
+ ptr = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, value))
+ # that __deref__ still scares me!
desktop.makeCompatiblePixmap(ptr.__deref__())
guiObject.setPixmap(ptr.__deref__())
# guiObject.setPixmapFromFile(value)
"showAlways": guiObject.showAlways,
"showNever": guiObject.showNever
}[value])
+ elif attrib == "enableWrapAround":
+ guiObject.setWrapAround(True)
+ elif attrib == "pointer":
+ (name, pos) = value.split(':')
+ pos = parsePosition(pos)
+ ptr = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, name))
+ desktop.makeCompatiblePixmap(ptr.__deref__())
+ guiObject.setPointer(ptr.__deref__(), pos)
elif attrib != 'name':
print "unsupported attribute " + attrib + "=" + value
except int:
bpName = str(pixmap.getAttribute("pos"))
filename = str(pixmap.getAttribute("filename"))
- png = loadPNG(filename)
+ png = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, filename))
# adapt palette
desktop.makeCompatiblePixmap(png.__deref__())
myscreen = x
del skin
- if myscreen is None:
- # try embedded skin
- print screen.__dict__
- if "parsedSkin" in screen.__dict__:
- myscreen = screen.parsedSkin
- elif "skin" in screen.__dict__:
- myscreen = screen.parsedSkin = xml.dom.minidom.parseString(screen.skin).childNodes[0]
+ # try embedded skin
+ myscreen = myscreen or getattr(screen, "parsedSkin", None)
+
+ # try uncompiled embedded skin
+ if myscreen is None and getattr(screen, "skin", None):
+ myscreen = screen.parsedSkin = xml.dom.minidom.parseString(screen.skin).childNodes[0]
assert myscreen is not None, "no skin for screen '" + name + "' found!"