meetingrequest/mrgui/inc/cesmrfieldstorage.h
branchRCL_3
changeset 12 4ce476e64c59
parent 0 8466d47a6819
--- a/meetingrequest/mrgui/inc/cesmrfieldstorage.h	Mon Mar 15 12:39:10 2010 +0200
+++ b/meetingrequest/mrgui/inc/cesmrfieldstorage.h	Wed Mar 31 21:08:33 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). 
+* 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"
@@ -29,6 +29,8 @@
 class MESMRCalEntry;
 class MESMRFieldEventObserver;
 class CESMRFieldEventQueue;
+class CESMRPolicy;
+class CMRSystemNotifier;
 
 /**
  * CESMRFieldStorage is a base class for different storage classes.
@@ -88,9 +90,11 @@
     TInt Count() const;
     CESMRField* Field( TInt aInd ) const;
     CESMRField* FieldById( TESMREntryFieldId aId ) const;
-    virtual void InternalizeL( MESMRCalEntry& aEntry );
-    virtual void ExternalizeL( MESMRCalEntry& aEntry );
-    virtual TInt Validate( TESMREntryFieldId& aId, TBool aForceValidate );
+    void InternalizeL( MESMRCalEntry& aEntry );
+    void ExternalizeL( MESMRCalEntry& aEntry );
+    TInt Validate( TESMREntryFieldId& aId, TBool aForceValidate );
+    void ChangePolicyL( const CESMRPolicy& aNewPolicy,
+                        MESMRCalEntry& aEntry );
 
 protected:
     // C++ constructor
@@ -101,6 +105,14 @@
     
     CESMRFieldEventQueue& EventQueueL();
     
+    void RemoveField( TInt aInd );
+    
+    void InsertFieldL( CESMRField* aField, TInt aIndex );
+    
+    void ReserveL( TInt aCount );
+    
+    void Reset();
+    
 private:
     /**
      * loads fieldbuilder ecom plugin
@@ -121,6 +133,8 @@
     MESMRFieldEventObserver& iEventObserver;
     /// Own: Event Queue
     CESMRFieldEventQueue* iEventQueue;
+    /// Own: System notifier
+    CMRSystemNotifier* iSystemNotifier;
     };
 
 #endif // CESMRFIELDSTORAGE_H