impr: ScoreEditor preview label

This commit is contained in:
2023-09-21 10:35:08 +08:00
parent fba2a5fd3e
commit 7a0e476a1d
5 changed files with 496 additions and 423 deletions

View File

@ -135,6 +135,8 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
self.dateTimeEdit.setDateTime(QDateTime.currentDateTime())
self.valueChanged.connect(self.updatePreviewLabel)
def retranslateUi(self, *args):
super().retranslateUi(self)
@ -145,6 +147,17 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
item.title = titleCallable()
item.text = textCallable()
def updatePreviewLabel(self):
if score := self.value():
texts = [
f"({score.song_id}, {score.rating_class}), Score {score.score}",
f"PURE {score.pure}, FAR {score.far}, LOST {score.lost}, MR {score.max_recall}",
f"Date {score.date}, Clear type {score.clear_type}, Modifier {score.modifier}",
]
self.previewLabel.setText("<br>".join(texts))
else:
self.previewLabel.setText("None")
def validateBeforeAccept(self):
return self.__validateBeforeAccept
@ -267,6 +280,7 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
self.__chart = None
self.resetLimits()
self.updateValidateLabel()
self.updatePreviewLabel()
def validateScore(self) -> ScoreValidateResult:
if not isinstance(self.__chart, Chart):