mirror of
https://github.com/283375/arcaea-offline-pyside-ui.git
synced 2025-04-17 16:20:18 +00:00
113 lines
4.6 KiB
Python
113 lines
4.6 KiB
Python
from PySide6.QtCore import QCoreApplication
|
|
from PySide6.QtWidgets import QLabel, QPushButton
|
|
|
|
from core.settings import SettingsKeys, settings
|
|
from ui.implements.components.fileSelector import FileSelector
|
|
from ui.implements.settings.settingsBaseWidget import SettingsBaseWidget
|
|
|
|
|
|
class SettingsOcr(SettingsBaseWidget):
|
|
def __init__(self, parent=None):
|
|
super().__init__(parent)
|
|
|
|
self.setupUi(self)
|
|
|
|
if knnModelFile := settings.stringValue(SettingsKeys.Ocr.KnnModelFile):
|
|
self.knnModelFileValueWidget.selectFile(knnModelFile)
|
|
self.knnModelFileValueWidget.filesSelected.connect(self.setKnnModelFile)
|
|
self.knnModelFileResetButton.clicked.connect(self.resetKnnModelFile)
|
|
self.insertItem(
|
|
"knnModelFile",
|
|
self.knnModelFileLabel,
|
|
self.knnModelFileValueWidget,
|
|
self.knnModelFileResetButton,
|
|
)
|
|
|
|
if b30KnnModelFile := settings.stringValue(SettingsKeys.Ocr.B30KnnModelFile):
|
|
self.b30KnnModelFileValueWidget.selectFile(b30KnnModelFile)
|
|
self.b30KnnModelFileValueWidget.filesSelected.connect(self.setB30KnnModelFile)
|
|
self.b30KnnModelFileResetButton.clicked.connect(self.resetB30KnnModelFile)
|
|
self.insertItem(
|
|
"b30KnnModelFile",
|
|
self.b30KnnModelFileLabel,
|
|
self.b30KnnModelFileValueWidget,
|
|
self.b30KnnModelFileResetButton,
|
|
)
|
|
|
|
if phashDatabaseFile := settings.stringValue(
|
|
SettingsKeys.Ocr.PhashDatabaseFile
|
|
):
|
|
self.phashDatabaseFileValueWidget.selectFile(phashDatabaseFile)
|
|
self.phashDatabaseFileValueWidget.filesSelected.connect(
|
|
self.setPHashDatabaseFile
|
|
)
|
|
self.phashDatabaseFileResetButton.clicked.connect(self.resetPHashDatabaseFile)
|
|
self.insertItem(
|
|
"phashDatabaseFile",
|
|
self.phashDatabaseFileLabel,
|
|
self.phashDatabaseFileValueWidget,
|
|
self.phashDatabaseFileResetButton,
|
|
)
|
|
|
|
def setKnnModelFile(self):
|
|
selectedFile = self.knnModelFileValueWidget.selectedFiles()
|
|
if selectedFile and selectedFile[0]:
|
|
file = selectedFile[0]
|
|
settings.setValue(SettingsKeys.Ocr.KnnModelFile, file)
|
|
|
|
def resetKnnModelFile(self):
|
|
self.knnModelFileValueWidget.reset()
|
|
settings.setValue(SettingsKeys.Ocr.KnnModelFile, None)
|
|
|
|
def setB30KnnModelFile(self):
|
|
selectedFile = self.b30KnnModelFileValueWidget.selectedFiles()
|
|
if selectedFile and selectedFile[0]:
|
|
file = selectedFile[0]
|
|
settings.setValue(SettingsKeys.Ocr.B30KnnModelFile, file)
|
|
|
|
def resetB30KnnModelFile(self):
|
|
self.b30KnnModelFileValueWidget.reset()
|
|
settings.setValue(SettingsKeys.Ocr.B30KnnModelFile, None)
|
|
|
|
def setPHashDatabaseFile(self):
|
|
selectedFile = self.phashDatabaseFileValueWidget.selectedFiles()
|
|
if selectedFile and selectedFile[0]:
|
|
file = selectedFile[0]
|
|
settings.setValue(SettingsKeys.Ocr.PhashDatabaseFile, file)
|
|
|
|
def resetPHashDatabaseFile(self):
|
|
self.phashDatabaseFileValueWidget.reset()
|
|
settings.setValue(SettingsKeys.Ocr.PhashDatabaseFile, None)
|
|
|
|
def setupUi(self, *args):
|
|
self.knnModelFileLabel = QLabel(self)
|
|
self.knnModelFileValueWidget = FileSelector(self)
|
|
self.knnModelFileResetButton = QPushButton(self)
|
|
|
|
self.b30KnnModelFileLabel = QLabel(self)
|
|
self.b30KnnModelFileValueWidget = FileSelector(self)
|
|
self.b30KnnModelFileResetButton = QPushButton(self)
|
|
|
|
self.phashDatabaseFileLabel = QLabel(self)
|
|
self.phashDatabaseFileValueWidget = FileSelector(self)
|
|
self.phashDatabaseFileResetButton = QPushButton(self)
|
|
|
|
super().setupUi(self)
|
|
self.retranslateUi()
|
|
|
|
def retranslateUi(self, *args):
|
|
super().retranslateUi(self)
|
|
|
|
# fmt: off
|
|
self.setTitle(QCoreApplication.translate("Settings", "ocr.title"))
|
|
|
|
self.knnModelFileLabel.setText(QCoreApplication.translate("Settings", "ocr.knnModelFile.label"))
|
|
self.knnModelFileResetButton.setText(QCoreApplication.translate("Settings", "resetButton"))
|
|
|
|
self.b30KnnModelFileLabel.setText(QCoreApplication.translate("Settings", "ocr.b30KnnModelFile.label"))
|
|
self.b30KnnModelFileResetButton.setText(QCoreApplication.translate("Settings", "resetButton"))
|
|
|
|
self.phashDatabaseFileLabel.setText(QCoreApplication.translate("Settings", "ocr.phashDatabaseFile.label"))
|
|
self.phashDatabaseFileResetButton.setText(QCoreApplication.translate("Settings", "resetButton"))
|
|
# fmt: on
|