optimization: don't recompute key widget if nothing changed
parent
77473d9df9
commit
bb4159fe62
|
|
@ -17,6 +17,7 @@ class KeyWidget:
|
||||||
self.mask_text = ""
|
self.mask_text = ""
|
||||||
self.tooltip = ""
|
self.tooltip = ""
|
||||||
self.color = None
|
self.color = None
|
||||||
|
self.scale = 0
|
||||||
|
|
||||||
self.rotation_angle = desc.rotation_angle
|
self.rotation_angle = desc.rotation_angle
|
||||||
|
|
||||||
|
|
@ -25,8 +26,10 @@ class KeyWidget:
|
||||||
self.update_position(scale, shift_x, shift_y)
|
self.update_position(scale, shift_x, shift_y)
|
||||||
|
|
||||||
def update_position(self, scale, shift_x=0, shift_y=0):
|
def update_position(self, scale, shift_x=0, shift_y=0):
|
||||||
size = scale * (KEY_SIZE_RATIO + KEY_SPACING_RATIO)
|
if self.scale != scale or self.shift_x != shift_x or self.shift_y != shift_y:
|
||||||
spacing = scale * KEY_SPACING_RATIO
|
self.scale = scale
|
||||||
|
size = self.scale * (KEY_SIZE_RATIO + KEY_SPACING_RATIO)
|
||||||
|
spacing = self.scale * KEY_SPACING_RATIO
|
||||||
|
|
||||||
self.rotation_x = size * self.desc.rotation_x
|
self.rotation_x = size * self.desc.rotation_x
|
||||||
self.rotation_y = size * self.desc.rotation_y
|
self.rotation_y = size * self.desc.rotation_y
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue