AutoPercenty3/settings_manager.py

43 lines
1.7 KiB
Python

from PySide6.QtCore import QSettings
import logging
class SettingsManager:
def __init__(self, logger):
self.logger = logger
self.settings = QSettings("WhenRideMycar", "AutoPercenty3")
def save_user_info(self, user_info: dict):
for key, value in user_info.items():
self.settings.setValue(f"user/{key}", value)
self.settings.sync()
def load_user_info(self) -> dict:
info = {}
for key in ["email", "password", "id", "membership_level", "name"]:
info[key] = self.settings.value(f"user/{key}", "")
return info
def save_gui_settings(self, toggle_states: dict):
"""
GUI에서 사용하는 각종 토글 및 기타 설정 정보를 저장합니다.
"""
for key, value in toggle_states.items():
self.settings.setValue(f"toggle/{key}", value)
self.settings.sync()
def load_gui_settings(self) -> dict:
"""
저장된 GUI 토글 및 기타 설정을 불러와 딕셔너리로 반환합니다.
"""
loaded = {}
# 토글 키 목록 예시
toggle_keys = ["title", "use_API", "optionTrnas", "optionIMGTrans",
"optionAutoSelect", "price", "thumb", "tag",
"detail_Option", "detail_IMGTrans", "debug_mode",
"recovery_mode", "ed_mode", "watermark", "opacity_percent",
"max_option_count", "clientID", "clientSecret"]
for key in toggle_keys:
# 기본값은 False 또는 0, "" 등으로 설정 (필요에 따라 조정)
loaded[key] = self.settings.value(f"toggle/{key}", False)
return loaded