This commit is contained in:
Auric Vente
2024-07-22 19:53:12 -06:00
parent 2b9eb8a4fd
commit d65916fc4e
4 changed files with 90 additions and 33 deletions

View File

@@ -9,6 +9,11 @@ class Settings:
mode: str
merge: bool
score_enabled: bool
travel_enabled: bool
thoughts_enabled: bool
words_enabled: bool
@staticmethod
def prepare() -> None:
settings = Storage.get_settings()
@@ -17,9 +22,10 @@ class Settings:
speed = Settings.speed.capitalize()
Window.speed.setCurrentText(speed)
Settings.mode = settings.get("mode", "all")
mode = Settings.mode.capitalize()
Window.mode.setCurrentText(mode)
Settings.score_enabled = settings.get("score_enabled", True)
Settings.travel_enabled = settings.get("travel_enabled", True)
Settings.thoughts_enabled = settings.get("thoughts_enabled", True)
Settings.words_enabled = settings.get("words_enabled", True)
Settings.merge = settings.get("merge", True)
@@ -27,8 +33,11 @@ class Settings:
def save() -> None:
settings = {
"speed": Settings.speed,
"mode": Settings.mode,
"merge": Settings.merge,
"score_enabled": Settings.score_enabled,
"travel_enabled": Settings.travel_enabled,
"thoughts_enabled": Settings.thoughts_enabled,
"words_enabled": Settings.words_enabled,
}
Storage.save_settings(settings)
@@ -38,12 +47,43 @@ class Settings:
Settings.speed = speed
Settings.save()
@staticmethod
def set_mode(mode: str) -> None:
Settings.mode = mode
Settings.save()
@staticmethod
def toggle_merge() -> None:
Settings.merge = not Settings.merge
Settings.save()
@staticmethod
def toggle_score_enabled() -> None:
Settings.score_enabled = not Settings.score_enabled
Settings.save()
@staticmethod
def toggle_travel_enabled() -> None:
Settings.travel_enabled = not Settings.travel_enabled
Settings.save()
@staticmethod
def toggle_thoughts_enabled() -> None:
Settings.thoughts_enabled = not Settings.thoughts_enabled
Settings.save()
@staticmethod
def toggle_words_enabled() -> None:
Settings.words_enabled = not Settings.words_enabled
Settings.save()
@staticmethod
def enable_all() -> None:
Settings.score_enabled = True
Settings.travel_enabled = True
Settings.thoughts_enabled = True
Settings.words_enabled = True
Settings.save()
@staticmethod
def disable_all() -> None:
Settings.score_enabled = False
Settings.travel_enabled = False
Settings.thoughts_enabled = False
Settings.words_enabled = False
Settings.save()