Compare commits
No commits in common. "27cc86d48da091497448cecdd88c5cf3ac729c68" and "087139f4de2ec37558ec1ee84397a9b98ac753b8" have entirely different histories.
27cc86d48d
...
087139f4de
@ -120,10 +120,6 @@ class PlaylistTrack:
|
||||
def __init__(self) -> None:
|
||||
"""
|
||||
Only initialises data structure. Call set_plr to populate.
|
||||
|
||||
Do NOT store row_number here - that changes if tracks are reordered
|
||||
in playlist (add, remove, drag/drop) and we shouldn't care about row
|
||||
number: that's the playlist's problem.
|
||||
"""
|
||||
|
||||
self.artist = None
|
||||
@ -135,6 +131,7 @@ class PlaylistTrack:
|
||||
self.playlist_id = None
|
||||
self.playlist_tab = None
|
||||
self.plr_id = None
|
||||
self.row_number = None
|
||||
self.silence_at = None
|
||||
self.start_gap = None
|
||||
self.start_time = None
|
||||
@ -166,6 +163,7 @@ class PlaylistTrack:
|
||||
self.path = track.path
|
||||
self.playlist_id = plr.playlist_id
|
||||
self.plr_id = plr.id
|
||||
self.row_number = plr.row_number
|
||||
self.silence_at = track.silence_at
|
||||
self.start_gap = track.start_gap
|
||||
self.start_time = None
|
||||
@ -612,16 +610,15 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
# doesn't see player=None and kick off end-of-track actions
|
||||
self.playing = False
|
||||
|
||||
# Repaint playlist to remove currently playing track colour
|
||||
with Session() as session:
|
||||
self.current_track.playlist_tab.update_display(session)
|
||||
|
||||
# Reset PlaylistTrack objects
|
||||
if self.current_track.track_id:
|
||||
self.previous_track = self.current_track
|
||||
self.current_track = PlaylistTrack()
|
||||
|
||||
# Repaint playlist to remove currently playing track colour
|
||||
# What was current track is now previous track
|
||||
with Session() as session:
|
||||
self.previous_track.playlist_tab.update_display(session)
|
||||
|
||||
# Reset clocks
|
||||
self.frame_fade.setStyleSheet("")
|
||||
self.frame_silent.setStyleSheet("")
|
||||
|
||||
@ -720,11 +720,6 @@ class PlaylistTab(QTableWidget):
|
||||
|
||||
current_row = self._get_current_track_row_number()
|
||||
if not current_row:
|
||||
send_mail(Config.ERRORS_TO,
|
||||
Config.ERRORS_FROM,
|
||||
"MusicMuster unexpected failure",
|
||||
stackprinter.format()
|
||||
)
|
||||
return
|
||||
|
||||
search_from = current_row + 1
|
||||
@ -754,11 +749,6 @@ class PlaylistTab(QTableWidget):
|
||||
# Add the rows
|
||||
playlist = session.get(Playlists, playlist_id)
|
||||
if not playlist:
|
||||
send_mail(Config.ERRORS_TO,
|
||||
Config.ERRORS_FROM,
|
||||
"MusicMuster unexpected failure",
|
||||
stackprinter.format()
|
||||
)
|
||||
return
|
||||
|
||||
for plr in playlist.rows:
|
||||
@ -973,8 +963,8 @@ class PlaylistTab(QTableWidget):
|
||||
- Show unplayed tracks in bold
|
||||
"""
|
||||
|
||||
current_row = self._get_current_track_row_number()
|
||||
next_row = self._get_next_track_row_number()
|
||||
current_row: Optional[int] = self._get_current_track_row_number()
|
||||
next_row: Optional[int] = self._get_next_track_row_number()
|
||||
played = [
|
||||
p.row_number for p in PlaylistRows.get_played_rows(
|
||||
session, self.playlist_id)
|
||||
@ -1323,13 +1313,23 @@ class PlaylistTab(QTableWidget):
|
||||
"""Return current track row or None"""
|
||||
|
||||
current_track = self.musicmuster.current_track
|
||||
return self._plrid_to_row_number(current_track.plr_id)
|
||||
if not current_track.track_id:
|
||||
return None
|
||||
if current_track.playlist_tab == self:
|
||||
return current_track.row_number
|
||||
else:
|
||||
return None
|
||||
|
||||
def _get_next_track_row_number(self) -> Optional[int]:
|
||||
"""Return next track row or None"""
|
||||
|
||||
next_track = self.musicmuster.next_track
|
||||
return self._plrid_to_row_number(next_track.plr_id)
|
||||
if not next_track.track_id:
|
||||
return None
|
||||
if next_track.playlist_tab == self:
|
||||
return next_track.row_number
|
||||
else:
|
||||
return None
|
||||
|
||||
@staticmethod
|
||||
def _get_note_text_time(text: str) -> Optional[datetime]:
|
||||
@ -1571,17 +1571,6 @@ class PlaylistTab(QTableWidget):
|
||||
|
||||
open_in_audacity(track.path)
|
||||
|
||||
def _plrid_to_row_number(self, plrid: int) -> Optional[int]:
|
||||
"""
|
||||
Return row number of passed plrid, or None if not found
|
||||
"""
|
||||
|
||||
for row_number in range(self.rowCount()):
|
||||
if self._get_playlistrow_id(row_number) == plrid:
|
||||
return row_number
|
||||
|
||||
return None
|
||||
|
||||
def _remove_track(self, row: int) -> None:
|
||||
"""Remove track from row, making it a section header"""
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user