- merge cluts for borders, too
authorFelix Domke <tmbinc@elitedvb.net>
Fri, 20 May 2005 20:50:42 +0000 (20:50 +0000)
committerFelix Domke <tmbinc@elitedvb.net>
Fri, 20 May 2005 20:50:42 +0000 (20:50 +0000)
mytest.py
skin.py

index 461fdfa..d6cfb1a 100644 (file)
--- a/mytest.py
+++ b/mytest.py
@@ -153,7 +153,7 @@ def runScreenTest():
 import keymapparser
 keymapparser.readKeymap()
 import skin
 import keymapparser
 keymapparser.readKeymap()
 import skin
-skin.loadSkin()
+skin.loadSkin(getDesktop())
 
 # first, setup a screen
 runScreenTest()
 
 # first, setup a screen
 runScreenTest()
diff --git a/skin.py b/skin.py
index 3f5cd26..bc4931f 100644 (file)
--- a/skin.py
+++ b/skin.py
@@ -162,7 +162,6 @@ def applyAttributes(guiObject, node, desktop):
                                        raise "loading PNG failed!"
                                x = ptr
                                ptr = ptr.__deref__()
                                        raise "loading PNG failed!"
                                x = ptr
                                ptr = ptr.__deref__()
-                               print desktop
                                desktop.makeCompatiblePixmap(ptr)
                                guiObject.setPixmap(ptr)
 #                              guiObject.setPixmapFromFile(value)
                                desktop.makeCompatiblePixmap(ptr)
                                guiObject.setPixmap(ptr)
 #                              guiObject.setPixmapFromFile(value)
@@ -200,7 +199,7 @@ def applyAttributes(guiObject, node, desktop):
                except AttributeError:
                        print "widget %s (%s) doesn't support attribute %s!" % ("", guiObject.__class__.__name__, attrib)
 
                except AttributeError:
                        print "widget %s (%s) doesn't support attribute %s!" % ("", guiObject.__class__.__name__, attrib)
 
-def loadSkin():
+def loadSkin(desktop):
        print "loading skin..."
        
        def getPNG(x):
        print "loading skin..."
        
        def getPNG(x):
@@ -231,7 +230,11 @@ def loadSkin():
                                bpName = str(pixmap.getAttribute("pos"))
                                filename = str(pixmap.getAttribute("filename"))
                                
                                bpName = str(pixmap.getAttribute("pos"))
                                filename = str(pixmap.getAttribute("filename"))
                                
-                               style.setPixmap(eWindowStyleSkinned.__dict__[bsName], eWindowStyleSkinned.__dict__[bpName], getPNG(filename))
+                               png = getPNG(filename)
+                               
+                               # adapt palette
+                               desktop.makeCompatiblePixmap(png)
+                               style.setPixmap(eWindowStyleSkinned.__dict__[bsName], eWindowStyleSkinned.__dict__[bpName], png)
 
                for color in elementsWithTag(windowstyle.childNodes, "color"):
                        type = str(color.getAttribute("name"))
 
                for color in elementsWithTag(windowstyle.childNodes, "color"):
                        type = str(color.getAttribute("name"))