Row times updating working

This commit is contained in:
Keith Edmunds 2024-06-02 16:34:30 +01:00
parent 4ec1c0e09c
commit 983716e009
2 changed files with 23 additions and 21 deletions

View File

@ -1025,6 +1025,9 @@ class Window(QMainWindow, Ui_MainWindow):
# Play (new) current track # Play (new) current track
track_sequence.current.play(position) track_sequence.current.play(position)
# Update clocks now, don't wait for next tick
self.update_clocks()
# Show closing volume graph # Show closing volume graph
if track_sequence.current.fade_graph: if track_sequence.current.fade_graph:
track_sequence.current.fade_graph.GraphWidget = self.widgetFadeVolume track_sequence.current.fade_graph.GraphWidget = self.widgetFadeVolume

View File

@ -1423,24 +1423,23 @@ class PlaylistModel(QAbstractTableModel):
prd = self.playlist_rows[row_number] prd = self.playlist_rows[row_number]
# Reset start_time if this is the current row # Reset start_time if this is the current row
if row_number == track_sequence.current.plr_rownum: if track_sequence.current:
prd.start_time = track_sequence.current.start_time if row_number == track_sequence.current.row_number:
prd.end_time = track_sequence.current.end_time prd.start_time = track_sequence.current.start_time
update_rows.append(row_number) prd.end_time = track_sequence.current.end_time
if not next_start_time: update_rows.append(row_number)
next_start_time = prd.end_time if not next_start_time:
continue next_start_time = prd.end_time
continue
# Set start time for next row if we have a current track # Set start time for next row if we have a current track
if ( if track_sequence.next and track_sequence.current.end_time:
row_number == track_sequence.next.plr_rownum if row_number == track_sequence.next.row_number:
and track_sequence.current.end_time prd.start_time = track_sequence.current.end_time
): prd.end_time = prd.start_time + dt.timedelta(milliseconds=prd.duration)
prd.start_time = track_sequence.current.end_time next_start_time = prd.end_time
prd.end_time = prd.start_time + dt.timedelta(milliseconds=prd.duration) update_rows.append(row_number)
next_start_time = prd.end_time continue
update_rows.append(row_number)
continue
# Don't update times for tracks that have been played # Don't update times for tracks that have been played
if prd.played: if prd.played:
@ -1449,11 +1448,11 @@ class PlaylistModel(QAbstractTableModel):
# If we're between the current and next row, zero out # If we're between the current and next row, zero out
# times # times
if ( if (
track_sequence.current.plr_rownum is not None track_sequence.current
and track_sequence.next.plr_rownum is not None and track_sequence.next
and track_sequence.current.plr_rownum and track_sequence.current.row_number
< row_number < row_number
< track_sequence.next.plr_rownum < track_sequence.next.row_number
): ):
prd.start_time = None prd.start_time = None
prd.end_time = None prd.end_time = None