activityfw/testapplications/nftapps/lptapp/savedelwidget.cpp
changeset 117 c63ee96dbe5f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/activityfw/testapplications/nftapps/lptapp/savedelwidget.cpp	Thu Sep 16 12:11:40 2010 +0100
@@ -0,0 +1,140 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+#include "savedelwidget.h"
+
+
+
+savedelwidget::savedelwidget(QObject* activityStorage, QObject* activityManager, QTextStream* stream, QGraphicsItem *parent)
+    : basewidget(activityStorage, activityManager, stream, parent)
+{
+    mStartTestButton->setText("Save");
+}
+
+savedelwidget::~savedelwidget()
+{
+}
+
+
+void savedelwidget::timeout()
+{
+    if(mAction == "predel") {
+        if(mItemsCounter<mItems) {
+            QString name = mActivities.at(mItemsCounter);
+            bool ok = removeActivity(name);
+            mItemsCounter++;
+            if(!ok) {           
+                setError("remove activity");
+                return;
+            }            
+            updateItemLabel(mItemsCounter);
+        }
+        else {
+            mItems=Items();
+            mTimes=Times();
+            mItemsCounter = 0;
+            mAction = "save";
+            updateActionLabel();
+            //updateItemLabel(mItemsCounter);
+            updateTimeLabel(mTimesCounter);
+            logFirst();
+            prepareSave();
+        }
+    }
+    else if(mAction=="save") {
+        if(mTimesCounter==mTimes) {
+            endNormally();
+            return;
+        }
+        if(mItemsCounter<mItems) {
+
+            bool ok = saveActivity(mItemsCounter);
+            if(!ok) {                
+                setError("save activity");
+                return;
+            }
+            mItemsCounter++;
+            updateItemLabel(mItemsCounter);
+        }
+        else {
+            if(TestCheckBoxChecked()) {
+                bool ok = activities();
+                if(!ok) {
+                    setError("get activities list");                    
+                    return;
+                }
+                ok = checkActNum();
+                if(!ok) {
+                    setError("unexpected act number");
+                    return;
+                }
+                mItemsCounter = 0;
+                mAction = "remove";
+                updateActionLabel();
+                //updateItemLabel(mItemsCounter);
+                
+            }
+            else {
+                mTimesCounter++;
+                mItemsCounter = 0;
+                //updateItemLabel(mItemsCounter);
+                updateTimeLabel(mTimesCounter);
+            }           
+        }
+    }
+    else if(mAction=="remove") {
+        if(mItemsCounter<mItems) {
+
+            QString name = mActivities.at(mItemsCounter);
+            bool ok = removeActivity(name);
+            mItemsCounter++;
+            if(!ok) {                
+                setError("remove activity");
+                return;
+            }     
+            updateItemLabel(mItemsCounter);
+        }
+        else {
+            mTimesCounter++;
+            mItemsCounter = 0;
+            //updateItemLabel(mItemsCounter);
+            updateTimeLabel(mTimesCounter);
+            mAction = "save";
+            updateActionLabel();
+        }
+    }
+    else {
+        setError("unexpected state");
+    }
+}
+
+void savedelwidget::test()
+{   
+    mTimesCounter = 0;
+    mStatusValueLabel->setPlainText("Pending");
+    enableControls(false);
+    *mStream<<tr("*Save del start*\n");
+    logSettings();
+    mStream->flush();
+    mAction = "predel";    
+    bool ok = activities();
+    if(!ok) {
+        setError("get activities list");
+        return;
+    }
+    mItems = mActivities.count();
+    basewidget::test();
+}