forked from Wobbl/Wobuzz
Added loading of playlists to the process-dock.
This commit is contained in:
parent
6786a3dcd8
commit
301896e12c
4 changed files with 48 additions and 19 deletions
|
@ -5,14 +5,14 @@ from PyQt6.QtWidgets import QWidget, QDockWidget, QScrollArea, QVBoxLayout
|
|||
|
||||
from .process import BackgroundProcess
|
||||
|
||||
PROGRESS_UPDATE_RATE = 30
|
||||
PROGRESS_UPDATE_RATE = 10
|
||||
PROGRESS_UPDATE_INTERVAL = 1000 // PROGRESS_UPDATE_RATE
|
||||
|
||||
|
||||
class ProcessDock(QDockWidget):
|
||||
# we need a signal for self.on_background_job_start() because PyQt6 doesn't allow some operations to be performed
|
||||
# from a different thread
|
||||
job_started_signal = pyqtSignal(str)
|
||||
job_started_signal = pyqtSignal(str, str, int, object)
|
||||
|
||||
def __init__(self, app, parent=None):
|
||||
super().__init__(parent)
|
||||
|
@ -54,17 +54,18 @@ class ProcessDock(QDockWidget):
|
|||
for process in self.processes.values():
|
||||
process.update_progress()
|
||||
|
||||
def on_background_job_start(self, job):
|
||||
match job:
|
||||
case "track_caching":
|
||||
self.add_process(
|
||||
job,
|
||||
BackgroundProcess(
|
||||
"Loading Track",
|
||||
self.process_container,
|
||||
"Loading next track in the background so it starts immediately."
|
||||
)
|
||||
)
|
||||
def on_background_job_start(self, job_title: str, description: str, steps: int, getter):
|
||||
process = BackgroundProcess(
|
||||
job_title,
|
||||
self.process_container,
|
||||
description,
|
||||
steps
|
||||
)
|
||||
|
||||
if getter is not None:
|
||||
process.get_progress = getter
|
||||
|
||||
self.add_process(job_title, process)
|
||||
|
||||
def on_background_job_stop(self, job):
|
||||
if job in self.processes:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue