WIP V3: fix editing headers rows
This commit is contained in:
parent
b3262b2ede
commit
6d648a56b7
@ -686,20 +686,25 @@ class PlaylistModel(QAbstractTableModel):
|
||||
)
|
||||
return False
|
||||
|
||||
if column == Col.TITLE.value or column == Col.ARTIST.value:
|
||||
track = session.get(Tracks, plr.track_id)
|
||||
if not track:
|
||||
print(f"Error retreiving track: {plr=}")
|
||||
return False
|
||||
if column == Col.TITLE.value:
|
||||
track.title = str(value)
|
||||
elif column == Col.ARTIST.value:
|
||||
track.artist = str(value)
|
||||
else:
|
||||
print(f"Error updating track: {column=}, {value=}")
|
||||
return False
|
||||
elif column == Col.NOTE.value:
|
||||
plr.note = str(value)
|
||||
if plr.track_id:
|
||||
if column == Col.TITLE.value or column == Col.ARTIST.value:
|
||||
track = session.get(Tracks, plr.track_id)
|
||||
if not track:
|
||||
print(f"Error retreiving track: {plr=}")
|
||||
return False
|
||||
if column == Col.TITLE.value:
|
||||
track.title = str(value)
|
||||
elif column == Col.ARTIST.value:
|
||||
track.artist = str(value)
|
||||
else:
|
||||
print(f"Error updating track: {column=}, {value=}")
|
||||
return False
|
||||
elif column == Col.NOTE.value:
|
||||
plr.note = str(value)
|
||||
else:
|
||||
# This is a header row
|
||||
if column == HEADER_NOTES_COLUMN:
|
||||
plr.note = str(value)
|
||||
|
||||
# Flush changes before refreshing data
|
||||
session.flush()
|
||||
|
||||
@ -113,7 +113,7 @@ class EscapeDelegate(QStyledItemDelegate):
|
||||
return True
|
||||
elif key_event.key() == Qt.Key.Key_Escape:
|
||||
discard_edits = QMessageBox.question(
|
||||
cast(QWidget, self), "Abandon edit", "Discard changes?"
|
||||
cast(QWidget, self.parent()), "Abandon edit", "Discard changes?"
|
||||
)
|
||||
if discard_edits == QMessageBox.StandardButton.Yes:
|
||||
self.closeEditor.emit(editor)
|
||||
@ -1064,7 +1064,6 @@ class PlaylistTab(QTableView):
|
||||
header_row = False
|
||||
model = cast(PlaylistModel, self.model())
|
||||
if model:
|
||||
|
||||
header_row = model.is_header_row(row_number)
|
||||
# current = row_number == self._get_current_track_row_number()
|
||||
# next_row = row_number == self._get_next_track_row_number()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user