diff --git a/ui/designer/components/scoreEditor.ui b/ui/designer/components/scoreEditor.ui index 1567213..602b0c5 100644 --- a/ui/designer/components/scoreEditor.ui +++ b/ui/designer/components/scoreEditor.ui @@ -14,73 +14,33 @@ ScoreEditor - - - - setNone + + + + B9'999'999;_ - - + + + + + 0 + 0 + + - Modifier + ... Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - 100 - 0 - - - - 0 - - - 0 - - - - - - - setNone - - - true - - - - - - - PURE - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - LOST - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - setNone + + + + false @@ -97,19 +57,10 @@ - - - - - 0 - 0 - - + + - ... - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + commitButton @@ -126,6 +77,49 @@ + + + + + 100 + 0 + + + + 0 + + + 0 + + + + + + + formLabel.score + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + setNone + + + true + + + + + + + setNone + + + @@ -146,16 +140,176 @@ - - + + + + + 100 + 0 + + + + 0 + + + 0 + + + + + - MAX RECALL + idAutoInsert + + + + + + + formLabel.date Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + Modifier + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + setNone + + + true + + + + + + + setNone + + + true + + + + + + + ID + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + PURE + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + LOST + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + setNone + + + true + + + + + + + + 0 + 0 + + + + yyyy/MM/dd HH:mm:ss + + + false + + + + + + + false + + + + + + + setNone + + + + + + + setNone + + + + + + + + 100 + 0 + + + + 0 + + + 0 + + + + + + + setNone + + + + + + + warnIfIncomplete + + + @@ -178,129 +332,6 @@ - - - - false - - - - - - - - 0 - 0 - - - - yyyy/MM/dd HH:mm:ss - - - false - - - - - - - - 100 - 0 - - - - 0 - - - 0 - - - - - - - setNone - - - - - - - false - - - - - - - setNone - - - true - - - - - - - setNone - - - true - - - - - - - formLabel.date - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - commitButton - - - - - - - B9'999'999;_ - - - - - - - setNone - - - true - - - - - - - - 100 - 0 - - - - 0 - - - 0 - - - @@ -311,44 +342,42 @@ - - + + - formLabel.score + MAX RECALL Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - setNone - - - - - - - ID - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - idAutoInsert - - - - + - warnIfIncomplete + formLabel.preview + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + QLabel { color: gray } + + + None + + + true diff --git a/ui/designer/components/scoreEditor_ui.py b/ui/designer/components/scoreEditor_ui.py index 935ae6a..cbd9148 100644 --- a/ui/designer/components/scoreEditor_ui.py +++ b/ui/designer/components/scoreEditor_ui.py @@ -29,54 +29,11 @@ class Ui_ScoreEditor(object): ScoreEditor.setWindowTitle(u"ScoreEditor") self.gridLayout = QGridLayout(ScoreEditor) self.gridLayout.setObjectName(u"gridLayout") - self.pureNoneCheckBox = QCheckBox(ScoreEditor) - self.pureNoneCheckBox.setObjectName(u"pureNoneCheckBox") + self.scoreLineEdit = FocusSelectAllLineEdit(ScoreEditor) + self.scoreLineEdit.setObjectName(u"scoreLineEdit") + self.scoreLineEdit.setInputMask(u"B9'999'999;_") - self.gridLayout.addWidget(self.pureNoneCheckBox, 2, 2, 1, 1) - - self.label_7 = QLabel(ScoreEditor) - self.label_7.setObjectName(u"label_7") - self.label_7.setText(u"Modifier") - self.label_7.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - - self.gridLayout.addWidget(self.label_7, 9, 0, 1, 1) - - self.pureSpinBox = QSpinBox(ScoreEditor) - self.pureSpinBox.setObjectName(u"pureSpinBox") - self.pureSpinBox.setMinimumSize(QSize(100, 0)) - self.pureSpinBox.setMinimum(0) - self.pureSpinBox.setMaximum(0) - - self.gridLayout.addWidget(self.pureSpinBox, 2, 1, 1, 1) - - self.clearTypeNoneCheckBox = QCheckBox(ScoreEditor) - self.clearTypeNoneCheckBox.setObjectName(u"clearTypeNoneCheckBox") - self.clearTypeNoneCheckBox.setChecked(True) - - self.gridLayout.addWidget(self.clearTypeNoneCheckBox, 10, 2, 1, 1) - - self.label_2 = QLabel(ScoreEditor) - self.label_2.setObjectName(u"label_2") - self.label_2.setText(u"PURE") - self.label_2.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - - self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1) - - self.label_4 = QLabel(ScoreEditor) - self.label_4.setObjectName(u"label_4") - self.label_4.setText(u"LOST") - self.label_4.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - - self.gridLayout.addWidget(self.label_4, 4, 0, 1, 1) - - self.dateNoneCheckBox = QCheckBox(ScoreEditor) - self.dateNoneCheckBox.setObjectName(u"dateNoneCheckBox") - - self.gridLayout.addWidget(self.dateNoneCheckBox, 5, 2, 1, 1) - - self.verticalSpacer = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding) - - self.gridLayout.addItem(self.verticalSpacer, 6, 1, 1, 1) + self.gridLayout.addWidget(self.scoreLineEdit, 1, 1, 1, 1) self.validateLabel = QLabel(ScoreEditor) self.validateLabel.setObjectName(u"validateLabel") @@ -88,7 +45,22 @@ class Ui_ScoreEditor(object): self.validateLabel.setText(u"...") self.validateLabel.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - self.gridLayout.addWidget(self.validateLabel, 12, 1, 1, 1) + self.gridLayout.addWidget(self.validateLabel, 13, 1, 1, 1) + + self.commentLineEdit = QLineEdit(ScoreEditor) + self.commentLineEdit.setObjectName(u"commentLineEdit") + self.commentLineEdit.setEnabled(False) + + self.gridLayout.addWidget(self.commentLineEdit, 11, 1, 1, 1) + + self.verticalSpacer = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding) + + self.gridLayout.addItem(self.verticalSpacer, 6, 1, 1, 1) + + self.commitButton = QPushButton(ScoreEditor) + self.commitButton.setObjectName(u"commitButton") + + self.gridLayout.addWidget(self.commitButton, 13, 2, 1, 1) self.clearTypeComboBox = QComboBox(ScoreEditor) self.clearTypeComboBox.setObjectName(u"clearTypeComboBox") @@ -97,6 +69,31 @@ class Ui_ScoreEditor(object): self.gridLayout.addWidget(self.clearTypeComboBox, 10, 1, 1, 1) + self.farSpinBox = QSpinBox(ScoreEditor) + self.farSpinBox.setObjectName(u"farSpinBox") + self.farSpinBox.setMinimumSize(QSize(100, 0)) + self.farSpinBox.setMinimum(0) + self.farSpinBox.setMaximum(0) + + self.gridLayout.addWidget(self.farSpinBox, 3, 1, 1, 1) + + self.label = QLabel(ScoreEditor) + self.label.setObjectName(u"label") + self.label.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + + self.gridLayout.addWidget(self.label, 1, 0, 1, 1) + + self.commentNoneCheckBox = QCheckBox(ScoreEditor) + self.commentNoneCheckBox.setObjectName(u"commentNoneCheckBox") + self.commentNoneCheckBox.setChecked(True) + + self.gridLayout.addWidget(self.commentNoneCheckBox, 11, 2, 1, 1) + + self.farNoneCheckBox = QCheckBox(ScoreEditor) + self.farNoneCheckBox.setObjectName(u"farNoneCheckBox") + + self.gridLayout.addWidget(self.farNoneCheckBox, 3, 2, 1, 1) + self.label_8 = QLabel(ScoreEditor) self.label_8.setObjectName(u"label_8") self.label_8.setText(u"Clear Type") @@ -111,28 +108,70 @@ class Ui_ScoreEditor(object): self.gridLayout.addWidget(self.label_3, 3, 0, 1, 1) - self.label_6 = QLabel(ScoreEditor) - self.label_6.setObjectName(u"label_6") - self.label_6.setText(u"MAX RECALL") - self.label_6.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + self.lostSpinBox = QSpinBox(ScoreEditor) + self.lostSpinBox.setObjectName(u"lostSpinBox") + self.lostSpinBox.setMinimumSize(QSize(100, 0)) + self.lostSpinBox.setMinimum(0) + self.lostSpinBox.setMaximum(0) - self.gridLayout.addWidget(self.label_6, 8, 0, 1, 1) + self.gridLayout.addWidget(self.lostSpinBox, 4, 1, 1, 1) - self.maxRecallSpinBox = QSpinBox(ScoreEditor) - self.maxRecallSpinBox.setObjectName(u"maxRecallSpinBox") - self.maxRecallSpinBox.setEnabled(False) - self.maxRecallSpinBox.setMinimumSize(QSize(100, 0)) - self.maxRecallSpinBox.setMinimum(0) - self.maxRecallSpinBox.setMaximum(0) - self.maxRecallSpinBox.setValue(0) + self.idLabel = QLabel(ScoreEditor) + self.idLabel.setObjectName(u"idLabel") - self.gridLayout.addWidget(self.maxRecallSpinBox, 8, 1, 1, 1) + self.gridLayout.addWidget(self.idLabel, 0, 1, 1, 1) - self.modifierComboBox = QComboBox(ScoreEditor) - self.modifierComboBox.setObjectName(u"modifierComboBox") - self.modifierComboBox.setEnabled(False) + self.label_5 = QLabel(ScoreEditor) + self.label_5.setObjectName(u"label_5") + self.label_5.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - self.gridLayout.addWidget(self.modifierComboBox, 9, 1, 1, 1) + self.gridLayout.addWidget(self.label_5, 5, 0, 1, 1) + + self.label_7 = QLabel(ScoreEditor) + self.label_7.setObjectName(u"label_7") + self.label_7.setText(u"Modifier") + self.label_7.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + + self.gridLayout.addWidget(self.label_7, 9, 0, 1, 1) + + self.maxRecallNoneCheckBox = QCheckBox(ScoreEditor) + self.maxRecallNoneCheckBox.setObjectName(u"maxRecallNoneCheckBox") + self.maxRecallNoneCheckBox.setChecked(True) + + self.gridLayout.addWidget(self.maxRecallNoneCheckBox, 8, 2, 1, 1) + + self.clearTypeNoneCheckBox = QCheckBox(ScoreEditor) + self.clearTypeNoneCheckBox.setObjectName(u"clearTypeNoneCheckBox") + self.clearTypeNoneCheckBox.setChecked(True) + + self.gridLayout.addWidget(self.clearTypeNoneCheckBox, 10, 2, 1, 1) + + self.label_10 = QLabel(ScoreEditor) + self.label_10.setObjectName(u"label_10") + self.label_10.setText(u"ID") + self.label_10.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + + self.gridLayout.addWidget(self.label_10, 0, 0, 1, 1) + + self.label_2 = QLabel(ScoreEditor) + self.label_2.setObjectName(u"label_2") + self.label_2.setText(u"PURE") + self.label_2.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + + self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1) + + self.label_4 = QLabel(ScoreEditor) + self.label_4.setObjectName(u"label_4") + self.label_4.setText(u"LOST") + self.label_4.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + + self.gridLayout.addWidget(self.label_4, 4, 0, 1, 1) + + self.modifierNoneCheckBox = QCheckBox(ScoreEditor) + self.modifierNoneCheckBox.setObjectName(u"modifierNoneCheckBox") + self.modifierNoneCheckBox.setChecked(True) + + self.gridLayout.addWidget(self.modifierNoneCheckBox, 9, 2, 1, 1) self.dateTimeEdit = QDateTimeEdit(ScoreEditor) self.dateTimeEdit.setObjectName(u"dateTimeEdit") @@ -146,67 +185,49 @@ class Ui_ScoreEditor(object): self.gridLayout.addWidget(self.dateTimeEdit, 5, 1, 1, 1) - self.lostSpinBox = QSpinBox(ScoreEditor) - self.lostSpinBox.setObjectName(u"lostSpinBox") - self.lostSpinBox.setMinimumSize(QSize(100, 0)) - self.lostSpinBox.setMinimum(0) - self.lostSpinBox.setMaximum(0) + self.modifierComboBox = QComboBox(ScoreEditor) + self.modifierComboBox.setObjectName(u"modifierComboBox") + self.modifierComboBox.setEnabled(False) - self.gridLayout.addWidget(self.lostSpinBox, 4, 1, 1, 1) + self.gridLayout.addWidget(self.modifierComboBox, 9, 1, 1, 1) + + self.dateNoneCheckBox = QCheckBox(ScoreEditor) + self.dateNoneCheckBox.setObjectName(u"dateNoneCheckBox") + + self.gridLayout.addWidget(self.dateNoneCheckBox, 5, 2, 1, 1) + + self.pureNoneCheckBox = QCheckBox(ScoreEditor) + self.pureNoneCheckBox.setObjectName(u"pureNoneCheckBox") + + self.gridLayout.addWidget(self.pureNoneCheckBox, 2, 2, 1, 1) + + self.pureSpinBox = QSpinBox(ScoreEditor) + self.pureSpinBox.setObjectName(u"pureSpinBox") + self.pureSpinBox.setMinimumSize(QSize(100, 0)) + self.pureSpinBox.setMinimum(0) + self.pureSpinBox.setMaximum(0) + + self.gridLayout.addWidget(self.pureSpinBox, 2, 1, 1, 1) self.lostNoneCheckBox = QCheckBox(ScoreEditor) self.lostNoneCheckBox.setObjectName(u"lostNoneCheckBox") self.gridLayout.addWidget(self.lostNoneCheckBox, 4, 2, 1, 1) - self.commentLineEdit = QLineEdit(ScoreEditor) - self.commentLineEdit.setObjectName(u"commentLineEdit") - self.commentLineEdit.setEnabled(False) + self.warnIfIncompleteCheckBox = QCheckBox(ScoreEditor) + self.warnIfIncompleteCheckBox.setObjectName(u"warnIfIncompleteCheckBox") - self.gridLayout.addWidget(self.commentLineEdit, 11, 1, 1, 1) + self.gridLayout.addWidget(self.warnIfIncompleteCheckBox, 13, 0, 1, 1) - self.modifierNoneCheckBox = QCheckBox(ScoreEditor) - self.modifierNoneCheckBox.setObjectName(u"modifierNoneCheckBox") - self.modifierNoneCheckBox.setChecked(True) + self.maxRecallSpinBox = QSpinBox(ScoreEditor) + self.maxRecallSpinBox.setObjectName(u"maxRecallSpinBox") + self.maxRecallSpinBox.setEnabled(False) + self.maxRecallSpinBox.setMinimumSize(QSize(100, 0)) + self.maxRecallSpinBox.setMinimum(0) + self.maxRecallSpinBox.setMaximum(0) + self.maxRecallSpinBox.setValue(0) - self.gridLayout.addWidget(self.modifierNoneCheckBox, 9, 2, 1, 1) - - self.commentNoneCheckBox = QCheckBox(ScoreEditor) - self.commentNoneCheckBox.setObjectName(u"commentNoneCheckBox") - self.commentNoneCheckBox.setChecked(True) - - self.gridLayout.addWidget(self.commentNoneCheckBox, 11, 2, 1, 1) - - self.label_5 = QLabel(ScoreEditor) - self.label_5.setObjectName(u"label_5") - self.label_5.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - - self.gridLayout.addWidget(self.label_5, 5, 0, 1, 1) - - self.commitButton = QPushButton(ScoreEditor) - self.commitButton.setObjectName(u"commitButton") - - self.gridLayout.addWidget(self.commitButton, 12, 2, 1, 1) - - self.scoreLineEdit = FocusSelectAllLineEdit(ScoreEditor) - self.scoreLineEdit.setObjectName(u"scoreLineEdit") - self.scoreLineEdit.setInputMask(u"B9'999'999;_") - - self.gridLayout.addWidget(self.scoreLineEdit, 1, 1, 1, 1) - - self.maxRecallNoneCheckBox = QCheckBox(ScoreEditor) - self.maxRecallNoneCheckBox.setObjectName(u"maxRecallNoneCheckBox") - self.maxRecallNoneCheckBox.setChecked(True) - - self.gridLayout.addWidget(self.maxRecallNoneCheckBox, 8, 2, 1, 1) - - self.farSpinBox = QSpinBox(ScoreEditor) - self.farSpinBox.setObjectName(u"farSpinBox") - self.farSpinBox.setMinimumSize(QSize(100, 0)) - self.farSpinBox.setMinimum(0) - self.farSpinBox.setMaximum(0) - - self.gridLayout.addWidget(self.farSpinBox, 3, 1, 1, 1) + self.gridLayout.addWidget(self.maxRecallSpinBox, 8, 1, 1, 1) self.label_9 = QLabel(ScoreEditor) self.label_9.setObjectName(u"label_9") @@ -214,33 +235,31 @@ class Ui_ScoreEditor(object): self.gridLayout.addWidget(self.label_9, 11, 0, 1, 1) - self.label = QLabel(ScoreEditor) - self.label.setObjectName(u"label") - self.label.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + self.label_6 = QLabel(ScoreEditor) + self.label_6.setObjectName(u"label_6") + self.label_6.setText(u"MAX RECALL") + self.label_6.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - self.gridLayout.addWidget(self.label, 1, 0, 1, 1) + self.gridLayout.addWidget(self.label_6, 8, 0, 1, 1) - self.farNoneCheckBox = QCheckBox(ScoreEditor) - self.farNoneCheckBox.setObjectName(u"farNoneCheckBox") + self.label_11 = QLabel(ScoreEditor) + self.label_11.setObjectName(u"label_11") + self.label_11.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) - self.gridLayout.addWidget(self.farNoneCheckBox, 3, 2, 1, 1) + self.gridLayout.addWidget(self.label_11, 12, 0, 1, 1) - self.label_10 = QLabel(ScoreEditor) - self.label_10.setObjectName(u"label_10") - self.label_10.setText(u"ID") - self.label_10.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + self.previewLabel = QLabel(ScoreEditor) + self.previewLabel.setObjectName(u"previewLabel") + sizePolicy2 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Minimum) + sizePolicy2.setHorizontalStretch(0) + sizePolicy2.setVerticalStretch(0) + sizePolicy2.setHeightForWidth(self.previewLabel.sizePolicy().hasHeightForWidth()) + self.previewLabel.setSizePolicy(sizePolicy2) + self.previewLabel.setStyleSheet(u"QLabel { color: gray }") + self.previewLabel.setText(u"None") + self.previewLabel.setWordWrap(True) - self.gridLayout.addWidget(self.label_10, 0, 0, 1, 1) - - self.idLabel = QLabel(ScoreEditor) - self.idLabel.setObjectName(u"idLabel") - - self.gridLayout.addWidget(self.idLabel, 0, 1, 1, 1) - - self.warnIfIncompleteCheckBox = QCheckBox(ScoreEditor) - self.warnIfIncompleteCheckBox.setObjectName(u"warnIfIncompleteCheckBox") - - self.gridLayout.addWidget(self.warnIfIncompleteCheckBox, 12, 0, 1, 1) + self.gridLayout.addWidget(self.previewLabel, 12, 1, 1, 1) QWidget.setTabOrder(self.scoreLineEdit, self.pureSpinBox) QWidget.setTabOrder(self.pureSpinBox, self.pureNoneCheckBox) @@ -274,20 +293,21 @@ class Ui_ScoreEditor(object): # setupUi def retranslateUi(self, ScoreEditor): - self.pureNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) - self.clearTypeNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) - self.dateNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) - self.lostNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) - self.modifierNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) - self.commentNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) - self.label_5.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.date", None)) self.commitButton.setText(QCoreApplication.translate("ScoreEditor", u"commitButton", None)) - self.maxRecallNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) - self.label_9.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.comment", None)) self.label.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.score", None)) + self.commentNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) self.farNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) self.idLabel.setText(QCoreApplication.translate("ScoreEditor", u"idAutoInsert", None)) + self.label_5.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.date", None)) + self.maxRecallNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) + self.clearTypeNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) + self.modifierNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) + self.dateNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) + self.pureNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) + self.lostNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) self.warnIfIncompleteCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"warnIfIncomplete", None)) + self.label_9.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.comment", None)) + self.label_11.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.preview", None)) pass # retranslateUi diff --git a/ui/implements/components/scoreEditor.py b/ui/implements/components/scoreEditor.py index 6a6aa19..dad5946 100644 --- a/ui/implements/components/scoreEditor.py +++ b/ui/implements/components/scoreEditor.py @@ -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("
".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): diff --git a/ui/resources/lang/en_US.ts b/ui/resources/lang/en_US.ts index d4d3b5a..dba7fe2 100644 --- a/ui/resources/lang/en_US.ts +++ b/ui/resources/lang/en_US.ts @@ -314,49 +314,54 @@ validation ScoreEditor - - - - - - - - + + + + + + + + setNone None - + formLabel.date Time - + formLabel.comment Comment - + + formLabel.preview + Preview + + + formLabel.score Score - + idAutoInsert (Auto insert) - + warnIfIncomplete Warn if incomplete - + commitButton Commit - + validate.ok OK @@ -401,57 +406,57 @@ validation Cannot verify an incomplete score. Commit anyway? - + confirmDialog.chartNotSet.title Chart not set - + confirmDialog.chartNotSet.text Chart not set, cannot commit. - + confirmDialog.scoreIncomplete.title Score incomplete - + confirmDialog.scoreIncomplete.text Necessary score field missing, cannot commit. - + validate.chartNotSet Chart not set - + validate.chartIncomple No chart data, cannot verify - + validate.scoreMismatch Possible invalid score - + validate.scoreEmpty Empty score - + validate.scoreIncomplete Missing necessary score field - + validate.scoreIncompleteForValidate Score incomplete, cannot verify - + validate.unknownState Unknown diff --git a/ui/resources/lang/zh_CN.ts b/ui/resources/lang/zh_CN.ts index a5c7b0f..a013f40 100644 --- a/ui/resources/lang/zh_CN.ts +++ b/ui/resources/lang/zh_CN.ts @@ -313,49 +313,54 @@ ScoreEditor - - - - - - - - + + + + + + + + setNone 置空 - + formLabel.date 时间 - + formLabel.comment 注释 - + + formLabel.preview + 预览 + + + formLabel.score 分数 - + idAutoInsert (自动插入) - + warnIfIncomplete 不完整时要求确认 - + commitButton 提交 - + validate.ok OK @@ -400,57 +405,57 @@ 无法验证不完整的分数。继续提交吗? - + confirmDialog.chartNotSet.title 未指定谱面 - + confirmDialog.chartNotSet.text 未指定谱面,无法提交。 - + confirmDialog.scoreIncomplete.title 分数不完整 - + confirmDialog.scoreIncomplete.text 缺失必要的分数数据,无法提交。 - + validate.chartNotSet 未指定谱面 - + validate.chartIncomple 谱面数据缺失,无法验证分数 - + validate.scoreMismatch 分数可能有误 - + validate.scoreEmpty 分数为空 - + validate.scoreIncomplete 缺失必要分数数据 - + validate.scoreIncompleteForValidate 分数不完整,无法验证 - + validate.unknownState 未知