meetingrequest/mrentry/inc/cesmrmeetingrequestentry.h
branchRCL_3
changeset 12 4ce476e64c59
parent 1 12c456ceeff2
child 14 b13141f05c3d
--- a/meetingrequest/mrentry/inc/cesmrmeetingrequestentry.h	Mon Mar 15 12:39:10 2010 +0200
+++ b/meetingrequest/mrentry/inc/cesmrmeetingrequestentry.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) 2007-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"
@@ -48,7 +48,7 @@
      * @param aConflictsExists ETrue, if conflicts exists
      * @param aESMRInputParams ESMR input parameters structure
      */
-    static CESMRMeetingRequestEntry* NewL(
+    IMPORT_C static CESMRMeetingRequestEntry* NewL(
             const CCalEntry& aEntry,
             CMRMailboxUtils& aMRMailboxUtils,
             MESMRCalDbMgr& aCalDb,
@@ -58,7 +58,7 @@
     /**
      * C++ destructor
      */
-    ~CESMRMeetingRequestEntry();
+    IMPORT_C ~CESMRMeetingRequestEntry();
 
 public: // From MESMRMeetingRequestEntry
     TESMRCalEntryType Type() const;
@@ -76,8 +76,8 @@
             TESMRRecurrenceValue& aRecurrence,
             TTime& aUntil) const;
     TESMRRecurrenceModifyingRule RecurrenceModRule() const;
-    void SetModifyingRuleL(
-            TESMRRecurrenceModifyingRule aRule );
+    void SetModifyingRuleL(TESMRRecurrenceModifyingRule aRule, 
+    		const TBool aTypeChanging = EFalse );
     void SetAllDayEventL(
             TTime aStartDate,
             TTime aEndDate );
@@ -85,10 +85,14 @@
     TBool IsStoredL() const;
     TBool IsSentL() const;
     TBool IsEntryEditedL() const;
+    TBool IsEntryTypeChangedL() const;
     void GetAlarmL(
             MESMRCalEntry::TESMRAlarmType& aAlarmType,
             TTime &aAlarmTime );
     const CCalEntry& OriginalEntry();
+    void UpdateEntryAfterStoringL();
+    void SetDefaultValuesToEntryL();
+    CCalEntry* CloneEntryLC( TESMRCalEntryType aType ) const;
     TESMRRole RoleL() const;
     TBool Conflicts() const;
     void MarkMeetingCancelledL();
@@ -119,7 +123,6 @@
     TInt AttendeeCountL(
             TUint aFilterFlags ) const;
     CCalEntry* RemoveInstanceFromSeriesL();
-    void SetDefaultValuesToEntryL();
     TBool IsOpenedFromMail() const;
     void GetAddedAttendeesL(
             RArray<CCalAttendee*>& aAttendeeArray,
@@ -127,14 +130,26 @@
     void GetRemovedAttendeesL(
             RArray<CCalAttendee*>& aAttendeeArray,
             TUint aFilterFlags ) const;
-    void UpdateEntryAfterStoringL();
     void UpdateChildEntriesSeqNumbersL();
     TESMRMailPlugin CurrentPluginL();
-    TFSMailMsgId CurrentMailBoxIdL();
     void UpdateTimeStampL();
-    TBool AnyInstanceOnDayL(
+    TBool AnyInstancesBetweenTimePeriodL(
+                TTime& aStart,
+                TTime& aEnd );
+    void GetFirstInstanceStartAndEndTimeL(
                 TTime& aStart,
-                TTime& aEnd );    
+                TTime& aEnd );
+    const TDesC& CalendarOwnerAddressL() const;
+    CMRMailboxUtils& MailboxUtils() const;
+    void UpdateComparativeEntry(
+            CCalEntry* aNewComparativeEntry );
+    MESMRCalDbMgr& GetDBMgr();
+    TBool SupportsCapabilityL( 
+            MESMRCalEntry::TMREntryCapability aCapability ) const;
+    TBool ContainsRemoteAttachmentsL();    
+    TBool SendCanellationAvailable();
+    void SetSendCanellationAvailable (TBool aSendCanellation);
+    void SetTypeChanged( TBool aTypeChanged );
     
 private: // Implementaton
     CESMRMeetingRequestEntry(
@@ -145,14 +160,13 @@
     void ConstructL(
             const CCalEntry& aEntry );
     HBufC* ReplaceCharactersFromBufferLC(
-    		const TDesC& aTarget, 
-            const TDesC& aFindString, 
+            const TDesC& aTarget,
+            const TDesC& aFindString,
             const TDesC& aReplacement );
 
 private: // Data
     /// Own: Calendar entry
     CCalEntry* iEntry;
-    CCalEntry* iBackupEntry;
     /// Own: Forward calendar entry
     CCalEntry* iForwardEntry;
     /// Ref: Reference to mailbox utilities
@@ -167,10 +181,16 @@
     TESMRInputParams* iESMRInputParams;
     /// Own: Orginal entry
     CCalEntry* iOrginalEntry;
-    /// Ref: Entry received as parameter
+    /// Own: Entry received as parameter
     CCalEntry* iParameterEntry;
     /// Own: Current FS Email plug-in
     TESMRMailPlugin iCurrentFSEmailPlugin;
+    /// Flag for removing attachments
+    TBool iRemoveAttachments;
+    /// Flag for send canellation
+    TBool iSendCanellation;
+    // Own: Indicates if the entry is type changed or not
+    TBool iTypeChanged;
     };
 
 #endif // CESMRMEETINGREQUESTENTRY_H