Replace set_alarm_mode with view
This commit is contained in:
parent
59133f275d
commit
6287e4210d
26
clock.py
26
clock.py
|
@ -56,7 +56,6 @@ def play_sound(source):
|
||||||
playsound(source)
|
playsound(source)
|
||||||
|
|
||||||
class AlarmSettings():
|
class AlarmSettings():
|
||||||
set_alarm_mode = False
|
|
||||||
alarm_time = datetime.datetime(2022, 12, 10, 7, 30, 0, 0)
|
alarm_time = datetime.datetime(2022, 12, 10, 7, 30, 0, 0)
|
||||||
alarm_activated = False
|
alarm_activated = False
|
||||||
|
|
||||||
|
@ -76,6 +75,9 @@ class MyClockWidget(FloatLayout):
|
||||||
seconds_to_next_alarm = 0
|
seconds_to_next_alarm = 0
|
||||||
led_color = [0, 0, 0]
|
led_color = [0, 0, 0]
|
||||||
|
|
||||||
|
# view can be "clock" "set_alarm" "settings" or "calendar"
|
||||||
|
view = "clock"
|
||||||
|
|
||||||
def draw_face(self):
|
def draw_face(self):
|
||||||
"""
|
"""
|
||||||
Add number labels when added in widget hierarchy
|
Add number labels when added in widget hierarchy
|
||||||
|
@ -83,7 +85,7 @@ class MyClockWidget(FloatLayout):
|
||||||
|
|
||||||
alarm_settings = App.get_running_app().alarm_settings
|
alarm_settings = App.get_running_app().alarm_settings
|
||||||
|
|
||||||
if alarm_settings.set_alarm_mode:
|
if self.view == "set_alarm":
|
||||||
time = alarm_settings.alarm_time
|
time = alarm_settings.alarm_time
|
||||||
else:
|
else:
|
||||||
time = datetime.datetime.now()
|
time = datetime.datetime.now()
|
||||||
|
@ -107,7 +109,7 @@ class MyClockWidget(FloatLayout):
|
||||||
def update_face(self):
|
def update_face(self):
|
||||||
alarm_settings = App.get_running_app().alarm_settings
|
alarm_settings = App.get_running_app().alarm_settings
|
||||||
|
|
||||||
if alarm_settings.set_alarm_mode:
|
if self.view == "set_alarm":
|
||||||
time = alarm_settings.alarm_time
|
time = alarm_settings.alarm_time
|
||||||
else:
|
else:
|
||||||
time = datetime.datetime.now()
|
time = datetime.datetime.now()
|
||||||
|
@ -141,7 +143,7 @@ class MyClockWidget(FloatLayout):
|
||||||
app = App.get_running_app()
|
app = App.get_running_app()
|
||||||
alarm_settings = app.alarm_settings
|
alarm_settings = app.alarm_settings
|
||||||
|
|
||||||
if alarm_settings.set_alarm_mode or alarm_settings.alarm_activated:
|
if (self.view == "set_alarm") or alarm_settings.alarm_activated:
|
||||||
source = 'alarm_on.png'
|
source = 'alarm_on.png'
|
||||||
rgb = [0.9, 0.0, 0.0]
|
rgb = [0.9, 0.0, 0.0]
|
||||||
else:
|
else:
|
||||||
|
@ -215,7 +217,7 @@ class MyClockWidget(FloatLayout):
|
||||||
Redraw clock hands
|
Redraw clock hands
|
||||||
"""
|
"""
|
||||||
alarm_settings = App.get_running_app().alarm_settings
|
alarm_settings = App.get_running_app().alarm_settings
|
||||||
if alarm_settings.set_alarm_mode:
|
if self.view == "set_alarm":
|
||||||
time = alarm_settings.alarm_time
|
time = alarm_settings.alarm_time
|
||||||
else:
|
else:
|
||||||
time = datetime.datetime.now()
|
time = datetime.datetime.now()
|
||||||
|
@ -230,7 +232,7 @@ class MyClockWidget(FloatLayout):
|
||||||
|
|
||||||
hands.canvas.clear()
|
hands.canvas.clear()
|
||||||
with hands.canvas:
|
with hands.canvas:
|
||||||
if alarm_settings.set_alarm_mode:
|
if self.view == "set_alarm":
|
||||||
if self.grabbed != "" or self.set_alarm_timeout_counter < 1 * 60 or \
|
if self.grabbed != "" or self.set_alarm_timeout_counter < 1 * 60 or \
|
||||||
self.set_alarm_timeout_counter % 60 <= 30 or alarm_settings.alarm_modified == False:
|
self.set_alarm_timeout_counter % 60 <= 30 or alarm_settings.alarm_modified == False:
|
||||||
Color(0.9, 0.0, 0.0)
|
Color(0.9, 0.0, 0.0)
|
||||||
|
@ -242,7 +244,7 @@ class MyClockWidget(FloatLayout):
|
||||||
self.set_alarm_timeout_counter += 1
|
self.set_alarm_timeout_counter += 1
|
||||||
|
|
||||||
if self.set_alarm_timeout_counter >= 4 * 60 + 30:
|
if self.set_alarm_timeout_counter >= 4 * 60 + 30:
|
||||||
alarm_settings.set_alarm_mode = False
|
self.view = "clock"
|
||||||
self.set_alarm_timeout_counter = 0
|
self.set_alarm_timeout_counter = 0
|
||||||
|
|
||||||
if alarm_settings.alarm_modified:
|
if alarm_settings.alarm_modified:
|
||||||
|
@ -261,18 +263,18 @@ class MyClockWidget(FloatLayout):
|
||||||
alarm_settings.alarm_modified = False
|
alarm_settings.alarm_modified = False
|
||||||
self.set_alarm_timeout_counter = 0
|
self.set_alarm_timeout_counter = 0
|
||||||
|
|
||||||
if alarm_settings.set_alarm_mode:
|
if self.view == "set_alarm":
|
||||||
alarm_settings.set_alarm_mode = False
|
self.view = "clock"
|
||||||
alarm_settings.alarm_activated = False
|
alarm_settings.alarm_activated = False
|
||||||
else:
|
else:
|
||||||
alarm_settings.set_alarm_mode = True
|
self.view = "set_alarm"
|
||||||
alarm_settings.alarm_activated = True
|
alarm_settings.alarm_activated = True
|
||||||
|
|
||||||
def on_touch_up(self, touch):
|
def on_touch_up(self, touch):
|
||||||
self.grabbed = ""
|
self.grabbed = ""
|
||||||
alarm_settings = App.get_running_app().alarm_settings
|
alarm_settings = App.get_running_app().alarm_settings
|
||||||
|
|
||||||
if alarm_settings.set_alarm_mode and (self.grabbed == "hour" or self.grabbed == "minute"):
|
if (self.view == "set_alarm") and (self.grabbed == "hour" or self.grabbed == "minute"):
|
||||||
self.set_alarm_timeout_counter = 0
|
self.set_alarm_timeout_counter = 0
|
||||||
|
|
||||||
def on_touch_move(self, touch):
|
def on_touch_move(self, touch):
|
||||||
|
@ -349,7 +351,7 @@ class MyClockWidget(FloatLayout):
|
||||||
self.on_alarm_button_pressed()
|
self.on_alarm_button_pressed()
|
||||||
elif sound_process is not None:
|
elif sound_process is not None:
|
||||||
kill_sound_process()
|
kill_sound_process()
|
||||||
elif alarm_settings.set_alarm_mode:
|
elif self.view == "set_alarm":
|
||||||
self.set_alarm_timeout_counter = 0
|
self.set_alarm_timeout_counter = 0
|
||||||
if (minutes_hand.x - 0.1 * self.size[0] <= touch.pos[0] <= minutes_hand.x + 0.1 * self.size[0]) and \
|
if (minutes_hand.x - 0.1 * self.size[0] <= touch.pos[0] <= minutes_hand.x + 0.1 * self.size[0]) and \
|
||||||
(minutes_hand.y - 0.1 * self.size[1] <= touch.pos[1] <= minutes_hand.y + 0.1 * self.size[1]):
|
(minutes_hand.y - 0.1 * self.size[1] <= touch.pos[1] <= minutes_hand.y + 0.1 * self.size[1]):
|
||||||
|
|
Loading…
Reference in New Issue