mirror of
https://github.com/283375/arcaea-offline-pyside-ui.git
synced 2025-04-18 16:50:17 +00:00
impr: realtime language switch
This commit is contained in:
parent
2be39d6bb3
commit
8c90c27ba3
@ -2,6 +2,7 @@ from PySide6.QtCore import Signal
|
||||
from PySide6.QtWidgets import QWidget
|
||||
|
||||
from ui.designer.components.chartAndScoreInput_ui import Ui_ChartAndScoreInput
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.implements.components.songIdSelector import SongIdSelectorMode
|
||||
|
||||
|
||||
@ -12,6 +13,9 @@ class ChartAndScoreInput(Ui_ChartAndScoreInput, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.chartSelector.valueChanged.connect(self.updateScoreEditorChart)
|
||||
self.scoreEditor.accepted.connect(self.commit)
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
from PySide6.QtCore import QCoreApplication, Qt
|
||||
from PySide6.QtCore import Qt
|
||||
from PySide6.QtWidgets import QLabel, QPushButton, QWidget
|
||||
|
||||
from ui.designer.settings.settingsBaseWidget_ui import Ui_SettingsBaseWidget
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.extends.shared.settings import Settings
|
||||
|
||||
|
||||
@ -10,6 +11,9 @@ class SettingsBaseWidget(Ui_SettingsBaseWidget, QWidget):
|
||||
super().__init__(parent)
|
||||
self.settings = Settings()
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
def setTitle(self, title: str):
|
||||
self.titleLabel.setText(title)
|
||||
|
||||
|
@ -3,6 +3,7 @@ from PySide6.QtGui import QPixmap
|
||||
from PySide6.QtWidgets import QMessageBox, QWidget
|
||||
|
||||
from ui.designer.tabs.tabAbout_ui import Ui_TabAbout
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
|
||||
|
||||
class TabAbout(Ui_TabAbout, QWidget):
|
||||
@ -10,6 +11,9 @@ class TabAbout(Ui_TabAbout, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
logoPixmap = QPixmap(":/images/logo.png").scaled(
|
||||
300,
|
||||
300,
|
||||
|
@ -4,6 +4,7 @@ from PySide6.QtWidgets import QMessageBox
|
||||
|
||||
from ui.extends.shared.delegates.chartDelegate import ChartDelegate
|
||||
from ui.extends.shared.delegates.scoreDelegate import ScoreDelegate
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.extends.shared.models.tables.b30 import (
|
||||
DbB30TableModel,
|
||||
DbB30TableSortFilterProxyModel,
|
||||
@ -34,6 +35,10 @@ class TableScoreDelegate(ScoreDelegate):
|
||||
class DbB30TableViewer(DbTableViewer):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.tableView.verticalHeader().setVisible(True)
|
||||
|
||||
self.tableModel = DbB30TableModel(self)
|
||||
|
@ -18,6 +18,7 @@ from PySide6.QtWidgets import QFileDialog, QMessageBox, QWidget
|
||||
|
||||
from ui.designer.tabs.tabDb.tabDb_Manage_ui import Ui_TabDb_Manage
|
||||
from ui.extends.shared.database import databaseUpdateSignals
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@ -27,6 +28,9 @@ class TabDb_Manage(Ui_TabDb_Manage, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
@Slot()
|
||||
def on_syncArcSongDbButton_clicked(self):
|
||||
dbFile, filter = QFileDialog.getOpenFileName(
|
||||
|
@ -5,6 +5,7 @@ from PySide6.QtWidgets import QMessageBox
|
||||
|
||||
from ui.extends.shared.delegates.chartDelegate import ChartDelegate
|
||||
from ui.extends.shared.delegates.scoreDelegate import ScoreDelegate
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.extends.shared.models.tables.score import (
|
||||
DbScoreTableModel,
|
||||
DbScoreTableSortFilterProxyModel,
|
||||
@ -33,6 +34,9 @@ class DbScoreTableViewer(DbTableViewer):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.tableModel = DbScoreTableModel(self)
|
||||
self.tableProxyModel = DbScoreTableSortFilterProxyModel(self)
|
||||
self.tableProxyModel.setSourceModel(self.tableModel)
|
||||
|
@ -2,6 +2,7 @@ from PySide6.QtCore import QCoreApplication
|
||||
from PySide6.QtWidgets import QWidget
|
||||
|
||||
from ui.designer.tabs.tabDbEntry_ui import Ui_TabDbEntry
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.implements.tabs.tabDb.tabDb_B30TableViewer import DbB30TableViewer
|
||||
from ui.implements.tabs.tabDb.tabDb_ScoreTableViewer import DbScoreTableViewer
|
||||
|
||||
@ -11,6 +12,9 @@ class TabDbEntry(Ui_TabDbEntry, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.tabWidget.addTab(
|
||||
DbScoreTableViewer(self),
|
||||
QCoreApplication.translate("TabDbEntry", "tab.scoreTableViewer"),
|
||||
|
@ -2,12 +2,17 @@ from arcaea_offline.database import Database
|
||||
from PySide6.QtWidgets import QWidget
|
||||
|
||||
from ui.designer.tabs.tabInputScore_ui import Ui_TabInputScore
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
|
||||
|
||||
class TabInputScore(Ui_TabInputScore, QWidget):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.chartAndScoreInput.scoreCommited.connect(self.commit)
|
||||
|
||||
def commit(self):
|
||||
|
@ -1,5 +1,4 @@
|
||||
import logging
|
||||
from pathlib import Path
|
||||
|
||||
import cv2
|
||||
from arcaea_offline_ocr.b30.chieri.v4.ocr import ChieriBotV4Ocr
|
||||
@ -11,6 +10,7 @@ from PySide6.QtWidgets import QWidget
|
||||
from ui.designer.tabs.tabOcr.tabOcr_B30_ui import Ui_TabOcr_B30
|
||||
from ui.extends.components.ocrQueue import OcrQueueModel
|
||||
from ui.extends.shared.cv2_utils import cv2BgrMatToQImage, qImageToCvMatBgr
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.extends.shared.settings import KNN_MODEL_FILE, SIFT_DATABASE_FILE, Settings
|
||||
from ui.extends.tabs.tabOcr.tabOcr_B30 import ChieriV4OcrRunnable, b30ResultToScore
|
||||
|
||||
@ -24,6 +24,9 @@ class TabOcr_B30(Ui_TabOcr_B30, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.b30TypeComboBox.addItem("ChieriV4", "chieri_v4")
|
||||
self.b30TypeComboBox.setCurrentIndex(0)
|
||||
self.b30TypeComboBox.setEnabled(False)
|
||||
|
@ -11,6 +11,7 @@ from PySide6.QtWidgets import QApplication, QFileDialog, QWidget
|
||||
|
||||
from ui.designer.tabs.tabOcr.tabOcr_Device_ui import Ui_TabOcr_Device
|
||||
from ui.extends.components.ocrQueue import OcrQueueModel
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.extends.shared.settings import (
|
||||
DEVICES_JSON_FILE,
|
||||
KNN_MODEL_FILE,
|
||||
@ -32,6 +33,9 @@ class TabOcr_Device(Ui_TabOcr_Device, QWidget):
|
||||
self.setupUi(self)
|
||||
self.openWizardButton.setEnabled(False)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.deviceFileSelector.filesSelected.connect(self.deviceFileSelected)
|
||||
self.knnModelSelector.filesSelected.connect(self.knnModelFileSelected)
|
||||
self.siftDatabaseSelector.filesSelected.connect(self.siftDatabaseFileSelected)
|
||||
|
@ -1,9 +1,13 @@
|
||||
from PySide6.QtWidgets import QWidget
|
||||
|
||||
from ui.designer.tabs.tabOcrEntry_ui import Ui_TabOcrEntry
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
|
||||
|
||||
class TabOcrEntry(Ui_TabOcrEntry, QWidget):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
@ -3,6 +3,7 @@ from PySide6.QtGui import QShowEvent
|
||||
from PySide6.QtWidgets import QWidget
|
||||
|
||||
from ui.designer.tabs.tabOverview_ui import Ui_TabOverview
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
|
||||
|
||||
class TabOverview(Ui_TabOverview, QWidget):
|
||||
@ -10,6 +11,9 @@ class TabOverview(Ui_TabOverview, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.db = Database()
|
||||
# self.db.register_update_hook(self.updateOverview)
|
||||
# self.updateOverview()
|
||||
|
@ -21,6 +21,7 @@ from PySide6.QtWidgets import (
|
||||
)
|
||||
|
||||
from ui.designer.tabs.tabTools.tabTools_Andreal_ui import Ui_TabTools_Andreal
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.extends.shared.settings import ANDREAL_EXECUTABLE, ANDREAL_FOLDER
|
||||
from ui.extends.tabs.tabTools.tabTools_Andreal import AndrealHelper
|
||||
from ui.implements.components.chartSelector import ChartSelector
|
||||
@ -95,6 +96,9 @@ class TabTools_Andreal(Ui_TabTools_Andreal, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.db = Database()
|
||||
|
||||
self.andrealHelper = AndrealHelper(self)
|
||||
|
@ -5,6 +5,7 @@ from PySide6.QtCore import QDateTime
|
||||
from PySide6.QtWidgets import QVBoxLayout, QWidget
|
||||
|
||||
from ui.designer.tabs.tabTools.tabTools_InfoLookup_ui import Ui_TabTools_InfoLookup
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
|
||||
|
||||
class TabTools_InfoLookup(Ui_TabTools_InfoLookup, QWidget):
|
||||
@ -12,6 +13,9 @@ class TabTools_InfoLookup(Ui_TabTools_InfoLookup, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.ratingClassSelector.setLayout(QVBoxLayout)
|
||||
|
||||
self.db = Database()
|
||||
|
@ -29,6 +29,7 @@ from PySide6.QtWidgets import (
|
||||
from ui.designer.tabs.tabTools.tabTools_StepCalculator_ui import (
|
||||
Ui_TabTools_StepCalculator,
|
||||
)
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
from ui.implements.components.chartAndScoreInput import ChartAndScoreInput
|
||||
from ui.implements.components.songIdSelector import SongIdSelectorMode
|
||||
|
||||
@ -90,6 +91,9 @@ class TabTools_StepCalculator(Ui_TabTools_StepCalculator, QWidget):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
||||
self.calculate_toStep_calculatePlayResultFromScoreButton.clicked.connect(
|
||||
self.openChartAndScoreInputDialog
|
||||
)
|
||||
|
@ -1,9 +1,13 @@
|
||||
from PySide6.QtWidgets import QWidget
|
||||
|
||||
from ui.designer.tabs.tabToolsEntry_ui import Ui_TabToolsEntry
|
||||
from ui.extends.shared.language import LanguageChangeEventFilter
|
||||
|
||||
|
||||
class TabToolsEntry(Ui_TabToolsEntry, QWidget):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.languageChangeEventFilter = LanguageChangeEventFilter(self)
|
||||
self.installEventFilter(self.languageChangeEventFilter)
|
||||
|
Loading…
x
Reference in New Issue
Block a user