| 123456789101112131415161718192021222324252627282930313233343536373839 |
- from PyQt5.QtWidgets import QTableWidget, QTableWidgetItem
- from core.repositories import TrackRepository
- class PlaylistTable(QTableWidget):
- def __init__(self, parent):
- super(QTableWidget, self).__init__(parent)
- self.playlist = None
- self.count = -1
- def populate(self, playlist):
- self.playlist = playlist
- track_repo = TrackRepository()
- self.clear()
- self.hideColumn(0)
- tracks = track_repo.get_by_session_id(playlist.id)
- if not tracks:
- self.insertRow(0)
- self.setItem(0, 1, QTableWidgetItem("(la liste est vide, ajoutez y vos morceaux)"))
- return
- i = 0
- for track in tracks:
- self.insertRow(i)
- item = QTableWidgetItem()
- item.setData(0, track.id)
- self.setItem(i, 0, item)
- self.setItem(i, 1, QTableWidgetItem(track.title))
- i += 1
- self.count = i
- def clear(self):
- while self.rowCount():
- self.removeRow(0)
- super().clear()
|