diff --git a/ui/designer/tabs/tabOverview.ui b/ui/designer/tabs/tabOverview.ui
index 358ec4c..d296c37 100644
--- a/ui/designer/tabs/tabOverview.ui
+++ b/ui/designer/tabs/tabOverview.ui
@@ -17,6 +17,13 @@
-
+ -
+
+
+ databaseDescribeLabel {} {} {} {} {} {}
+
+
+
-
diff --git a/ui/designer/tabs/tabOverview_ui.py b/ui/designer/tabs/tabOverview_ui.py
index 5881001..343afdb 100644
--- a/ui/designer/tabs/tabOverview_ui.py
+++ b/ui/designer/tabs/tabOverview_ui.py
@@ -1,108 +1,114 @@
-# -*- coding: utf-8 -*-
-
-################################################################################
-## Form generated from reading UI file 'tabOverview.ui'
-##
-## Created by: Qt User Interface Compiler version 6.5.0
-##
-## WARNING! All changes made in this file will be lost when recompiling UI file!
-################################################################################
-
-from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
- QMetaObject, QObject, QPoint, QRect,
- QSize, QTime, QUrl, Qt)
-from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
- QFont, QFontDatabase, QGradient, QIcon,
- QImage, QKeySequence, QLinearGradient, QPainter,
- QPalette, QPixmap, QRadialGradient, QTransform)
-from PySide6.QtWidgets import (QApplication, QHBoxLayout, QLabel, QSizePolicy,
- QVBoxLayout, QWidget)
-
-class Ui_TabOverview(object):
- def setupUi(self, TabOverview):
- if not TabOverview.objectName():
- TabOverview.setObjectName(u"TabOverview")
- TabOverview.resize(696, 509)
- TabOverview.setWindowTitle(u"TabOverview")
- self.verticalLayout = QVBoxLayout(TabOverview)
- self.verticalLayout.setObjectName(u"verticalLayout")
- self.widget = QWidget(TabOverview)
- self.widget.setObjectName(u"widget")
-
- self.verticalLayout.addWidget(self.widget)
-
- self.widget_2 = QWidget(TabOverview)
- self.widget_2.setObjectName(u"widget_2")
- sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding)
- sizePolicy.setHorizontalStretch(0)
- sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.widget_2.sizePolicy().hasHeightForWidth())
- self.widget_2.setSizePolicy(sizePolicy)
- self.horizontalLayout = QHBoxLayout(self.widget_2)
- self.horizontalLayout.setObjectName(u"horizontalLayout")
- self.widget_3 = QWidget(self.widget_2)
- self.widget_3.setObjectName(u"widget_3")
- self.verticalLayout_2 = QVBoxLayout(self.widget_3)
- self.verticalLayout_2.setObjectName(u"verticalLayout_2")
- self.b30Label = QLabel(self.widget_3)
- self.b30Label.setObjectName(u"b30Label")
- font = QFont()
- font.setPointSize(30)
- self.b30Label.setFont(font)
- self.b30Label.setText(u"0.00")
- self.b30Label.setAlignment(Qt.AlignBottom|Qt.AlignHCenter)
-
- self.verticalLayout_2.addWidget(self.b30Label)
-
- self.label_2 = QLabel(self.widget_3)
- self.label_2.setObjectName(u"label_2")
- font1 = QFont()
- font1.setPointSize(20)
- self.label_2.setFont(font1)
- self.label_2.setText(u"B30")
- self.label_2.setAlignment(Qt.AlignHCenter|Qt.AlignTop)
-
- self.verticalLayout_2.addWidget(self.label_2)
-
-
- self.horizontalLayout.addWidget(self.widget_3)
-
- self.widget_4 = QWidget(self.widget_2)
- self.widget_4.setObjectName(u"widget_4")
- self.widget_4.setEnabled(False)
- self.verticalLayout_3 = QVBoxLayout(self.widget_4)
- self.verticalLayout_3.setObjectName(u"verticalLayout_3")
- self.r10Label = QLabel(self.widget_4)
- self.r10Label.setObjectName(u"r10Label")
- self.r10Label.setEnabled(False)
- self.r10Label.setFont(font)
- self.r10Label.setText(u"--")
- self.r10Label.setAlignment(Qt.AlignBottom|Qt.AlignHCenter)
-
- self.verticalLayout_3.addWidget(self.r10Label)
-
- self.label_4 = QLabel(self.widget_4)
- self.label_4.setObjectName(u"label_4")
- self.label_4.setEnabled(False)
- self.label_4.setFont(font1)
- self.label_4.setText(u"R10")
- self.label_4.setAlignment(Qt.AlignHCenter|Qt.AlignTop)
-
- self.verticalLayout_3.addWidget(self.label_4)
-
-
- self.horizontalLayout.addWidget(self.widget_4)
-
-
- self.verticalLayout.addWidget(self.widget_2)
-
-
- self.retranslateUi(TabOverview)
-
- QMetaObject.connectSlotsByName(TabOverview)
- # setupUi
-
- def retranslateUi(self, TabOverview):
- pass
- # retranslateUi
-
+# -*- coding: utf-8 -*-
+
+################################################################################
+## Form generated from reading UI file 'tabOverview.ui'
+##
+## Created by: Qt User Interface Compiler version 6.5.2
+##
+## WARNING! All changes made in this file will be lost when recompiling UI file!
+################################################################################
+
+from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
+ QMetaObject, QObject, QPoint, QRect,
+ QSize, QTime, QUrl, Qt)
+from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
+ QFont, QFontDatabase, QGradient, QIcon,
+ QImage, QKeySequence, QLinearGradient, QPainter,
+ QPalette, QPixmap, QRadialGradient, QTransform)
+from PySide6.QtWidgets import (QApplication, QHBoxLayout, QLabel, QSizePolicy,
+ QVBoxLayout, QWidget)
+
+class Ui_TabOverview(object):
+ def setupUi(self, TabOverview):
+ if not TabOverview.objectName():
+ TabOverview.setObjectName(u"TabOverview")
+ TabOverview.resize(696, 509)
+ TabOverview.setWindowTitle(u"TabOverview")
+ self.verticalLayout = QVBoxLayout(TabOverview)
+ self.verticalLayout.setObjectName(u"verticalLayout")
+ self.widget = QWidget(TabOverview)
+ self.widget.setObjectName(u"widget")
+
+ self.verticalLayout.addWidget(self.widget)
+
+ self.databaseDescribeLabel = QLabel(TabOverview)
+ self.databaseDescribeLabel.setObjectName(u"databaseDescribeLabel")
+
+ self.verticalLayout.addWidget(self.databaseDescribeLabel)
+
+ self.widget_2 = QWidget(TabOverview)
+ self.widget_2.setObjectName(u"widget_2")
+ sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.widget_2.sizePolicy().hasHeightForWidth())
+ self.widget_2.setSizePolicy(sizePolicy)
+ self.horizontalLayout = QHBoxLayout(self.widget_2)
+ self.horizontalLayout.setObjectName(u"horizontalLayout")
+ self.widget_3 = QWidget(self.widget_2)
+ self.widget_3.setObjectName(u"widget_3")
+ self.verticalLayout_2 = QVBoxLayout(self.widget_3)
+ self.verticalLayout_2.setObjectName(u"verticalLayout_2")
+ self.b30Label = QLabel(self.widget_3)
+ self.b30Label.setObjectName(u"b30Label")
+ font = QFont()
+ font.setPointSize(30)
+ self.b30Label.setFont(font)
+ self.b30Label.setText(u"0.00")
+ self.b30Label.setAlignment(Qt.AlignBottom|Qt.AlignHCenter)
+
+ self.verticalLayout_2.addWidget(self.b30Label)
+
+ self.label_2 = QLabel(self.widget_3)
+ self.label_2.setObjectName(u"label_2")
+ font1 = QFont()
+ font1.setPointSize(20)
+ self.label_2.setFont(font1)
+ self.label_2.setText(u"B30")
+ self.label_2.setAlignment(Qt.AlignHCenter|Qt.AlignTop)
+
+ self.verticalLayout_2.addWidget(self.label_2)
+
+
+ self.horizontalLayout.addWidget(self.widget_3)
+
+ self.widget_4 = QWidget(self.widget_2)
+ self.widget_4.setObjectName(u"widget_4")
+ self.widget_4.setEnabled(False)
+ self.verticalLayout_3 = QVBoxLayout(self.widget_4)
+ self.verticalLayout_3.setObjectName(u"verticalLayout_3")
+ self.r10Label = QLabel(self.widget_4)
+ self.r10Label.setObjectName(u"r10Label")
+ self.r10Label.setEnabled(False)
+ self.r10Label.setFont(font)
+ self.r10Label.setText(u"--")
+ self.r10Label.setAlignment(Qt.AlignBottom|Qt.AlignHCenter)
+
+ self.verticalLayout_3.addWidget(self.r10Label)
+
+ self.label_4 = QLabel(self.widget_4)
+ self.label_4.setObjectName(u"label_4")
+ self.label_4.setEnabled(False)
+ self.label_4.setFont(font1)
+ self.label_4.setText(u"R10")
+ self.label_4.setAlignment(Qt.AlignHCenter|Qt.AlignTop)
+
+ self.verticalLayout_3.addWidget(self.label_4)
+
+
+ self.horizontalLayout.addWidget(self.widget_4)
+
+
+ self.verticalLayout.addWidget(self.widget_2)
+
+
+ self.retranslateUi(TabOverview)
+
+ QMetaObject.connectSlotsByName(TabOverview)
+ # setupUi
+
+ def retranslateUi(self, TabOverview):
+ self.databaseDescribeLabel.setText(QCoreApplication.translate("TabOverview", u"databaseDescribeLabel {} {} {} {} {} {}", None))
+ pass
+ # retranslateUi
+
diff --git a/ui/implements/tabs/tabOverview.py b/ui/implements/tabs/tabOverview.py
index 757f106..c68b7b6 100644
--- a/ui/implements/tabs/tabOverview.py
+++ b/ui/implements/tabs/tabOverview.py
@@ -21,3 +21,18 @@ class TabOverview(Ui_TabOverview, QWidget):
def updateOverview(self):
b30 = self.db.get_b30() or 0.00
self.b30Label.setText(str(f"{b30:.3f}"))
+ self.retranslateUi(self)
+
+ def retranslateUi(self, *args):
+ super().retranslateUi(self)
+ db = Database()
+ describeText = self.databaseDescribeLabel.text()
+ describeText = describeText.format(
+ db.count_packs(),
+ db.count_songs(),
+ db.count_difficulties(),
+ db.count_chart_infos(),
+ db.count_complete_chart_infos(),
+ db.count_scores(),
+ )
+ self.databaseDescribeLabel.setText(describeText)
diff --git a/ui/resources/lang/en_US.ts b/ui/resources/lang/en_US.ts
index d8c949f..97322e1 100644
--- a/ui/resources/lang/en_US.ts
+++ b/ui/resources/lang/en_US.ts
@@ -749,6 +749,15 @@ validation
Select Image SIFT Database
+
+ TabOverview
+
+
+ databaseDescribeLabel {} {} {} {} {} {}
+ This database now have {} packs, {} songs, {} difficulties, {} chart info ({} complete) and {} scores.
+ This database now have {} packs, {} songs, {} difficulties, {} chart info ({} complete) and {} scores.
+
+
TabToolsEntry
@@ -933,107 +942,107 @@ validation
TabTools_StepCalculator
-
+
legacyPlay.noOptions
No options
-
+
legacyPlayPlus.useFragments
Use Fragments
-
+
play.memoryBoost
Memory boost
-
+
partner.title
Partner
-
+
partner.stepValueLabel
STEP value
-
+
partner.skill.title
Partner Skill
-
+
partner.skill.stepBonus
Step bonus
-
+
partner.skill.finalMultiplier
Final multiplier
-
+
partner.skill.presets
Preset Datas
-
+
partner.skill.presets.awakenedEto
Eto (Awakened)
-
+
partner.skill.presets.awakenedIlith
Ilith (Awakened)
-
+
partner.skill.presets.awakenedLuna
Luna (Awakened)
-
+
partner.skill.presets.amaneBelowEx
Amane (Below EX)
-
+
partner.skill.presets.maya
Maya
-
+
calculate.toStep
Calculate to Step
-
+
calculate.toStep.playResultLabel
Play result
-
+
calculate.toStep.calculatePlayResultFromScoreButton
Calculate from Score
-
+
calculate.toStep.resultLabel
Result
-
+
calculate.fromStep
Calculate from Step
-
+
calculate.fromStep.targetStepLabel
Target step value
-
+
calculate.fromStep.resultLabel
Result (play rating)
diff --git a/ui/resources/lang/zh_CN.ts b/ui/resources/lang/zh_CN.ts
index 3a96d3f..a0171f9 100644
--- a/ui/resources/lang/zh_CN.ts
+++ b/ui/resources/lang/zh_CN.ts
@@ -748,6 +748,15 @@
选择图像 SIFT 特征值数据库
+
+ TabOverview
+
+
+ databaseDescribeLabel {} {} {} {} {} {}
+ This database now have {} packs, {} songs, {} difficulties, {} chart info ({} complete) and {} scores.
+ 数据库中有 {} 个曲包,{} 首歌曲,{} 个难度,{} 个谱面信息({} 个完整),{} 个分数记录。
+
+
TabToolsEntry
@@ -932,107 +941,107 @@
TabTools_StepCalculator
-
+
legacyPlay.noOptions
没有选项
-
+
legacyPlayPlus.useFragments
使用残片
-
+
play.memoryBoost
源韵强化
-
+
partner.title
搭档
-
+
partner.stepValueLabel
STEP 值
-
+
partner.skill.title
搭档技能
-
+
partner.skill.stepBonus
步数加成
-
+
partner.skill.finalMultiplier
最终乘算
-
+
partner.skill.presets
预置数据
-
+
partner.skill.presets.awakenedEto
爱托(觉醒)
-
+
partner.skill.presets.awakenedIlith
依莉丝(觉醒)
-
+
partner.skill.presets.awakenedLuna
露娜(觉醒)
-
+
partner.skill.presets.amaneBelowEx
天音(EX 以下)
-
+
partner.skill.presets.maya
摩耶
-
+
calculate.toStep
正算
-
+
calculate.toStep.playResultLabel
单曲 PTT
-
+
calculate.toStep.calculatePlayResultFromScoreButton
从分数计算
-
+
calculate.toStep.resultLabel
结果
-
+
calculate.fromStep
逆算
-
+
calculate.fromStep.targetStepLabel
目标 STEP 值
-
+
calculate.fromStep.resultLabel
结果(单曲 PTT)