Make search case insensitive
This commit is contained in:
parent
29860268ba
commit
8192e79d42
@ -82,6 +82,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
self.txtSearch = QLineEdit()
|
||||
self.statusbar.addWidget(self.txtSearch)
|
||||
self.txtSearch.setHidden(True)
|
||||
self.hide_played_tracks = False
|
||||
|
||||
self.visible_playlist_tab: Callable[[], PlaylistTab] = \
|
||||
self.tabPlaylist.currentWidget
|
||||
@ -201,6 +202,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
# self.btnAddNote.clicked.connect(self.create_note)
|
||||
# self.btnDatabase.clicked.connect(self.search_database)
|
||||
self.btnDrop3db.clicked.connect(self.drop3db)
|
||||
self.btnHidePlayed.clicked.connect(self.hide_played)
|
||||
self.btnFade.clicked.connect(self.fade)
|
||||
# self.btnPlay.clicked.connect(self.play_next)
|
||||
# self.btnSetNext.clicked.connect(
|
||||
@ -415,6 +417,19 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
|
||||
self.stop_playing(fade=True)
|
||||
|
||||
def hide_played(self):
|
||||
"""Toggle hide played tracks"""
|
||||
|
||||
if self.hide_played_tracks:
|
||||
self.hide_played_tracks = False
|
||||
self.btnHidePlayed.setText("Hide played")
|
||||
else:
|
||||
self.hide_played_tracks = True
|
||||
self.btnHidePlayed.setText("Show played")
|
||||
if self.current_track_playlist_tab:
|
||||
with Session() as session:
|
||||
self.current_track_playlist_tab.update_display(session)
|
||||
|
||||
def import_track(self) -> None:
|
||||
"""Import track file"""
|
||||
|
||||
|
||||
@ -742,6 +742,11 @@ class PlaylistTab(QTableWidget):
|
||||
played: Optional[List[int]] = self._get_played_track_rows()
|
||||
unreadable: List[int] = self._get_unreadable_track_rows()
|
||||
|
||||
if self.row_filter:
|
||||
filter_text = self.row_filter.lower()
|
||||
else:
|
||||
filter_text = None
|
||||
hide_played = self.musicmuster.hide_played_tracks
|
||||
last_played_str: str
|
||||
last_playedtime: Optional[datetime]
|
||||
next_start_time: Optional[datetime] = None
|
||||
@ -769,8 +774,8 @@ class PlaylistTab(QTableWidget):
|
||||
if row in notes:
|
||||
# Extract note text from database to ignore section timings
|
||||
note_text = self._get_row_notes_object(row, session).note
|
||||
if self.row_filter:
|
||||
if self.row_filter not in note_text:
|
||||
if filter_text:
|
||||
if filter_text not in note_text.lower():
|
||||
self.hideRow(row)
|
||||
continue
|
||||
else:
|
||||
@ -816,12 +821,12 @@ class PlaylistTab(QTableWidget):
|
||||
if section_start_row is not None:
|
||||
section_time += track.duration
|
||||
# Render current track
|
||||
if self.row_filter:
|
||||
if filter_text:
|
||||
try:
|
||||
if (track.title
|
||||
and self.row_filter not in track.title
|
||||
and filter_text not in track.title.lower()
|
||||
and track.artist
|
||||
and self.row_filter not in track.artist):
|
||||
and filter_text not in track.artist.lower()):
|
||||
self.hideRow(row)
|
||||
continue
|
||||
else:
|
||||
@ -889,7 +894,10 @@ class PlaylistTab(QTableWidget):
|
||||
last_played_str = get_relative_date(last_playedtime)
|
||||
self.item(row, self.COL_LAST_PLAYED).setText(
|
||||
last_played_str)
|
||||
self._set_row_not_bold(row)
|
||||
if hide_played:
|
||||
self.hideRow(row)
|
||||
else:
|
||||
self._set_row_not_bold(row)
|
||||
else:
|
||||
# Set start/end times as we haven't played it yet
|
||||
if next_start_time:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user