Compare commits
No commits in common. "ca1b11b5458b594b7c37955e35401997e5835834" and "4a83e9af86af89bff0819313137cc378ccfcd861" have entirely different histories.
ca1b11b545
...
4a83e9af86
@ -224,7 +224,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
|||||||
Close tab unless it holds the curren or next track
|
Close tab unless it holds the curren or next track
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if hasattr(self.tabPlaylist.widget(index), 'playlist_id'):
|
if hasattr(self.tabPlaylist.widget(index), 'playlist'):
|
||||||
if self.tabPlaylist.widget(index) == (
|
if self.tabPlaylist.widget(index) == (
|
||||||
self.current_track_playlist_tab):
|
self.current_track_playlist_tab):
|
||||||
self.statusbar.showMessage(
|
self.statusbar.showMessage(
|
||||||
|
|||||||
@ -329,8 +329,6 @@ class PlaylistTab(QTableWidget):
|
|||||||
|
|
||||||
# Put an item in COL_USERDATA for later
|
# Put an item in COL_USERDATA for later
|
||||||
item: QTableWidgetItem = QTableWidgetItem()
|
item: QTableWidgetItem = QTableWidgetItem()
|
||||||
# Add row metadata
|
|
||||||
item.setData(self.ROW_METADATA, 0)
|
|
||||||
self.setItem(row, self.COL_USERDATA, item)
|
self.setItem(row, self.COL_USERDATA, item)
|
||||||
|
|
||||||
# Add track details to columns
|
# Add track details to columns
|
||||||
@ -1084,19 +1082,11 @@ class PlaylistTab(QTableWidget):
|
|||||||
note = Notes.get_by_id(session, note_id)
|
note = Notes.get_by_id(session, note_id)
|
||||||
return note
|
return note
|
||||||
|
|
||||||
def _get_played_track_rows(self) -> List[int]:
|
def _get_played_track_rows(self) -> Optional[List[int]]:
|
||||||
"""Return rows marked as played, or None"""
|
"""Return rows marked as played, or None"""
|
||||||
|
|
||||||
return self._meta_search(RowMeta.PLAYED, one=False)
|
return self._meta_search(RowMeta.PLAYED, one=False)
|
||||||
|
|
||||||
def _get_unplayed_track_rows(self) -> Optional[List[int]]:
|
|
||||||
"""Return rows marked as unplayed, or None"""
|
|
||||||
|
|
||||||
unplayed_rows: Set[int] = set(self._meta_notset(RowMeta.PLAYED))
|
|
||||||
notes_rows: Set[int] = set(self._get_notes_rows())
|
|
||||||
|
|
||||||
return list(unplayed_rows - notes_rows)
|
|
||||||
|
|
||||||
def _get_row_start_time(self, row: int) -> Optional[datetime]:
|
def _get_row_start_time(self, row: int) -> Optional[datetime]:
|
||||||
try:
|
try:
|
||||||
if self.item(row, self.COL_START_TIME):
|
if self.item(row, self.COL_START_TIME):
|
||||||
@ -1242,8 +1232,7 @@ class PlaylistTab(QTableWidget):
|
|||||||
|
|
||||||
matches = []
|
matches = []
|
||||||
for row in range(self.rowCount()):
|
for row in range(self.rowCount()):
|
||||||
row_meta = self._meta_get(row)
|
if self._meta_get(row):
|
||||||
if row_meta is not None:
|
|
||||||
if not self._meta_get(row) & (1 << metadata):
|
if not self._meta_get(row) & (1 << metadata):
|
||||||
matches.append(row)
|
matches.append(row)
|
||||||
|
|
||||||
@ -1366,15 +1355,15 @@ class PlaylistTab(QTableWidget):
|
|||||||
|
|
||||||
# Need to allow multiple rows to be selected
|
# Need to allow multiple rows to be selected
|
||||||
self.setSelectionMode(QtWidgets.QAbstractItemView.MultiSelection)
|
self.setSelectionMode(QtWidgets.QAbstractItemView.MultiSelection)
|
||||||
|
notes_rows: List[int] = self._get_notes_rows()
|
||||||
self.clearSelection()
|
self.clearSelection()
|
||||||
|
|
||||||
if played:
|
played_rows: List[int] = self._get_played_track_rows()
|
||||||
rows = self. _get_played_track_rows()
|
for row in range(self.rowCount()):
|
||||||
else:
|
if row in notes_rows:
|
||||||
rows = self._get_unplayed_track_rows()
|
continue
|
||||||
|
if row in played_rows == played:
|
||||||
for row in rows:
|
self.selectRow(row)
|
||||||
self.selectRow(row)
|
|
||||||
|
|
||||||
# Reset extended selection
|
# Reset extended selection
|
||||||
self.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
|
self.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user