2023-08-28 22:45:50 +08:00

91 lines
2.3 KiB
Python

from PySide6.QtCore import QDir, QSettings, QUrl
__all__ = [
"DATABASE_URL",
"DEVICES_JSON_FILE",
"DEVICE_UUID",
"TESSERACT_FILE",
"KNN_MODEL_FILE",
"SIFT_DATABASE_FILE",
"Settings",
]
DATABASE_URL = "General/DatabaseUrl"
DEVICES_JSON_FILE = "Ocr/DevicesJsonFile"
DEVICE_UUID = "Ocr/DeviceUuid"
TESSERACT_FILE = "Ocr/TesseractFile"
KNN_MODEL_FILE = "Ocr/KnnModelFile"
SIFT_DATABASE_FILE = "Ocr/SiftDatabaseFile"
class Settings(QSettings):
def __init__(self, parent=None):
super().__init__(
QDir.current().absoluteFilePath("arcaea_offline.ini"),
QSettings.Format.IniFormat,
parent,
)
def databaseUrl(self) -> str | None:
return self.value(DATABASE_URL, None, str)
def setDatabaseUrl(self, value: str):
self.setValue(DATABASE_URL, value)
self.sync()
def devicesJsonFile(self) -> str | None:
return self.value(DEVICES_JSON_FILE, None, str)
def setDevicesJsonFile(self, path: str):
self.setValue(DEVICES_JSON_FILE, path)
self.sync()
def resetDevicesJsonFile(self):
self.setValue(DEVICES_JSON_FILE, None)
self.sync()
def deviceUuid(self) -> str | None:
return self.value(DEVICE_UUID, None, str)
def setDeviceUuid(self, uuid: str):
self.setValue(DEVICE_UUID, uuid)
self.sync()
def resetDeviceUuid(self):
self.setValue(DEVICE_UUID, None)
self.sync()
def tesseractPath(self):
return self.value(TESSERACT_FILE, None, str)
def setTesseractPath(self, path: str):
self.setValue(TESSERACT_FILE, path)
self.sync()
def resetTesseractPath(self):
self.setValue(TESSERACT_FILE, None)
self.sync()
def knnModelFile(self) -> str | None:
return self.value(KNN_MODEL_FILE, None, str)
def setKnnModelFile(self, path: str):
self.setValue(KNN_MODEL_FILE, path)
self.sync()
def resetKnnModelFile(self):
self.setValue(KNN_MODEL_FILE, None)
self.sync()
def siftDatabaseFile(self) -> str | None:
return self.value(SIFT_DATABASE_FILE, None, str)
def setSiftDatabaseFile(self, path: str):
self.setValue(SIFT_DATABASE_FILE, path)
self.sync()
def resetSiftDatabaseFile(self):
self.setValue(SIFT_DATABASE_FILE, None)
self.sync()