28 lines
886 B
Python
28 lines
886 B
Python
|
|
from PySide6.QtCore import Signal, QThread
|
|
|
|
|
|
class VideoDownloader(QThread):
|
|
# Signal for the window to establish the maximum value
|
|
# of the progress bar.
|
|
setTotalProgress = Signal(int)
|
|
# Signal to increase the progress.
|
|
setCurrentProgress = Signal(int)
|
|
# Signal to be emitted when the file has been downloaded successfully.
|
|
succeeded = Signal()
|
|
|
|
def __init__(self, kontor_db, log):
|
|
super().__init__()
|
|
self.kontor_db = kontor_db
|
|
self.log = log
|
|
|
|
def run(self):
|
|
self.log.info("download videos for table MediaFile")
|
|
download_entries = self.kontor_db.get_download_list()
|
|
self.setTotalProgress.emit(len(download_entries))
|
|
for index, entry in enumerate(download_entries):
|
|
self.kontor_db.download_file(entry)
|
|
self.setCurrentProgress.emit(index)
|
|
self.succeeded.emit()
|
|
|