Fix some type hints
This commit is contained in:
parent
1c56505ab0
commit
f22f209bee
@ -268,7 +268,7 @@ class PlaylistTab(QTableWidget):
|
||||
set note row to be end of playlist.
|
||||
"""
|
||||
|
||||
row: int = self.get_selected_row()
|
||||
row: Optional[int] = self.get_selected_row()
|
||||
if not row:
|
||||
row = self.rowCount()
|
||||
|
||||
@ -277,7 +277,7 @@ class PlaylistTab(QTableWidget):
|
||||
dlg.setInputMode(QInputDialog.TextInput)
|
||||
dlg.setLabelText("Note:")
|
||||
dlg.resize(500, 100)
|
||||
ok: bool = dlg.exec()
|
||||
ok: int = dlg.exec()
|
||||
if ok:
|
||||
with Session() as session:
|
||||
note: Notes = Notes(
|
||||
@ -407,6 +407,8 @@ class PlaylistTab(QTableWidget):
|
||||
|
||||
# Mark next-track row as current
|
||||
current_row = self._get_next_track_row()
|
||||
if not current_row:
|
||||
return
|
||||
self._set_current_track_row(current_row)
|
||||
|
||||
# Mark current row as played
|
||||
@ -656,9 +658,9 @@ class PlaylistTab(QTableWidget):
|
||||
next_row: Optional[int] = self._get_next_track_row()
|
||||
notes: List[int] = self._get_notes_rows()
|
||||
played: Optional[List[int]] = self._get_played_track_rows()
|
||||
unreadable: Optional[List[int]] = self._get_unreadable_track_rows()
|
||||
unreadable: List[int] = self._get_unreadable_track_rows()
|
||||
|
||||
last_played_str: Optional[str]
|
||||
last_played_str: str
|
||||
last_playedtime: Optional[datetime]
|
||||
next_start_time: Optional[datetime] = None
|
||||
note_colour: str
|
||||
@ -811,8 +813,8 @@ class PlaylistTab(QTableWidget):
|
||||
open_in_audacity(track.path)
|
||||
|
||||
@staticmethod
|
||||
def _calculate_track_end_time(track: Tracks,
|
||||
start: datetime) -> Optional[datetime]:
|
||||
def _calculate_track_end_time(
|
||||
track: Tracks, start: Optional[datetime]) -> Optional[datetime]:
|
||||
"""Return this track's end time given its start time"""
|
||||
|
||||
if start is None:
|
||||
@ -828,7 +830,7 @@ class PlaylistTab(QTableWidget):
|
||||
|
||||
self.menu.exec_(self.mapToGlobal(pos))
|
||||
|
||||
def _copy_path(self, row: int) -> Optional[str]:
|
||||
def _copy_path(self, row: int) -> None:
|
||||
"""
|
||||
If passed row is track row, copy the track path to the clipboard.
|
||||
Otherwise, return None.
|
||||
@ -842,7 +844,7 @@ class PlaylistTab(QTableWidget):
|
||||
with Session() as session:
|
||||
track: Optional[Tracks] = self._get_row_track_object(row, session)
|
||||
if track:
|
||||
cb: QApplication.clipboard = QApplication.clipboard()
|
||||
cb = QApplication.clipboard()
|
||||
cb.clear(mode=cb.Clipboard)
|
||||
cb.setText(track.path, mode=cb.Clipboard)
|
||||
|
||||
@ -1035,12 +1037,20 @@ class PlaylistTab(QTableWidget):
|
||||
def _get_current_track_row(self) -> Optional[int]:
|
||||
"""Return row marked as current, or None"""
|
||||
|
||||
return self._meta_search(RowMeta.CURRENT)
|
||||
row = self._meta_search(RowMeta.CURRENT)
|
||||
if len(row) > 0:
|
||||
return row[0]
|
||||
else:
|
||||
return None
|
||||
|
||||
def _get_next_track_row(self) -> Optional[int]:
|
||||
"""Return row marked as next, or None"""
|
||||
|
||||
return self._meta_search(RowMeta.NEXT)
|
||||
row = self._meta_search(RowMeta.NEXT)
|
||||
if len(row) > 0:
|
||||
return row[0]
|
||||
else:
|
||||
return None
|
||||
|
||||
@staticmethod
|
||||
def _get_note_text_time(text: str) -> Optional[datetime]:
|
||||
@ -1122,7 +1132,7 @@ class PlaylistTab(QTableWidget):
|
||||
|
||||
return self._meta_notset(RowMeta.NOTE)
|
||||
|
||||
def _get_unreadable_track_rows(self) -> Optional[List[int]]:
|
||||
def _get_unreadable_track_rows(self) -> List[int]:
|
||||
"""Return rows marked as unreadable, or None"""
|
||||
|
||||
return self._meta_search(RowMeta.UNREADABLE, one=False)
|
||||
@ -1228,7 +1238,7 @@ class PlaylistTab(QTableWidget):
|
||||
if next_row is not None:
|
||||
self._meta_clear_attribute(next_row, RowMeta.NEXT)
|
||||
|
||||
def _meta_get(self, row: int) -> Optional[int]:
|
||||
def _meta_get(self, row: int) -> int:
|
||||
"""Return row metadata"""
|
||||
|
||||
return self.item(row, self.COL_USERDATA).data(self.ROW_METADATA)
|
||||
@ -1249,8 +1259,7 @@ class PlaylistTab(QTableWidget):
|
||||
|
||||
return matches
|
||||
|
||||
def _meta_search(self, metadata: int, one: bool = True) -> Union[
|
||||
List[int], int, None]:
|
||||
def _meta_search(self, metadata: int, one: bool = True) -> List[int]:
|
||||
"""
|
||||
Search rows for metadata.
|
||||
|
||||
@ -1269,10 +1278,8 @@ class PlaylistTab(QTableWidget):
|
||||
if not one:
|
||||
return matches
|
||||
|
||||
if len(matches) == 0:
|
||||
return None
|
||||
elif len(matches) == 1:
|
||||
return matches[0]
|
||||
if len(matches) <= 1:
|
||||
return matches
|
||||
else:
|
||||
ERROR(
|
||||
f"Multiple matches for metadata '{metadata}' found "
|
||||
@ -1288,9 +1295,9 @@ class PlaylistTab(QTableWidget):
|
||||
|
||||
current_metadata: int = self._meta_get(row)
|
||||
if not current_metadata:
|
||||
new_metadata = (1 << attribute)
|
||||
new_metadata: int = (1 << attribute)
|
||||
else:
|
||||
new_metadata: int = self._meta_get(row) | (1 << attribute)
|
||||
new_metadata = self._meta_get(row) | (1 << attribute)
|
||||
self.item(row, self.COL_USERDATA).setData(
|
||||
self.ROW_METADATA, new_metadata)
|
||||
|
||||
@ -1399,8 +1406,8 @@ class PlaylistTab(QTableWidget):
|
||||
- Check row is a track row
|
||||
- Check track is readable
|
||||
- Mark as next track
|
||||
- Notify musicmuster
|
||||
- Update display
|
||||
- Notify musicmuster
|
||||
"""
|
||||
|
||||
DEBUG(f"_set_next({row=})")
|
||||
@ -1421,12 +1428,12 @@ class PlaylistTab(QTableWidget):
|
||||
# Mark as next track
|
||||
self._set_next_track_row(row)
|
||||
|
||||
# Notify musicmuster
|
||||
self.musicmuster.this_is_the_next_track(self, track)
|
||||
|
||||
# Update display
|
||||
self.update_display(session)
|
||||
|
||||
# Notify musicmuster
|
||||
self.musicmuster.this_is_the_next_track(self, track)
|
||||
|
||||
def _set_row_bold(self, row: int, bold: bool = True) -> None:
|
||||
"""Make row bold (bold=True) or not bold"""
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user