GH-1053 add back update progress dialog

This commit is contained in:
Petr Mrázek
2015-07-26 17:55:29 +02:00
parent 6310f6569c
commit d8caab515a
35 changed files with 151 additions and 63 deletions

View File

@ -23,12 +23,18 @@ Task::Task(QObject *parent) : QObject(parent)
void Task::setStatus(const QString &new_status)
{
emit status(new_status);
if(m_status != new_status)
{
m_status = new_status;
emit status(m_status);
}
}
void Task::setProgress(int new_progress)
void Task::setProgress(qint64 current, qint64 total)
{
emit progress(new_progress, 100);
m_progress = current;
m_progressTotal = total;
emit progress(m_progress, m_progressTotal);
}
void Task::start()
@ -41,6 +47,7 @@ void Task::start()
void Task::emitFailed(QString reason)
{
m_running = false;
m_finished = true;
m_succeeded = false;
m_failReason = reason;
qCritical() << "Task failed: " << reason;
@ -52,6 +59,7 @@ void Task::emitSucceeded()
{
if (!m_running) { return; } // Don't succeed twice.
m_running = false;
m_finished = true;
m_succeeded = true;
qDebug() << "Task succeeded";
emit succeeded();
@ -63,6 +71,11 @@ bool Task::isRunning() const
return m_running;
}
bool Task::isFinished() const
{
return m_finished;
}
bool Task::successful() const
{
return m_succeeded;