res: translations update

This commit is contained in:
283375 2023-09-06 00:23:26 +08:00
parent 91235820c9
commit 0c55266896
7 changed files with 618 additions and 202 deletions

View File

@ -191,7 +191,7 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="displayFormat"> <property name="displayFormat">
<string>yyyy/M/d HH:mm:ss</string> <string notr="true">yyyy/MM/dd HH:mm:ss</string>
</property> </property>
<property name="calendarPopup"> <property name="calendarPopup">
<bool>false</bool> <bool>false</bool>
@ -322,7 +322,7 @@
<item row="0" column="0"> <item row="0" column="0">
<widget class="QLabel" name="label_10"> <widget class="QLabel" name="label_10">
<property name="text"> <property name="text">
<string>ID</string> <string notr="true">ID</string>
</property> </property>
<property name="alignment"> <property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>

View File

@ -140,6 +140,7 @@ class Ui_ScoreEditor(object):
sizePolicy1.setVerticalStretch(0) sizePolicy1.setVerticalStretch(0)
sizePolicy1.setHeightForWidth(self.dateTimeEdit.sizePolicy().hasHeightForWidth()) sizePolicy1.setHeightForWidth(self.dateTimeEdit.sizePolicy().hasHeightForWidth())
self.dateTimeEdit.setSizePolicy(sizePolicy1) self.dateTimeEdit.setSizePolicy(sizePolicy1)
self.dateTimeEdit.setDisplayFormat(u"yyyy/MM/dd HH:mm:ss")
self.dateTimeEdit.setCalendarPopup(False) self.dateTimeEdit.setCalendarPopup(False)
self.gridLayout.addWidget(self.dateTimeEdit, 5, 1, 1, 1) self.gridLayout.addWidget(self.dateTimeEdit, 5, 1, 1, 1)
@ -223,6 +224,7 @@ class Ui_ScoreEditor(object):
self.label_10 = QLabel(ScoreEditor) self.label_10 = QLabel(ScoreEditor)
self.label_10.setObjectName(u"label_10") self.label_10.setObjectName(u"label_10")
self.label_10.setText(u"ID")
self.label_10.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_10.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
self.gridLayout.addWidget(self.label_10, 0, 0, 1, 1) self.gridLayout.addWidget(self.label_10, 0, 0, 1, 1)
@ -267,7 +269,6 @@ class Ui_ScoreEditor(object):
self.pureNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) self.pureNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
self.clearTypeNoneCheckBox.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.dateNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
self.dateTimeEdit.setDisplayFormat(QCoreApplication.translate("ScoreEditor", u"yyyy/M/d HH:mm:ss", None))
self.lostNoneCheckBox.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.modifierNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
self.commentNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) self.commentNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
@ -277,7 +278,6 @@ class Ui_ScoreEditor(object):
self.label_9.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.comment", None)) self.label_9.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.comment", None))
self.label.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.score", None)) self.label.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.score", None))
self.farNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None)) self.farNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
self.label_10.setText(QCoreApplication.translate("ScoreEditor", u"ID", None))
self.idLabel.setText(QCoreApplication.translate("ScoreEditor", u"idAutoInsert", None)) self.idLabel.setText(QCoreApplication.translate("ScoreEditor", u"idAutoInsert", None))
pass pass
# retranslateUi # retranslateUi

View File

@ -256,7 +256,7 @@
<string notr="true">QLabel { color: gray; }</string> <string notr="true">QLabel { color: gray; }</string>
</property> </property>
<property name="text"> <property name="text">
<string>song.date&amp;version</string> <string>song.addedIn</string>
</property> </property>
<property name="alignment"> <property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
@ -278,7 +278,7 @@
</widget> </widget>
</item> </item>
<item row="1" column="1"> <item row="1" column="1">
<widget class="QLabel" name="songDateVersionLabel"> <widget class="QLabel" name="songAddedInLabel">
<property name="text"> <property name="text">
<string notr="true">...</string> <string notr="true">...</string>
</property> </property>
@ -440,7 +440,7 @@
<string notr="true">QLabel { color: gray; }</string> <string notr="true">QLabel { color: gray; }</string>
</property> </property>
<property name="text"> <property name="text">
<string>difficulty.date&amp;version</string> <string>difficulty.addedIn</string>
</property> </property>
<property name="alignment"> <property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
@ -608,7 +608,7 @@
</widget> </widget>
</item> </item>
<item row="0" column="4"> <item row="0" column="4">
<widget class="QLabel" name="difficultyDateVersionLabel"> <widget class="QLabel" name="difficultyAddedInLabel">
<property name="text"> <property name="text">
<string notr="true">...</string> <string notr="true">...</string>
</property> </property>

View File

@ -216,11 +216,11 @@ class Ui_TabTools_InfoLookup(object):
self.gridLayout.addWidget(self.songIdLabel, 0, 1, 1, 1) self.gridLayout.addWidget(self.songIdLabel, 0, 1, 1, 1)
self.songDateVersionLabel = QLabel(self.songInfoGroupBox) self.songAddedInLabel = QLabel(self.songInfoGroupBox)
self.songDateVersionLabel.setObjectName(u"songDateVersionLabel") self.songAddedInLabel.setObjectName(u"songAddedInLabel")
self.songDateVersionLabel.setText(u"...") self.songAddedInLabel.setText(u"...")
self.gridLayout.addWidget(self.songDateVersionLabel, 1, 1, 1, 1) self.gridLayout.addWidget(self.songAddedInLabel, 1, 1, 1, 1)
self.songBgDayNightLabel = QLabel(self.songInfoGroupBox) self.songBgDayNightLabel = QLabel(self.songInfoGroupBox)
self.songBgDayNightLabel.setObjectName(u"songBgDayNightLabel") self.songBgDayNightLabel.setObjectName(u"songBgDayNightLabel")
@ -435,11 +435,11 @@ class Ui_TabTools_InfoLookup(object):
self.gridLayout_4.addWidget(self.label_41, 3, 3, 1, 1) self.gridLayout_4.addWidget(self.label_41, 3, 3, 1, 1)
self.difficultyDateVersionLabel = QLabel(self.groupBox_4) self.difficultyAddedInLabel = QLabel(self.groupBox_4)
self.difficultyDateVersionLabel.setObjectName(u"difficultyDateVersionLabel") self.difficultyAddedInLabel.setObjectName(u"difficultyAddedInLabel")
self.difficultyDateVersionLabel.setText(u"...") self.difficultyAddedInLabel.setText(u"...")
self.gridLayout_4.addWidget(self.difficultyDateVersionLabel, 0, 4, 1, 1) self.gridLayout_4.addWidget(self.difficultyAddedInLabel, 0, 4, 1, 1)
self.label_26 = QLabel(self.groupBox_4) self.label_26 = QLabel(self.groupBox_4)
self.label_26.setObjectName(u"label_26") self.label_26.setObjectName(u"label_26")
@ -519,7 +519,7 @@ class Ui_TabTools_InfoLookup(object):
self.label_11.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.artist", None)) self.label_11.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.artist", None))
self.label_19.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.bgSide", None)) self.label_19.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.bgSide", None))
self.label_3.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.id", None)) self.label_3.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.id", None))
self.label_15.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.date&version", None)) self.label_15.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.addedIn", None))
self.label_6.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.title", None)) self.label_6.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.title", None))
self.label_14.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.bpm", None)) self.label_14.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.bpm", None))
self.label_25.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.source", None)) self.label_25.setText(QCoreApplication.translate("TabTools_InfoLookup", u"song.source", None))
@ -528,7 +528,7 @@ class Ui_TabTools_InfoLookup(object):
self.label_2.setText(QCoreApplication.translate("TabTools_InfoLookup", u"chart.constant", None)) self.label_2.setText(QCoreApplication.translate("TabTools_InfoLookup", u"chart.constant", None))
self.label_8.setText(QCoreApplication.translate("TabTools_InfoLookup", u"chart.notes", None)) self.label_8.setText(QCoreApplication.translate("TabTools_InfoLookup", u"chart.notes", None))
self.groupBox_4.setTitle(QCoreApplication.translate("TabTools_InfoLookup", u"difficultyInfo", None)) self.groupBox_4.setTitle(QCoreApplication.translate("TabTools_InfoLookup", u"difficultyInfo", None))
self.label_18.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.date&version", None)) self.label_18.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.addedIn", None))
self.label_31.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.artist", None)) self.label_31.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.artist", None))
self.label_13.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.rating", None)) self.label_13.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.rating", None))
self.label_33.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.bg", None)) self.label_33.setText(QCoreApplication.translate("TabTools_InfoLookup", u"difficulty.bg", None))

View File

@ -120,7 +120,7 @@ class TabTools_InfoLookup(Ui_TabTools_InfoLookup, QWidget):
self.songTitleLabel.setText(title) self.songTitleLabel.setText(title)
self.songArtistLabel.setText(song.artist) self.songArtistLabel.setText(song.artist)
self.songBpmLabel.setText(f"{song.bpm_base} ({song.bpm})") self.songBpmLabel.setText(f"{song.bpm_base} ({song.bpm})")
self.songDateVersionLabel.setText(f"v{song.version}, {dateTimeStr}") self.songAddedInLabel.setText(f"v{song.version}, {dateTimeStr}")
self.songBgSideLabel.setText(bgSideText) self.songBgSideLabel.setText(bgSideText)
self.songBgDayNightLabel.setText(f"{song.bg_day or '-'}/{song.bg_night or '-'}") self.songBgDayNightLabel.setText(f"{song.bg_day or '-'}/{song.bg_night or '-'}")
self.songSourceLabel.setText(source) self.songSourceLabel.setText(source)
@ -162,7 +162,7 @@ class TabTools_InfoLookup(Ui_TabTools_InfoLookup, QWidget):
self.difficultyRatingLabel.setText( self.difficultyRatingLabel.setText(
f"{difficulty.rating}{'+' if difficulty.rating_plus else ''}" f"{difficulty.rating}{'+' if difficulty.rating_plus else ''}"
) )
self.difficultyDateVersionLabel.setText(versionDateStr) self.difficultyAddedInLabel.setText(versionDateStr)
self.difficultyChartDesignerLabel.setText(difficulty.chart_designer or "-") self.difficultyChartDesignerLabel.setText(difficulty.chart_designer or "-")
self.difficultyJacketDesignerLabel.setText(difficulty.jacket_desginer or "-") self.difficultyJacketDesignerLabel.setText(difficulty.jacket_desginer or "-")
self.difficultyTitleLabel.setText(title or "-") self.difficultyTitleLabel.setText(title or "-")

View File

@ -3,48 +3,13 @@
<TS version="2.1" language="en_US"> <TS version="2.1" language="en_US">
<context> <context>
<name>ChartSelector</name> <name>ChartSelector</name>
<message>
<location filename="../../designer/components/chartSelector.ui" line="56"/>
<source>fuzzySearch.lineEdit.placeholder</source>
<translation>Input here...</translation>
</message>
<message> <message>
<location filename="../../designer/components/chartSelector.ui" line="26"/> <location filename="../../designer/components/chartSelector.ui" line="26"/>
<source>songIdSelector.title</source> <source>songIdSelector.title</source>
<translation>Select Song</translation> <translation>Select Song</translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/chartSelector.ui" line="88"/> <location filename="../../designer/components/chartSelector.ui" line="71"/>
<source>songIdSelector.quickActions</source>
<translation>Quick Actions</translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="94"/>
<source>songIdSelector.quickActions.previousPackageButton</source>
<translation>Previous Package</translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="101"/>
<source>songIdSelector.quickActions.previousSongIdButton</source>
<translation>Previous Song</translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="108"/>
<source>songIdSelector.quickActions.nextSongIdButton</source>
<translation>Next Song</translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="115"/>
<source>songIdSelector.quickActions.nextPackageButton</source>
<translation>Next Package</translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="134"/>
<source>ratingClassSelector.title</source>
<translation>Rating Select</translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="231"/>
<source>resetButton</source> <source>resetButton</source>
<translation>Reset</translation> <translation>Reset</translation>
</message> </message>
@ -53,26 +18,21 @@
<name>DB30TableModel</name> <name>DB30TableModel</name>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="21"/> <location filename="../../extends/shared/models/tables/b30.py" line="21"/>
<source>horizontalHeader.tableId</source>
<translation>No.</translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/b30.py" line="22"/>
<source>horizontalHeader.id</source> <source>horizontalHeader.id</source>
<translation>ID</translation> <translation>ID</translation>
</message> </message>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="23"/> <location filename="../../extends/shared/models/tables/b30.py" line="22"/>
<source>horizontalHeader.chart</source> <source>horizontalHeader.chart</source>
<translation>Chart</translation> <translation>Chart</translation>
</message> </message>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="24"/> <location filename="../../extends/shared/models/tables/b30.py" line="23"/>
<source>horizontalHeader.score</source> <source>horizontalHeader.score</source>
<translation>Score</translation> <translation>Score</translation>
</message> </message>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="25"/> <location filename="../../extends/shared/models/tables/b30.py" line="24"/>
<source>horizontalHeader.potential</source> <source>horizontalHeader.potential</source>
<translation>Potential</translation> <translation>Potential</translation>
</message> </message>
@ -81,40 +41,50 @@
<name>DatabaseChecker</name> <name>DatabaseChecker</name>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="23"/> <location filename="../../startup/databaseChecker.ui" line="23"/>
<location filename="../../startup/databaseChecker_ui.py" line="130"/> <location filename="../../startup/databaseChecker_ui.py" line="162"/>
<source>dbPathLabel</source> <source>dbPathLabel</source>
<translation>Database Path</translation> <translation>Database Path</translation>
</message> </message>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="33"/> <location filename="../../startup/databaseChecker.ui" line="33"/>
<location filename="../../startup/databaseChecker_ui.py" line="133"/> <location filename="../../startup/databaseChecker_ui.py" line="165"/>
<source>dbFilenameLabel</source>
<translation>Database filename</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="64"/>
<location filename="../../startup/databaseChecker_ui.py" line="168"/>
<source>confirmDbPathButton</source>
<translation>Confirm</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="117"/>
<location filename="../../startup/databaseChecker_ui.py" line="177"/>
<source>dbVersionLabel</source> <source>dbVersionLabel</source>
<translation>Database Version</translation> <translation>Database Version</translation>
</message> </message>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="47"/> <location filename="../../startup/databaseChecker.ui" line="93"/>
<location filename="../../startup/databaseChecker_ui.py" line="136"/> <location filename="../../startup/databaseChecker_ui.py" line="171"/>
<source>dbInitLabel</source>
<translation>Initialize</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="54"/>
<location filename="../../startup/databaseChecker_ui.py" line="139"/>
<source>dbCheckConnLabel</source> <source>dbCheckConnLabel</source>
<translation>Database Connection</translation> <translation>Database Connection</translation>
</message> </message>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="61"/> <location filename="../../startup/databaseChecker.ui" line="110"/>
<location filename="../../startup/databaseChecker_ui.py" line="142"/> <location filename="../../startup/databaseChecker_ui.py" line="174"/>
<source>dbInitButton</source>
<translation>Initialize Database</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="91"/>
<location filename="../../startup/databaseChecker_ui.py" line="145"/>
<source>continueButton</source> <source>continueButton</source>
<translation>Continue</translation> <translation>Continue</translation>
</message> </message>
<message>
<location filename="../../startup/databaseChecker.py" line="80"/>
<source>dialog.confirmNewDatabase</source>
<translation>Database file does not exist. Create now?</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.py" line="100"/>
<source>dialog.tryInit</source>
<translation>The existing database doesn&apos;t seem to be initialized, try initialize it again?</translation>
</message>
</context> </context>
<context> <context>
<name>DbScoreTableModel</name> <name>DbScoreTableModel</name>
@ -227,11 +197,16 @@
</message> </message>
<message> <message>
<location filename="../../designer/mainwindow.ui" line="45"/> <location filename="../../designer/mainwindow.ui" line="45"/>
<source>tab.tools</source>
<translation>Tools</translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="50"/>
<source>tab.settings</source> <source>tab.settings</source>
<translation>Settings</translation> <translation>Settings</translation>
</message> </message>
<message> <message>
<location filename="../../designer/mainwindow.ui" line="50"/> <location filename="../../designer/mainwindow.ui" line="55"/>
<source>tab.about</source> <source>tab.about</source>
<translation>About</translation> <translation>About</translation>
</message> </message>
@ -319,73 +294,95 @@ validation</translation>
<context> <context>
<name>ScoreEditor</name> <name>ScoreEditor</name>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="26"/> <location filename="../../designer/components/scoreEditor.ui" line="20"/>
<location filename="../../designer/components/scoreEditor.ui" line="50"/>
<location filename="../../designer/components/scoreEditor.ui" line="80"/>
<location filename="../../designer/components/scoreEditor.ui" line="217"/>
<location filename="../../designer/components/scoreEditor.ui" line="231"/>
<location filename="../../designer/components/scoreEditor.ui" line="241"/>
<location filename="../../designer/components/scoreEditor.ui" line="275"/>
<location filename="../../designer/components/scoreEditor.ui" line="318"/>
<source>setNone</source>
<translation>None</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="251"/>
<source>formLabel.date</source>
<translation>Time</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="298"/>
<source>formLabel.comment</source>
<translation>Comment</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="308"/>
<source>formLabel.score</source> <source>formLabel.score</source>
<translation>Score</translation> <translation>Score</translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="100"/> <location filename="../../designer/components/scoreEditor.ui" line="335"/>
<source>formLabel.time</source> <source>idAutoInsert</source>
<translation>Time</translation> <translation>(Auto Insert)</translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="191"/> <location filename="../../designer/components/scoreEditor.ui" line="261"/>
<source>commitButton</source> <source>commitButton</source>
<translation>Commit</translation> <translation>Commit</translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="200"/> <location filename="../../implements/components/scoreEditor.py" line="106"/>
<source>formLabel.clearType</source>
<translation>Clear Type</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="77"/>
<source>emptyScoreDialog.title</source> <source>emptyScoreDialog.title</source>
<translation>Empty Score</translation> <translation>Empty Score</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="78"/> <location filename="../../implements/components/scoreEditor.py" line="107"/>
<source>emptyScoreDialog.content</source> <source>emptyScoreDialog.content</source>
<translation>Are you sure to commit an empty score?</translation> <translation>Are you sure to commit an empty score?</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="57"/> <location filename="../../implements/components/scoreEditor.py" line="86"/>
<location filename="../../implements/components/scoreEditor.py" line="58"/> <location filename="../../implements/components/scoreEditor.py" line="87"/>
<source>chartInvalidDialog.title</source> <source>chartInvalidDialog.title</source>
<translation>Chart Invalid</translation> <translation>Chart Invalid</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="66"/> <location filename="../../implements/components/scoreEditor.py" line="95"/>
<source>scoreMismatchDialog.title</source> <source>scoreMismatchDialog.title</source>
<translation>Possible Invalid Score</translation> <translation>Possible Invalid Score</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="67"/> <location filename="../../implements/components/scoreEditor.py" line="96"/>
<source>scoreMismatchDialog.content</source> <source>scoreMismatchDialog.content</source>
<translation>The entered score may not match the selected chart. Commit this score anyway?</translation> <translation>The entered score may not match the selected chart. Commit this score anyway?</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="149"/> <location filename="../../implements/components/scoreEditor.py" line="181"/>
<source>validate.ok</source> <source>validate.ok</source>
<translation>OK</translation> <translation>OK</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="151"/> <location filename="../../implements/components/scoreEditor.py" line="183"/>
<source>validate.chartInvalid</source> <source>validate.chartInvalid</source>
<translation>Chart invalid</translation> <translation>Chart invalid</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="153"/> <location filename="../../implements/components/scoreEditor.py" line="185"/>
<source>validate.scoreMismatch</source> <source>validate.scoreMismatch</source>
<translation>Possible invalid score</translation> <translation>Possible invalid score</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="155"/> <location filename="../../implements/components/scoreEditor.py" line="187"/>
<source>validate.scoreEmpty</source> <source>validate.scoreEmpty</source>
<translation>Empty score</translation> <translation>Empty score</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="158"/> <location filename="../../implements/components/scoreEditor.py" line="189"/>
<source>validate.scoreIncomplete</source>
<translation>Score incomplete, cannot verify</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="192"/>
<source>validate.unknownState</source> <source>validate.unknownState</source>
<translation>Unknown</translation> <translation>Unknown</translation>
</message> </message>
@ -409,7 +406,7 @@ validation</translation>
</message> </message>
<message> <message>
<location filename="../../designer/settings/settingsDefault.ui" line="101"/> <location filename="../../designer/settings/settingsDefault.ui" line="101"/>
<location filename="../../designer/settings/settingsDefault.ui" line="115"/> <location filename="../../designer/settings/settingsDefault.ui" line="118"/>
<source>resetButton</source> <source>resetButton</source>
<translation>Reset</translation> <translation>Reset</translation>
</message> </message>
@ -419,11 +416,31 @@ validation</translation>
<translation>Default KNearest Model</translation> <translation>Default KNearest Model</translation>
</message> </message>
<message> <message>
<location filename="../../designer/settings/settingsDefault.ui" line="138"/> <location filename="../../designer/settings/settingsDefault.ui" line="141"/>
<source>siftDatabaseFile</source> <source>siftDatabaseFile</source>
<translation>Default SIFT Database File</translation> <translation>Default SIFT Database File</translation>
</message> </message>
</context> </context>
<context>
<name>SongIdSelector</name>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="23"/>
<source>search.lineEdit.placeholder</source>
<translation>Search...</translation>
</message>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="54"/>
<location filename="../../designer/components/songIdSelector.ui" line="94"/>
<source>previous</source>
<translation>Previous</translation>
</message>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="77"/>
<location filename="../../designer/components/songIdSelector.ui" line="117"/>
<source>next</source>
<translation>Next</translation>
</message>
</context>
<context> <context>
<name>TabAbout</name> <name>TabAbout</name>
<message> <message>
@ -472,16 +489,26 @@ validation</translation>
<source>importSt3.description</source> <source>importSt3.description</source>
<translation>Import your local score database</translation> <translation>Import your local score database</translation>
</message> </message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="58"/>
<source>exportScoresButton</source>
<translation>Export scores</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="65"/>
<source>exportScores.description</source>
<translation>Export all your scores to a JSON file</translation>
</message>
</context> </context>
<context> <context>
<name>TabInputScore</name> <name>TabInputScore</name>
<message> <message>
<location filename="../../designer/tabs/tabInputScore.ui" line="26"/> <location filename="../../designer/tabs/tabInputScore.ui" line="20"/>
<source>tab.selectChart</source> <source>tab.selectChart</source>
<translation>Chart Selector</translation> <translation>Chart Selector</translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabInputScore.ui" line="50"/> <location filename="../../designer/tabs/tabInputScore.ui" line="44"/>
<source>tab.scoreEdit</source> <source>tab.scoreEdit</source>
<translation>Score Edit</translation> <translation>Score Edit</translation>
</message> </message>
@ -548,19 +575,200 @@ validation</translation>
<translation>Select Device</translation> <translation>Select Device</translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="63"/> <location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="33"/>
<source>deviceSelector.useAutoFactor</source>
<translation>Auto Factor</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="70"/>
<source>knnModelSelector.title</source> <source>knnModelSelector.title</source>
<translation>Select KNearest Model</translation> <translation>Select KNearest Model</translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="94"/> <location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="101"/>
<source>tesseractSelector.title</source> <source>tesseractSelector.title</source>
<translation>Select tesseract Path</translation> <translation>Select tesseract Path</translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="122"/> <location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="129"/>
<source>siftDatabaseSelector.title</source> <source>siftDatabaseSelector.title</source>
<translation>Select Image SIFT Database</translation> <translation>Select Image SIFT Database</translation>
</message> </message>
</context> </context>
<context>
<name>TabToolsEntry</name>
<message>
<location filename="../../designer/tabs/tabToolsEntry.ui" line="24"/>
<source>tab.infoLookup</source>
<translation>Chart Info Lookup</translation>
</message>
</context>
<context>
<name>TabTools_InfoLookup</name>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="22"/>
<source>langSelect.label</source>
<translation>Language</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="47"/>
<source>songSelect</source>
<translation>Select a song</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="65"/>
<source>packInfo</source>
<translation>Pack Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="74"/>
<source>pack.description</source>
<translation>Description</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="94"/>
<source>pack.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="129"/>
<source>pack.name</source>
<translation>Name</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="157"/>
<source>songInfo</source>
<translation>Song Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="166"/>
<source>song.bgDayNight</source>
<translation>Background Day/Night</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="179"/>
<source>song.audioPreview</source>
<translation>Audio Preview Segment</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="206"/>
<source>song.artist</source>
<translation>Artist</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="233"/>
<source>song.bgSide</source>
<translation>Backgroud</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="246"/>
<source>song.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="259"/>
<source>song.addedIn</source>
<translation>Added in</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="443"/>
<source>difficulty.addedIn</source>
<translation>Added in</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="300"/>
<source>song.title</source>
<translation>Title</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="313"/>
<source>song.bpm</source>
<translation>BPM</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="326"/>
<source>song.source</source>
<translation>Source</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="355"/>
<source>chartSelect</source>
<translation>Select a difficulty</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="379"/>
<source>chartInfo</source>
<translation>Chart Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="402"/>
<source>chart.constant</source>
<translation>Constant</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="415"/>
<source>chart.notes</source>
<translation>Notes</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="434"/>
<source>difficultyInfo</source>
<translation>Difficulty Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="484"/>
<source>difficulty.artist</source>
<translation>Artist</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="497"/>
<source>difficulty.rating</source>
<translation>Rating</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="510"/>
<source>difficulty.bg</source>
<translation>Background</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="544"/>
<source>difficulty.jacketOverride</source>
<translation>Jacket Override</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="557"/>
<source>difficulty.chartDesigner</source>
<translation>Chart Designer</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="577"/>
<source>difficulty.audioOverride</source>
<translation>Audio Override</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="590"/>
<source>difficulty.bpm</source>
<translation>BPM</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="603"/>
<source>difficulty.bgInverse</source>
<translation>Background Inversed</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="623"/>
<source>difficulty.jacketDesigner</source>
<translation>Jacket Designer</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="636"/>
<source>difficulty.jacketNight</source>
<translation>Jacket Night</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="649"/>
<source>difficulty.title</source>
<translation>Title</translation>
</message>
</context>
</TS> </TS>

View File

@ -3,48 +3,13 @@
<TS version="2.1" language="zh_CN"> <TS version="2.1" language="zh_CN">
<context> <context>
<name>ChartSelector</name> <name>ChartSelector</name>
<message>
<location filename="../../designer/components/chartSelector.ui" line="56"/>
<source>fuzzySearch.lineEdit.placeholder</source>
<translation></translation>
</message>
<message> <message>
<location filename="../../designer/components/chartSelector.ui" line="26"/> <location filename="../../designer/components/chartSelector.ui" line="26"/>
<source>songIdSelector.title</source> <source>songIdSelector.title</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/chartSelector.ui" line="88"/> <location filename="../../designer/components/chartSelector.ui" line="71"/>
<source>songIdSelector.quickActions</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="94"/>
<source>songIdSelector.quickActions.previousPackageButton</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="101"/>
<source>songIdSelector.quickActions.previousSongIdButton</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="108"/>
<source>songIdSelector.quickActions.nextSongIdButton</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="115"/>
<source>songIdSelector.quickActions.nextPackageButton</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="134"/>
<source>ratingClassSelector.title</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="231"/>
<source>resetButton</source> <source>resetButton</source>
<translation></translation> <translation></translation>
</message> </message>
@ -53,26 +18,21 @@
<name>DB30TableModel</name> <name>DB30TableModel</name>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="21"/> <location filename="../../extends/shared/models/tables/b30.py" line="21"/>
<source>horizontalHeader.tableId</source>
<translation></translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/b30.py" line="22"/>
<source>horizontalHeader.id</source> <source>horizontalHeader.id</source>
<translation>ID</translation> <translation>ID</translation>
</message> </message>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="23"/> <location filename="../../extends/shared/models/tables/b30.py" line="22"/>
<source>horizontalHeader.chart</source> <source>horizontalHeader.chart</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="24"/> <location filename="../../extends/shared/models/tables/b30.py" line="23"/>
<source>horizontalHeader.score</source> <source>horizontalHeader.score</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../extends/shared/models/tables/b30.py" line="25"/> <location filename="../../extends/shared/models/tables/b30.py" line="24"/>
<source>horizontalHeader.potential</source> <source>horizontalHeader.potential</source>
<translation> PTT</translation> <translation> PTT</translation>
</message> </message>
@ -81,40 +41,50 @@
<name>DatabaseChecker</name> <name>DatabaseChecker</name>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="23"/> <location filename="../../startup/databaseChecker.ui" line="23"/>
<location filename="../../startup/databaseChecker_ui.py" line="130"/> <location filename="../../startup/databaseChecker_ui.py" line="162"/>
<source>dbPathLabel</source> <source>dbPathLabel</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="33"/> <location filename="../../startup/databaseChecker.ui" line="33"/>
<location filename="../../startup/databaseChecker_ui.py" line="133"/> <location filename="../../startup/databaseChecker_ui.py" line="165"/>
<source>dbFilenameLabel</source>
<translation></translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="64"/>
<location filename="../../startup/databaseChecker_ui.py" line="168"/>
<source>confirmDbPathButton</source>
<translation></translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="117"/>
<location filename="../../startup/databaseChecker_ui.py" line="177"/>
<source>dbVersionLabel</source> <source>dbVersionLabel</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="47"/> <location filename="../../startup/databaseChecker.ui" line="93"/>
<location filename="../../startup/databaseChecker_ui.py" line="136"/> <location filename="../../startup/databaseChecker_ui.py" line="171"/>
<source>dbInitLabel</source>
<translation></translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="54"/>
<location filename="../../startup/databaseChecker_ui.py" line="139"/>
<source>dbCheckConnLabel</source> <source>dbCheckConnLabel</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../startup/databaseChecker.ui" line="61"/> <location filename="../../startup/databaseChecker.ui" line="110"/>
<location filename="../../startup/databaseChecker_ui.py" line="142"/> <location filename="../../startup/databaseChecker_ui.py" line="174"/>
<source>dbInitButton</source>
<translation></translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="91"/>
<location filename="../../startup/databaseChecker_ui.py" line="145"/>
<source>continueButton</source> <source>continueButton</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<location filename="../../startup/databaseChecker.py" line="80"/>
<source>dialog.confirmNewDatabase</source>
<translation></translation>
</message>
<message>
<location filename="../../startup/databaseChecker.py" line="100"/>
<source>dialog.tryInit</source>
<translation></translation>
</message>
</context> </context>
<context> <context>
<name>DbScoreTableModel</name> <name>DbScoreTableModel</name>
@ -227,11 +197,16 @@
</message> </message>
<message> <message>
<location filename="../../designer/mainwindow.ui" line="45"/> <location filename="../../designer/mainwindow.ui" line="45"/>
<source>tab.tools</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="50"/>
<source>tab.settings</source> <source>tab.settings</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../designer/mainwindow.ui" line="50"/> <location filename="../../designer/mainwindow.ui" line="55"/>
<source>tab.about</source> <source>tab.about</source>
<translation></translation> <translation></translation>
</message> </message>
@ -318,73 +293,95 @@
<context> <context>
<name>ScoreEditor</name> <name>ScoreEditor</name>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="26"/> <location filename="../../designer/components/scoreEditor.ui" line="20"/>
<location filename="../../designer/components/scoreEditor.ui" line="50"/>
<location filename="../../designer/components/scoreEditor.ui" line="80"/>
<location filename="../../designer/components/scoreEditor.ui" line="217"/>
<location filename="../../designer/components/scoreEditor.ui" line="231"/>
<location filename="../../designer/components/scoreEditor.ui" line="241"/>
<location filename="../../designer/components/scoreEditor.ui" line="275"/>
<location filename="../../designer/components/scoreEditor.ui" line="318"/>
<source>setNone</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="251"/>
<source>formLabel.date</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="298"/>
<source>formLabel.comment</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="308"/>
<source>formLabel.score</source> <source>formLabel.score</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="100"/> <location filename="../../designer/components/scoreEditor.ui" line="335"/>
<source>formLabel.time</source> <source>idAutoInsert</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="191"/> <location filename="../../designer/components/scoreEditor.ui" line="261"/>
<source>commitButton</source> <source>commitButton</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../designer/components/scoreEditor.ui" line="200"/> <location filename="../../implements/components/scoreEditor.py" line="106"/>
<source>formLabel.clearType</source>
<translation></translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="77"/>
<source>emptyScoreDialog.title</source> <source>emptyScoreDialog.title</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="78"/> <location filename="../../implements/components/scoreEditor.py" line="107"/>
<source>emptyScoreDialog.content</source> <source>emptyScoreDialog.content</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="57"/> <location filename="../../implements/components/scoreEditor.py" line="86"/>
<location filename="../../implements/components/scoreEditor.py" line="58"/> <location filename="../../implements/components/scoreEditor.py" line="87"/>
<source>chartInvalidDialog.title</source> <source>chartInvalidDialog.title</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="66"/> <location filename="../../implements/components/scoreEditor.py" line="95"/>
<source>scoreMismatchDialog.title</source> <source>scoreMismatchDialog.title</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="67"/> <location filename="../../implements/components/scoreEditor.py" line="96"/>
<source>scoreMismatchDialog.content</source> <source>scoreMismatchDialog.content</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="149"/> <location filename="../../implements/components/scoreEditor.py" line="181"/>
<source>validate.ok</source> <source>validate.ok</source>
<translation>OK</translation> <translation>OK</translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="151"/> <location filename="../../implements/components/scoreEditor.py" line="183"/>
<source>validate.chartInvalid</source> <source>validate.chartInvalid</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="153"/> <location filename="../../implements/components/scoreEditor.py" line="185"/>
<source>validate.scoreMismatch</source> <source>validate.scoreMismatch</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="155"/> <location filename="../../implements/components/scoreEditor.py" line="187"/>
<source>validate.scoreEmpty</source> <source>validate.scoreEmpty</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../implements/components/scoreEditor.py" line="158"/> <location filename="../../implements/components/scoreEditor.py" line="189"/>
<source>validate.scoreIncomplete</source>
<translation></translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="192"/>
<source>validate.unknownState</source> <source>validate.unknownState</source>
<translation></translation> <translation></translation>
</message> </message>
@ -408,7 +405,7 @@
</message> </message>
<message> <message>
<location filename="../../designer/settings/settingsDefault.ui" line="101"/> <location filename="../../designer/settings/settingsDefault.ui" line="101"/>
<location filename="../../designer/settings/settingsDefault.ui" line="115"/> <location filename="../../designer/settings/settingsDefault.ui" line="118"/>
<source>resetButton</source> <source>resetButton</source>
<translation></translation> <translation></translation>
</message> </message>
@ -418,11 +415,31 @@
<translation> KNearest </translation> <translation> KNearest </translation>
</message> </message>
<message> <message>
<location filename="../../designer/settings/settingsDefault.ui" line="138"/> <location filename="../../designer/settings/settingsDefault.ui" line="141"/>
<source>siftDatabaseFile</source> <source>siftDatabaseFile</source>
<translation> SIFT </translation> <translation> SIFT </translation>
</message> </message>
</context> </context>
<context>
<name>SongIdSelector</name>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="23"/>
<source>search.lineEdit.placeholder</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="54"/>
<location filename="../../designer/components/songIdSelector.ui" line="94"/>
<source>previous</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="77"/>
<location filename="../../designer/components/songIdSelector.ui" line="117"/>
<source>next</source>
<translation></translation>
</message>
</context>
<context> <context>
<name>TabAbout</name> <name>TabAbout</name>
<message> <message>
@ -471,16 +488,26 @@
<source>importSt3.description</source> <source>importSt3.description</source>
<translation>姿&lt;br&gt;退</translation> <translation>姿&lt;br&gt;退</translation>
</message> </message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="58"/>
<source>exportScoresButton</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="65"/>
<source>exportScores.description</source>
<translation> JSON </translation>
</message>
</context> </context>
<context> <context>
<name>TabInputScore</name> <name>TabInputScore</name>
<message> <message>
<location filename="../../designer/tabs/tabInputScore.ui" line="26"/> <location filename="../../designer/tabs/tabInputScore.ui" line="20"/>
<source>tab.selectChart</source> <source>tab.selectChart</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabInputScore.ui" line="50"/> <location filename="../../designer/tabs/tabInputScore.ui" line="44"/>
<source>tab.scoreEdit</source> <source>tab.scoreEdit</source>
<translation></translation> <translation></translation>
</message> </message>
@ -547,19 +574,200 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="63"/> <location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="33"/>
<source>deviceSelector.useAutoFactor</source>
<translation> factor</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="70"/>
<source>knnModelSelector.title</source> <source>knnModelSelector.title</source>
<translation> KNearest </translation> <translation> KNearest </translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="94"/> <location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="101"/>
<source>tesseractSelector.title</source> <source>tesseractSelector.title</source>
<translation> tesseract </translation> <translation> tesseract </translation>
</message> </message>
<message> <message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="122"/> <location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="129"/>
<source>siftDatabaseSelector.title</source> <source>siftDatabaseSelector.title</source>
<translation> SIFT </translation> <translation> SIFT </translation>
</message> </message>
</context> </context>
<context>
<name>TabToolsEntry</name>
<message>
<location filename="../../designer/tabs/tabToolsEntry.ui" line="24"/>
<source>tab.infoLookup</source>
<translation></translation>
</message>
</context>
<context>
<name>TabTools_InfoLookup</name>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="22"/>
<source>langSelect.label</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="47"/>
<source>songSelect</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="65"/>
<source>packInfo</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="74"/>
<source>pack.description</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="94"/>
<source>pack.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="129"/>
<source>pack.name</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="157"/>
<source>songInfo</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="166"/>
<source>song.bgDayNight</source>
<translation>/</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="179"/>
<source>song.audioPreview</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="206"/>
<source>song.artist</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="233"/>
<source>song.bgSide</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="246"/>
<source>song.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="259"/>
<source>song.addedIn</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="443"/>
<source>difficulty.addedIn</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="300"/>
<source>song.title</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="313"/>
<source>song.bpm</source>
<translation>BPM</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="326"/>
<source>song.source</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="355"/>
<source>chartSelect</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="379"/>
<source>chartInfo</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="402"/>
<source>chart.constant</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="415"/>
<source>chart.notes</source>
<translation>note </translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="434"/>
<source>difficultyInfo</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="484"/>
<source>difficulty.artist</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="497"/>
<source>difficulty.rating</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="510"/>
<source>difficulty.bg</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="544"/>
<source>difficulty.jacketOverride</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="557"/>
<source>difficulty.chartDesigner</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="577"/>
<source>difficulty.audioOverride</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="590"/>
<source>difficulty.bpm</source>
<translation>BPM</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="603"/>
<source>difficulty.bgInverse</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="623"/>
<source>difficulty.jacketDesigner</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="636"/>
<source>difficulty.jacketNight</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="649"/>
<source>difficulty.title</source>
<translation></translation>
</message>
</context>
</TS> </TS>