import pygame
class Key:
- row_positions = {
- 'first': 0,
- 'second': 50,
- 'third': 100,
- 'fourth': 150,
- 'fifth': 200,
- 'sixth': 250,
- }
-
default_outer_color = (120, 120, 120)
lighter_outer_color = (200, 200, 200)
default_inner_color = (255, 255, 255)
self.key_name = key_name
self.key_sym = key_sym
- if isinstance(top, str):
- self.top = self.row_positions[top]
- else:
- self.top = top
-
+ self.top = top
self.left = left
self.width = width
self.height = height
self.rect = (self.left, self.top, self.right, self.bottom)
self.position = (self.left, self.top)
+ self.disabled = disabled
if disabled:
self.outer_color = self.lighter_outer_color
self.inner_color = self.default_inner_color
self.actions = []
self.description = []
- self.custom_color = None
- self.custom_unready_color = None
+ self.custom_color = self.mapped_inner_color
+ self.custom_unready_color = self.mapped_unready_inner_color
def square(self, all_actions_ready):
if self.has_actions():
if all_actions_ready:
- self.inner_color = self.custom_color or self.mapped_inner_color
+ self.inner_color = self.custom_color
else:
- self.inner_color = self.custom_unready_color or self.mapped_unready_inner_color
+ self.inner_color = self.custom_unready_color
return RoundedRect((0, 0, self.width, self.height),
self.outer_color, self.inner_color, self.linewidth)