Made the version list load in the background on startup.

Resolves JIRA issue MMC-11:
	https://jira.forkk.net/browse/MMC-11
This commit is contained in:
Andrew
2013-05-06 17:19:20 -05:00
parent 2fe6bc47ed
commit 7e3592bee8
5 changed files with 98 additions and 24 deletions

View File

@ -48,8 +48,15 @@ public slots:
void setProgress(int progress);
signals:
void taskStarted(Task* task);
void taskEnded(Task* task);
void started(Task* task);
void ended(Task* task);
void started();
void ended();
void statusChanged(Task* task, const QString& status);
void progressChanged(Task* task, int progress);
void statusChanged(const QString& status);
void progressChanged(int progress);
@ -58,6 +65,12 @@ protected:
virtual void run();
virtual void executeTask() = 0;
virtual void emitStarted();
virtual void emitEnded();
virtual void emitStatusChange(const QString &status);
virtual void emitProgressChange(int progress);
QString status;
int progress;
};

View File

@ -29,7 +29,7 @@ QString Task::getStatus() const
void Task::setStatus(const QString &status)
{
this->status = status;
emit statusChanged(status);
emitStatusChange(status);
}
int Task::getProgress() const
@ -45,7 +45,7 @@ void Task::calcProgress(int parts, int whole)
void Task::setProgress(int progress)
{
this->progress = progress;
emit progressChanged(progress);
emitProgressChange(progress);
}
void Task::startTask()
@ -55,7 +55,29 @@ void Task::startTask()
void Task::run()
{
emit taskStarted(this);
emitStarted();
executeTask();
emit taskEnded(this);
emitEnded();
}
void Task::emitStarted()
{
emit started();
emit started(this);
}
void Task::emitEnded()
{
emit ended();
emit ended(this);
}
void Task::emitStatusChange(const QString &status)
{
emit statusChanged(status);
}
void Task::emitProgressChange(int progress)
{
emit progressChanged(progress);
}