diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-06 23:45:24 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-06 23:45:24 (GMT) |
| commit | bbfbb81086897d50b67bf1494ac150eb607add72 (patch) | |
| tree | 80bab3ddb1f62f847f12947bc81fac2c091669b8 /src/tasks/Task.h | |
| parent | 8f8de875c6f7a68a3e47252a8653abb72fd398c1 (diff) | |
| download | powder-bbfbb81086897d50b67bf1494ac150eb607add72.zip powder-bbfbb81086897d50b67bf1494ac150eb607add72.tar.gz | |
Confirmation Dialogue, Save selection and multi-delete
Diffstat (limited to 'src/tasks/Task.h')
| -rw-r--r-- | src/tasks/Task.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/tasks/Task.h b/src/tasks/Task.h new file mode 100644 index 0000000..90463cb --- /dev/null +++ b/src/tasks/Task.h @@ -0,0 +1,38 @@ +/* + * Task.h + * + * Created on: Apr 6, 2012 + * Author: Simon + */ + +#ifndef TASK_H_ +#define TASK_H_ + +#include <string> +#include <pthread.h> +#include "TaskListener.h" + +class TaskListener; +class Task { +public: + void SetTaskListener(TaskListener * listener); + void Start(); + int GetProgress(); + bool GetDone(); + std::string GetStatus(); + Task() {} + virtual ~Task(); +protected: + int progress; + bool done; + std::string status; + TaskListener * listener; + pthread_t doWorkThread; + virtual void doWork(); + static void * doWork_helper(void * ref); + void notifyProgress(int progress); + void notifyStatus(std::string status); + void notifyDone(); +}; + +#endif /* TASK_H_ */ |
