impr: minor improvements

This commit is contained in:
283375 2023-10-15 02:47:15 +08:00
parent 3e2e96b00b
commit 86b1653fe3
Signed by: 283375
SSH Key Fingerprint: SHA256:UcX0qg6ZOSDOeieKPGokA5h7soykG61nz2uxuQgVLSk
3 changed files with 15 additions and 7 deletions

View File

@ -138,7 +138,7 @@ class ChartDelegate(TextSegmentDelegate):
ratingClass = None ratingClass = None
ratingText = ( ratingText = (
f"{rating_class_to_text(chart.rating_class)} {chartConstantString}" f"{rating_class_to_text(ratingClass)} {chartConstantString}"
if ratingClass is not None if ratingClass is not None
else "Unknown ?" else "Unknown ?"
) )

View File

@ -27,7 +27,9 @@ class ChartSelector(Ui_ChartSelector, QWidget):
self.valueChanged.connect(self.updateResultLabel) self.valueChanged.connect(self.updateResultLabel)
self.songIdSelector.valueChanged.connect(self.updateRatingClassEnabled) self.songIdSelector.valueChanged.connect(self.updateRatingClassEnabled)
self.songIdSelector.chartSelected.connect(self.selectChart) self.songIdSelector.quickSearchActivated.connect(
self.__songIdSelectedQuickSearchActivated
)
self.songIdSelector.valueChanged.connect(self.valueChanged) self.songIdSelector.valueChanged.connect(self.valueChanged)
self.ratingClassSelector.valueChanged.connect(self.valueChanged) self.ratingClassSelector.valueChanged.connect(self.valueChanged)
@ -86,7 +88,10 @@ class ChartSelector(Ui_ChartSelector, QWidget):
texts = [" | ".join(t) for t in texts] texts = [" | ".join(t) for t in texts]
text = f'{texts[0]}<br><font color="gray">{texts[1]}</font>' text = f'{texts[0]}<br><font color="gray">{texts[1]}</font>'
else: else:
text = f'No chart data<br><font color="gray">{chart.set} | {chart.song_id} | {chart.rating_class}</font>' text = (
"No chart data<br>"
f'<font color="gray">{chart.set} | {chart.song_id} | {chart.rating_class}</font>'
)
self.resultLabel.setText(text) self.resultLabel.setText(text)
else: else:
self.resultLabel.setText("...") self.resultLabel.setText("...")
@ -106,5 +111,8 @@ class ChartSelector(Ui_ChartSelector, QWidget):
self.songIdSelector.reset() self.songIdSelector.reset()
def selectChart(self, chart: Chart): def selectChart(self, chart: Chart):
self.songIdSelector.selectChart(chart)
self.ratingClassSelector.select(chart.rating_class)
def __songIdSelectedQuickSearchActivated(self, chart: Chart):
self.ratingClassSelector.select(chart.rating_class) self.ratingClassSelector.select(chart.rating_class)
return self.ratingClassSelector.value() == chart.rating_class

View File

@ -23,7 +23,7 @@ class SongIdSelectorMode(IntEnum):
class SongIdSelector(Ui_SongIdSelector, QWidget): class SongIdSelector(Ui_SongIdSelector, QWidget):
valueChanged = Signal() valueChanged = Signal()
chartSelected = Signal(Chart) quickSearchActivated = Signal(Chart)
def __init__(self, parent=None): def __init__(self, parent=None):
super().__init__(parent) super().__init__(parent)
@ -209,13 +209,13 @@ class SongIdSelector(Ui_SongIdSelector, QWidget):
def selectChart(self, chart: Chart): def selectChart(self, chart: Chart):
packSelected = self.selectPack(chart.set) packSelected = self.selectPack(chart.set)
songIdSelected = self.selectSongId(chart.song_id) songIdSelected = self.selectSongId(chart.song_id)
self.chartSelected.emit(chart)
return packSelected and songIdSelected return packSelected and songIdSelected
@Slot(QModelIndex) @Slot(QModelIndex)
def searchCompleterSetSelection(self, index: QModelIndex): def searchCompleterSetSelection(self, index: QModelIndex):
chart = index.data(Qt.ItemDataRole.UserRole + 10) # type: Chart chart: Chart = index.data(Qt.ItemDataRole.UserRole + 10)
self.selectChart(chart) self.selectChart(chart)
self.quickSearchActivated.emit(chart)
self.searchLineEdit.clear() self.searchLineEdit.clear()
self.searchLineEdit.clearFocus() self.searchLineEdit.clearFocus()