summaryrefslogtreecommitdiff
path: root/tidal_dl_ng/helper/gui.py
diff options
context:
space:
mode:
authorRobert Honz <exislow+github@gmail.com>2024-03-25 16:53:51 +0100
committerRobert Honz <exislow+github@gmail.com>2024-03-25 16:53:51 +0100
commite3cee90bf8fab2952d8f9ca0f69fc4dfd9802618 (patch)
tree005ad890e2d494fadb342ceb4543a73cfafe03c9 /tidal_dl_ng/helper/gui.py
parentf7361b307853999385452c5d801a4d132076c008 (diff)
downloadtidal-dl-ng-e3cee90bf8fab2952d8f9ca0f69fc4dfd9802618.tar.gz
✨ Display cover in info area.
Diffstat (limited to 'tidal_dl_ng/helper/gui.py')
-rw-r--r--tidal_dl_ng/helper/gui.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/tidal_dl_ng/helper/gui.py b/tidal_dl_ng/helper/gui.py
new file mode 100644
index 0000000..604772e
--- /dev/null
+++ b/tidal_dl_ng/helper/gui.py
@@ -0,0 +1,37 @@
+from PySide6 import QtCore, QtWidgets
+from tidalapi import Album, Mix, Playlist, Track, UserPlaylist, Video
+from tidalapi.artist import Artist
+
+
+def get_table_data(
+ item: QtWidgets.QTreeWidgetItem, column: int
+) -> Track | Video | Album | Artist | Mix | Playlist | UserPlaylist:
+ result: Track | Video | Album | Artist = item.data(column, QtCore.Qt.ItemDataRole.UserRole)
+
+ return result
+
+
+def get_results_media_item(item: QtWidgets.QTreeWidgetItem) -> Track | Video | Album | Artist:
+ result: Track | Video | Album | Artist = get_table_data(item, 1)
+
+ return result
+
+
+def get_user_list_media_item(item: QtWidgets.QTreeWidgetItem) -> Mix | Playlist | UserPlaylist:
+ result: Mix | Playlist | UserPlaylist = get_table_data(item, 1)
+
+ return result
+
+
+def set_table_data(
+ item: QtWidgets.QTreeWidgetItem, data: Track | Video | Album | Artist | Mix | Playlist | UserPlaylist, column: int
+):
+ item.setData(column, QtCore.Qt.ItemDataRole.UserRole, data)
+
+
+def set_results_media(item: QtWidgets.QTreeWidgetItem, media: Track | Video | Album | Artist):
+ set_table_data(item, media, 1)
+
+
+def set_user_list_media(item: QtWidgets.QTreeWidgetItem, media: Mix | Playlist | UserPlaylist):
+ set_table_data(item, media, 1)