use first color in "foregroundColors" as "foregroundColor" when
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>
Tue, 10 Jun 2008 08:59:29 +0000 (08:59 +0000)
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>
Tue, 10 Jun 2008 08:59:29 +0000 (08:59 +0000)
"foregroundColor" is not defined!
use first color in "backgroundColors" as "backgroundColor" when
"backgroundColor" is not defined"

lib/python/Components/Label.py

index 5f74b75..49e94e6 100644 (file)
@@ -46,20 +46,32 @@ class MultiColorLabel(Label):
 
        def applySkin(self, desktop, screen):
                if self.skinAttributes is not None:
 
        def applySkin(self, desktop, screen):
                if self.skinAttributes is not None:
+                       foregroundColor = None
+                       backgroundColor = None
                        attribs = [ ]
                        for (attrib, value) in self.skinAttributes:
                                if attrib == "foregroundColors":
                                        colors = value.split(',')
                        attribs = [ ]
                        for (attrib, value) in self.skinAttributes:
                                if attrib == "foregroundColors":
                                        colors = value.split(',')
-                                       attribs.append(("foregroundColor",colors[0] ))
                                        for color in colors:
                                                self.foreColors.append(parseColor(color))
                                        for color in colors:
                                                self.foreColors.append(parseColor(color))
+                                       if not foregroundColor:
+                                               foregroundColor = colors[0]
                                elif attrib == "backgroundColors":
                                        colors = value.split(',')
                                elif attrib == "backgroundColors":
                                        colors = value.split(',')
-                                       attribs.append(("backgroundColor",colors[0] ))
                                        for color in colors:
                                                self.backColors.append(parseColor(color))
                                        for color in colors:
                                                self.backColors.append(parseColor(color))
+                                       if not backgroundColor:
+                                               backgroundColor = colors[0]
+                               elif attrib == "backgroundColor":
+                                       backgroundColor = value
+                               elif attrib == "foregroundColor":
+                                       foregroundColor = value
                                else:
                                        attribs.append((attrib,value))
                                else:
                                        attribs.append((attrib,value))
+                       if foregroundColor:
+                               attribs.append(("foregroundColor",foregroundColor))
+                       if backgroundColor:
+                               attribs.append(("backgroundColor",backgroundColor))
                        self.skinAttributes = attribs
                return GUIComponent.applySkin(self, desktop, screen)
        
                        self.skinAttributes = attribs
                return GUIComponent.applySkin(self, desktop, screen)