--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/logsui/logsengine/logssymbianos/inc/logsremovestates.h Thu Jul 08 11:31:03 2010 +0300
@@ -0,0 +1,149 @@
+/*
+* 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:
+*
+*/
+
+#ifndef LOGSREMOVESTATES_H
+#define LOGSREMOVESTATES_H
+
+// INCLUDES
+#include <QList>
+#include "logsstatebase.h"
+
+class LogsRemoveStateContext;
+
+/**
+ * Base for remove states
+ */
+class LogsRemoveStateBase : public LogsStateBase {
+
+ friend class UT_LogsRemoveStates;
+
+ public:
+ LogsRemoveStateBase(LogsStateBaseContext& context, LogsRemoveStateContext& removeContext);
+ virtual ~LogsRemoveStateBase(){}
+
+ protected:
+ LogsRemoveStateContext& mContext;
+};
+
+/**
+ * State for clearing all events or specific event types from main db view
+ */
+class LogsRemoveStateClearAll : public LogsRemoveStateBase {
+
+ friend class UT_LogsRemoveStates;
+
+ public:
+ LogsRemoveStateClearAll(
+ LogsStateBaseContext& context, LogsRemoveStateContext& removeContext) :
+ LogsRemoveStateBase(context, removeContext) {}
+ virtual ~LogsRemoveStateClearAll(){}
+
+ public: // From LogsReaderStateBase
+ virtual bool enterL();
+ virtual bool continueL();
+};
+
+/**
+ * State for initializing removal from recent db view
+ */
+class LogsRemoveStateInit : public LogsRemoveStateBase {
+
+ friend class UT_LogsRemoveStates;
+
+ public:
+ LogsRemoveStateInit(
+ LogsStateBaseContext& context, LogsRemoveStateContext& removeContext) :
+ LogsRemoveStateBase(context, removeContext) {}
+ virtual ~LogsRemoveStateInit(){}
+
+ public: // From LogsReaderStateBase
+ virtual bool enterL();
+ virtual bool continueL();
+};
+
+/**
+ * State for event id based deletion of events from main db view
+ */
+class LogsRemoveStateDelete : public LogsRemoveStateBase {
+
+ friend class UT_LogsRemoveStates;
+
+ public:
+ LogsRemoveStateDelete(
+ LogsStateBaseContext& context, LogsRemoveStateContext& removeContext) :
+ LogsRemoveStateBase(context, removeContext), mRemoveIndex(0) {}
+ virtual ~LogsRemoveStateDelete(){}
+
+ public: // From LogsReaderStateBase
+ virtual bool enterL();
+ virtual bool continueL();
+ protected:
+ bool deleteNextEvent();
+ protected:
+ int mRemoveIndex;
+};
+
+/**
+ * State for deleting duplicate events from recent db view
+ */
+class LogsRemoveStateDeleteDuplicates : public LogsRemoveStateBase {
+
+ friend class UT_LogsRemoveStates;
+
+ public:
+ LogsRemoveStateDeleteDuplicates(
+ LogsStateBaseContext& context, LogsRemoveStateContext& removeContext) :
+ LogsRemoveStateBase(context, removeContext) {}
+ virtual ~LogsRemoveStateDeleteDuplicates(){}
+
+ public: // From LogsReaderStateBase
+ virtual bool enterL();
+ virtual bool continueL();
+ protected:
+ bool deleteNextEvent();
+ protected:
+ bool mDeleting;
+ QList<int> mDeleteDuplicateIds;
+};
+
+/**
+ * Completion state
+ */
+class LogsRemoveStateDone : public LogsRemoveStateBase {
+
+ friend class UT_LogsRemoveStates;
+
+ public:
+ LogsRemoveStateDone(
+ LogsStateBaseContext& context, LogsRemoveStateContext& removeContext) :
+ LogsRemoveStateBase(context, removeContext) {}
+ virtual ~LogsRemoveStateDone(){}
+
+ public: // From LogsReaderStateBase
+ virtual bool enterL();
+};
+
+
+
+#endif // LOGSREMOVESTATES_H
+
+
+// End of File
+
+
+
+