✨ Make use of get table data helper functions.
This commit is contained in:
+23
-5
@@ -573,7 +573,7 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
|
|||||||
self.tidal.settings_apply()
|
self.tidal.settings_apply()
|
||||||
|
|
||||||
def on_list_items_show(self, item: QtWidgets.QTreeWidgetItem):
|
def on_list_items_show(self, item: QtWidgets.QTreeWidgetItem):
|
||||||
media_list: Album | Playlist = item.data(1, QtCore.Qt.ItemDataRole.UserRole)
|
media_list: Album | Playlist = get_user_list_media_item(item)
|
||||||
|
|
||||||
# Only if clicked item is not a top level item.
|
# Only if clicked item is not a top level item.
|
||||||
if media_list:
|
if media_list:
|
||||||
@@ -598,7 +598,7 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
|
|||||||
) -> None:
|
) -> None:
|
||||||
if point:
|
if point:
|
||||||
item = self.tr_lists_user.itemAt(point)
|
item = self.tr_lists_user.itemAt(point)
|
||||||
media_list = item.data(1, QtCore.Qt.ItemDataRole.UserRole)
|
media_list = get_user_list_media_item(item)
|
||||||
|
|
||||||
# Get all results
|
# Get all results
|
||||||
media_items: [Track | Video | Album] = items_results_all(media_list)
|
media_items: [Track | Video | Album] = items_results_all(media_list)
|
||||||
@@ -614,6 +614,24 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
|
|||||||
self.threadpool.start(worker)
|
self.threadpool.start(worker)
|
||||||
|
|
||||||
def on_download_results(self):
|
def on_download_results(self):
|
||||||
|
items: [QtWidgets.QTreeWidgetItem] = self.tr_results.selectedItems()
|
||||||
|
|
||||||
|
if len(items) == 0:
|
||||||
|
logger_gui.error("Please select a row first.")
|
||||||
|
else:
|
||||||
|
for item in items:
|
||||||
|
media: Track | Album | Playlist | Video | Artist = get_results_media_item(item)
|
||||||
|
|
||||||
|
# Populate child
|
||||||
|
child: QtWidgets.QTableWidgetItem = QtWidgets.QTableWidgetItem()
|
||||||
|
child.setText(0, "1")
|
||||||
|
set_results_media(child, media)
|
||||||
|
child.setText(2, media.artist)
|
||||||
|
child.setText(3, "tbd")
|
||||||
|
child.setText(4, "")
|
||||||
|
self.ta_queue_dl.addChild(child)
|
||||||
|
|
||||||
|
def on_download_results1(self):
|
||||||
self.pb_download.setEnabled(False)
|
self.pb_download.setEnabled(False)
|
||||||
self.pb_download.setText("Downloading...")
|
self.pb_download.setText("Downloading...")
|
||||||
|
|
||||||
@@ -624,11 +642,11 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
|
|||||||
else:
|
else:
|
||||||
# If it is an artist resolve it with all available albums of him
|
# If it is an artist resolve it with all available albums of him
|
||||||
if len(items) == 1:
|
if len(items) == 1:
|
||||||
tmp_media: QtWidgets.QTreeWidgetItem = items[0].data(1, QtCore.Qt.ItemDataRole.UserRole)
|
tmp_media: Track | Video | Album | Artist = get_results_media_item(items[0])
|
||||||
|
|
||||||
if isinstance(tmp_media, Artist):
|
if isinstance(tmp_media, Artist):
|
||||||
tmp_children: [QtWidgets.QTreeWidgetItem] = []
|
tmp_children: [QtWidgets.QTreeWidgetItem] = []
|
||||||
is_dummy_child = not bool(items[0].child(0).data(1, QtCore.Qt.ItemDataRole.UserRole))
|
is_dummy_child = not bool(get_results_media_item(items[0].child(0)))
|
||||||
|
|
||||||
# Use the expand function to retrieve all albums.
|
# Use the expand function to retrieve all albums.
|
||||||
if is_dummy_child:
|
if is_dummy_child:
|
||||||
@@ -645,7 +663,7 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
|
|||||||
items_pos_last = len(items) - 1
|
items_pos_last = len(items) - 1
|
||||||
|
|
||||||
for item in items:
|
for item in items:
|
||||||
media: Track | Album | Playlist | Video | Artist = item.data(1, QtCore.Qt.ItemDataRole.UserRole)
|
media: Track | Album | Playlist | Video | Artist = get_results_media_item(item)
|
||||||
# Skip only if Track item, skip option set and the item is not the last in the list.
|
# Skip only if Track item, skip option set and the item is not the last in the list.
|
||||||
download_delay: bool = bool(
|
download_delay: bool = bool(
|
||||||
isinstance(media, Track | Video)
|
isinstance(media, Track | Video)
|
||||||
|
|||||||
Reference in New Issue
Block a user