summaryrefslogtreecommitdiffstats
path: root/libmultimc
diff options
context:
space:
mode:
Diffstat (limited to 'libmultimc')
-rw-r--r--libmultimc/include/task.h17
-rw-r--r--libmultimc/src/task.cpp30
2 files changed, 41 insertions, 6 deletions
diff --git a/libmultimc/include/task.h b/libmultimc/include/task.h
index fc5b1d25..c8c12c02 100644
--- a/libmultimc/include/task.h
+++ b/libmultimc/include/task.h
@@ -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;
};
diff --git a/libmultimc/src/task.cpp b/libmultimc/src/task.cpp
index 3e30827b..780c3b38 100644
--- a/libmultimc/src/task.cpp
+++ b/libmultimc/src/task.cpp
@@ -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);
}