Coloured glyphs.
[naja.git] / naja / widgets / text.py
index 4ddc0d6b42ce3b9806ea871a369d658eeb45f2c4..ab8b53d0f52be79da8fff14b70d5ac9627bdf1c1 100644 (file)
@@ -8,14 +8,17 @@ from naja.widgets.base import Widget
 
 
 MARKUP_MAP = {
-    'NORTH': (1, 'glyphs/arrow_up.png'),
-    'SOUTH': (1, 'glyphs/arrow_down.png'),
-    'EAST': (1, 'glyphs/arrow_right.png'),
-    'WEST': (1, 'glyphs/arrow_left.png'),
-    'HEALTH': (1, 'glyphs/health.png'),
-    'WIN': (1, 'glyphs/win.png'),
-    'KEY': (1, 'glyphs/key.png'),
-    'MSB': (1, 'glyphs/msb.png'),
+    'NORTH': (1, 'glyphs/arrow_up.png', None),
+    'SOUTH': (1, 'glyphs/arrow_down.png', None),
+    'EAST': (1, 'glyphs/arrow_right.png', None),
+    'WEST': (1, 'glyphs/arrow_left.png', None),
+    'HEALTH': (1, 'glyphs/health.png', PALETTE.DARK_RED),
+    'WINTOKEN': (1, 'glyphs/win.png', PALETTE.DARK_OLIVE),
+    'KEY': (1, 'glyphs/key.png', None),
+    'MSB': (1, 'glyphs/msb.png', None),
+    'REDKEY': (1, 'glyphs/key.png', PALETTE.ORANGE),
+    'GREENKEY': (1, 'glyphs/key.png', PALETTE.GREEN),
+    'BLUEKEY': (1, 'glyphs/key.png', PALETTE.BLUE),
 }
 
 
@@ -96,9 +99,12 @@ class TextBoxWidget(TextWidget):
                         pos = (size[0] * EIGHT_BIT_SCALE,
                                size[1] * line_count * EIGHT_BIT_SCALE)
                         pos = (pos[0] + self.padding, pos[1] + self.padding)
+                        colour = self.colour
+                        if markup_data[2] is not None:
+                            colour = markup_data[2]
                         image_map[pos] = resources.get_image(
                             markup_data[1],
-                            transforms=(EIGHT_BIT, blender(self.colour)))
+                            transforms=(EIGHT_BIT, blender(colour)))
                     remaining_words.pop(0)
                 else:
                     line_count += 1