Compare commits

..

4 Commits

Author SHA1 Message Date
Keith Edmunds
1502b10701 Fix (innocuous) mypy warning 2023-11-29 22:01:38 +00:00
Keith Edmunds
9cbdccb98b V3 polish 2023-11-29 15:04:50 +00:00
Keith Edmunds
3af9bef3f6 V3: fix preview button behaviour
Was asking user to select a track when next track selected.
2023-11-29 08:02:14 +00:00
Keith Edmunds
1db3990cd6 V3: add note colouring 2023-11-29 07:57:36 +00:00
2 changed files with 26 additions and 6 deletions

View File

@ -34,7 +34,7 @@ from helpers import (
set_track_metadata,
)
from log import log
from models import Playdates, PlaylistRows, Tracks
from models import NoteColours, Playdates, PlaylistRows, Tracks
HEADER_NOTES_COLUMN = 1
@ -213,6 +213,13 @@ class PlaylistModel(QAbstractTableModel):
return QBrush(QColor(Config.COLOUR_BITRATE_MEDIUM))
else:
return QBrush(QColor(Config.COLOUR_BITRATE_OK))
if column == Col.NOTE.value:
with Session() as session:
note_colour = NoteColours.get_colour(session, prd.note)
if note_colour:
return QBrush(QColor(note_colour))
else:
return QBrush()
return QBrush()

View File

@ -1,5 +1,5 @@
from pprint import pprint
from typing import Callable, cast, List, Optional, TYPE_CHECKING
from typing import Callable, cast, List, Optional, overload, TYPE_CHECKING
from PyQt6.QtCore import (
QEvent,
@ -225,6 +225,9 @@ class PlaylistTab(QTableView):
# edited
self.data_model.update_track_times()
# Deselect edited line
self.clear_selection()
def dropEvent(self, event):
if event.source() is not self or (
event.dropAction() != Qt.DropAction.MoveAction
@ -248,16 +251,24 @@ class PlaylistTab(QTableView):
self.clear_selection()
# Resize rows
self.signals.resize_rows_signal.emit(self.playlist_id)
self.resizeRowsToContents()
event.accept()
@overload
def edit(self, index: QModelIndex) -> None:
...
@overload
def edit(
self,
index: QModelIndex,
trigger: QAbstractItemView.EditTrigger,
event: Optional[QEvent],
event: Optional[QEvent]
) -> bool:
...
def edit(self, index, trigger, event):
"""
Override QAbstractItemView.edit to catch when editing starts
@ -633,11 +644,13 @@ class PlaylistTab(QTableView):
row_indexes = self._selected_row_indexes()
if len(row_indexes) != 1:
if len(row_indexes) > 1:
show_warning(
self.musicmuster, "No or multiple rows selected", "Select only one row"
self.musicmuster, "Multiple rows selected", "Select only one row"
)
return None
elif not row_indexes:
return None
return row_indexes[0]