Add support for writing settings.json

This commit is contained in:
Admar Schoonen 2023-04-23 21:23:23 +02:00
parent 5cd48fca21
commit e60cc15152
2 changed files with 36 additions and 10 deletions

View File

@ -149,8 +149,15 @@ class ClockSettings():
self.wake_up_brightness = j["wake_up_brightness"]
self.reading_light_brightness = j["reading_light_brightness"]
self.display_brightness = j["display_brightness"]
self.alarm_activated = j["alarm_activated"]
hour = j["alarm_time_hour"]
minute = j["alarm_time_minute"]
t = datetime.datetime.now()
self.alarm_time = datetime.datetime(t.year, \
t.month, t.day, hour, minute, 0, 0)
self.alarm_time = datetime.datetime(2022, 12, 10, 7, 30, 0, 0)
self.alarm_activated = False
self.alarm_playing = False
@ -158,13 +165,24 @@ class ClockSettings():
self.seconds_to_sunrise = 30 * 60 # 30 minutes
def read(self):
ClockSettings()
def write(self):
return
j = {}
j["theme"] = self.theme_selected
j["volume"] = self.wake_up_volume
j["wake_up_sound"] = self.sound_selected
j["wake_up_brightness"] = self.wake_up_brightness
j["reading_light_brightness"] = self.reading_light_brightness
j["display_brightness"] = self.display_brightness
j["alarm_activated"] = self.alarm_activated
j["alarm_time_hour"] = self.alarm_time.hour
j["alarm_time_minute"] = self.alarm_time.minute
with open("settings.json", "w") as f:
json.dump(j, f, indent=4)
print("settings saved")
class MyClockWidget(FloatLayout):
settings = ClockSettings()
@ -716,6 +734,7 @@ class MyClockWidget(FloatLayout):
if self.set_alarm_timeout_counter >= 4.5 * update_rate:
self.view = "clock"
self.settings.write()
self.set_alarm_timeout_counter = 0
self.view_active_since = time.time()
@ -1042,7 +1061,10 @@ class MyClockWidget(FloatLayout):
self.view = "clock"
self.view_active_since = time.time()
self.settings.alarm_activated = False
self.settings.write()
else:
if (self.view.startswith("settings_menu")):
self.settings.write()
self.view = "set_alarm"
self.view_active_since = time.time()
self.settings.alarm_activated = True
@ -1055,6 +1077,7 @@ class MyClockWidget(FloatLayout):
else:
self.view = "clock"
self.view_active_since = time.time()
self.settings.write()
print("view updated to " + self.view)
def touch_up_function(self, touch):

View File

@ -1,8 +1,11 @@
{
"volume": 4,
"theme": "Light",
"volume": 13,
"wake_up_sound": "NPO Radio 1",
"wake_up_brightness": 20,
"reading_light_brightness": 3,
"display_brightness": 5,
"theme": "Colorful"
}
"wake_up_brightness": 4,
"reading_light_brightness": 13,
"display_brightness": 13,
"alarm_activated": true,
"alarm_time_hour": 6,
"alarm_time_minute": 57
}