28 QMutexLocker lock( &mNotFinishedMutex );
29 mAlreadyFinished =
true;
32 mNotFinishedWaitCondition.wakeAll();
37 mNotFinishedMutex.lock();
38 if ( !mAlreadyFinished )
40 mNotFinishedWaitCondition.wait( &mNotFinishedMutex );
42 mNotFinishedMutex.unlock();
49 QMetaObject::invokeMethod(
this,
"setProgress", Qt::AutoConnection, Q_ARG(
double, progress ) );
void setProxyProgress(double progress)
Sets the progress (from 0 to 100) for the proxied operation.
~QgsScopedProxyProgressTask()
static QgsTaskManager * taskManager()
Returns the application's task manager, used for managing application wide background task handling...
QString description() const
Returns the task's description.
long addTask(QgsTask *task, int priority=0)
Adds a task to the manager.
Abstract base class for long running background tasks.
bool run() override
Performs the task's operation.
double progress() const
Returns the task's progress (between 0.0 and 100.0)
void setProgress(double progress)
Sets the progress (from 0 to 100) for the proxied operation.
QgsProxyProgressTask(const QString &description)
Constructor for QgsProxyProgressTask, with the specified description.
QgsScopedProxyProgressTask(const QString &description)
Constructor for QgsScopedProxyProgressTask, with the specified description.
A QgsTask shell which proxies progress reports.
void finalize(bool result)
Finalizes the task, with the specified result.