naturtag.app.threadpool module#
Adapted from examples in Python & Qt6 by Martin Fitzpatrick
- class naturtag.app.threadpool.ProgressBar(**kwargs)#
Bases:
QProgressBar
Shared progress bar, updated by ThreadPool
- add(amount=1)#
- advance(amount=1)#
- fadein()#
- fadeout()#
- reset(self) None #
- schedule_reset()#
After a delay, if no new tasks have been added, reset and hide the progress bar
- staticMetaObject = PySide6.QtCore.QMetaObject("ProgressBar" inherits "QProgressBar": Methods: #41 type=Slot, signature=advance(int), parameters=int )#
- class naturtag.app.threadpool.ThreadPool(**kwargs)#
Bases:
QThreadPool
Thread pool that enqueues jobs to ber run from separate thread(s), and updates a progress bar.
- cancel()#
Cancel all queued tasks and reset progress bar. Currently running tasks will be allowed to complete.
- schedule(callback, priority=Priority.NormalPriority, total_results=None, increment_length=False, **kwargs)#
Schedule a task to be run by the next available worker thread
- Return type:
- staticMetaObject = PySide6.QtCore.QMetaObject("ThreadPool" inherits "QThreadPool": )#
- class naturtag.app.threadpool.Worker(callback, increment_length=False, **kwargs)#
Bases:
QRunnable
A worker thread that takes a callback (and optional args/kwargs), and updates progress when done.
- run(self) None #
- class naturtag.app.threadpool.WorkerSignals#
Bases:
QObject
Signals used by a worker thread (can’t be set directly on a QRunnable)
- on_error#
Return exception info on error
- on_progress#
Increment progress bar
- on_result#
Return result on completion
- staticMetaObject = PySide6.QtCore.QMetaObject("WorkerSignals" inherits "QObject": Methods: #5 type=Signal, signature=on_error(PyObject), parameters=PyObject #6 type=Signal, signature=on_result(PyObject), parameters=PyObject #7 type=Signal, signature=on_progress(int), parameters=int )#