mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-02-20 12:33:55 +08:00
raylib UI: fix scrolling click behavior (#35609)
see look how nice using base classes are
This commit is contained in:
@@ -23,16 +23,12 @@ class Toggle(Widget):
|
||||
def set_rect(self, rect: rl.Rectangle):
|
||||
self._rect = rl.Rectangle(rect.x, rect.y, WIDTH, HEIGHT)
|
||||
|
||||
def handle_input(self):
|
||||
def _handle_mouse_release(self, mouse_pos: rl.Vector2):
|
||||
if not self._enabled:
|
||||
return 0
|
||||
return
|
||||
|
||||
if rl.is_mouse_button_released(rl.MouseButton.MOUSE_BUTTON_LEFT):
|
||||
if rl.check_collision_point_rec(rl.get_mouse_position(), self._rect):
|
||||
self._state = not self._state
|
||||
self._target = 1.0 if self._state else 0.0
|
||||
return 1
|
||||
return 0
|
||||
self._state = not self._state
|
||||
self._target = 1.0 if self._state else 0.0
|
||||
|
||||
def get_state(self):
|
||||
return self._state
|
||||
@@ -72,7 +68,5 @@ class Toggle(Widget):
|
||||
knob_y = self._rect.y + HEIGHT / 2
|
||||
rl.draw_circle(int(knob_x), int(knob_y), HEIGHT / 2, knob_color)
|
||||
|
||||
return self.handle_input()
|
||||
|
||||
def _blend_color(self, c1, c2, t):
|
||||
return rl.Color(int(c1.r + (c2.r - c1.r) * t), int(c1.g + (c2.g - c1.g) * t), int(c1.b + (c2.b - c1.b) * t), 255)
|
||||
|
||||
Reference in New Issue
Block a user