class TextWidget(Widget):
def __init__(self, pos, text, size=None, fontname=None, fontsize=None,
- colour=None):
+ colour=None, unselectable_colour=None):
super(TextWidget, self).__init__(pos, size)
self.text = text
self.fontname = fontname or FONT
self.fontsize = (fontsize or FONT_SIZE) // EIGHT_BIT_SCALE
self.colour = convert_colour(colour or PALETTE.BLACK)
+ if unselectable_colour is not None:
+ unselectable_colour = convert_colour(unselectable_colour)
+ self.unselectable_colour = unselectable_colour
def render_line(self, text):
- text_surf = self.font.render(text, True, self.colour)
+ colour = self.colour
+ if not self.is_selectable() and self.unselectable_colour is not None:
+ colour = self.unselectable_colour
+ text_surf = self.font.render(text, True, colour)
text_rect = text_surf.get_rect()
return pygame.transform.scale(
text_surf, (text_rect.width * EIGHT_BIT_SCALE,