emailuis/nmailuiengine/inc/nmoperation.h
changeset 20 ecc8def7944a
parent 18 578830873419
child 23 2dc6caa42ec3
--- a/emailuis/nmailuiengine/inc/nmoperation.h	Fri Apr 16 14:51:52 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmoperation.h	Mon May 03 12:23:15 2010 +0300
@@ -32,10 +32,11 @@
     NmOperation(QObject *parent = 0);
     virtual ~NmOperation();    
     bool isRunning() const;
+    void addPreliminaryOperation(NmOperation *operation);
     
 signals:
     void operationProgressChanged(int progress);
-    void operationCompleted(int result);
+    void operationCompleted(int result = 0);
     void operationCancelled();
 
 public slots:
@@ -44,17 +45,22 @@
     void updateOperationProgress(int progress);
 
 protected slots:
-    virtual void runAsyncOperation() = 0;
+    virtual void runAsyncOperation();
+    virtual void handlePreliminaryOperationFinished();
 
 protected:
     virtual void doCompleteOperation();
     virtual void doCancelOperation();
     virtual void doUpdateOperationProgress();
+    virtual void doRunAsyncOperation() = 0;
 
+protected:
+    QTimer *mTimer;
+    
 private:
-    QTimer *mTimer;
     int mProgress;
     bool mIsRunning;
+    QList<NmOperation *> mPreliminaryOperations;
 };
 
 #endif /* NMOPERATION_H_ */