creator/engine/inc/creator_calendarelement.h
branchRCL_3
changeset 21 b3cee849fa46
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/creator/engine/inc/creator_calendarelement.h	Tue Aug 31 15:15:20 2010 +0300
@@ -0,0 +1,120 @@
+/*
+* Copyright (c) 2010 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 CREATORCALENDARELEMENT_H_
+#define CREATORCALENDARELEMENT_H_
+
+#include "creator_scriptelement.h"
+
+class CCalenderInterimParameters;
+
+// Calendar elements:
+namespace creatorcalendar
+{
+    _LIT(KCalendar, "calendar");
+
+    // Calendar entry types:
+    _LIT(KType, "type");
+    _LIT(KCalTypeAppointment, "appointment");
+    _LIT(KCalTypeEvent, "event");
+    _LIT(KCalTypeReminder, "reminder");
+    _LIT(KCalTypeAnniversary, "anniversary");
+    _LIT(KCalTypeTodo, "todo");
+
+    // Calendar entry field elements:
+    _LIT(KSummary, "summary");
+    _LIT(KDescription, "description");
+    _LIT(KLocation, "location");
+    _LIT(KStarttime, "starttime");
+    _LIT(KEndtime, "endtime");
+    _LIT(KRecurrentFreq, "recurrentfrequency");
+    _LIT(KRecurrentInterval, "recurrentinterval");
+    _LIT(KRecurrentFrom, "recurrentfrom");
+    _LIT(KRecurrentTo, "recurrentto");
+    _LIT(KRepeatingCount, "repeatingcount");
+    _LIT(KAlarmtime, "alarmtime");
+    _LIT(KSynchronization, "synchronization");
+    _LIT(KOrganizername, "organizername");
+    _LIT(KOrganizeremail, "organizeremail");
+    _LIT(KAttendees, "attendees");
+    _LIT(KAttendee, "attendee");
+    _LIT(KCommonname, "commonname");
+    _LIT(KEmail, "email");
+    _LIT(KRole, "role");
+    _LIT(KStatus, "status");
+    _LIT(KPriority, "priority");
+
+    // Recurrency frequency values:
+    _LIT(KNotRepeated, "not-repeated");
+    _LIT(KWeekly, "weekly");
+    _LIT(KDaily, "daily");
+    _LIT(KMonthly, "monthly");
+    _LIT(KYearly, "yearly");
+
+    // Attendee role values:
+    _LIT(KRoleRequired, "required");
+    _LIT(KRoleOptional, "optional");
+    _LIT(KRoleNonPart, "non-participant");
+    _LIT(KRoleChair, "chair");
+    
+    // Calendar entry status values:
+    _LIT(KCalStatusTentative, "tentative");
+    _LIT(KCalStatusConfirmed, "confirmed");
+    _LIT(KCalStatusCancelled, "cancelled");
+    _LIT(KCalStatusNeedsAction, "todoneedsaction");
+    _LIT(KCalStatusCompleted, "todocompleted");
+    _LIT(KCalStatusInProcess, "todoinprocess");
+
+    // Attendee status values:
+    _LIT(KStatusNeedsAction, "needsaction");
+    _LIT(KStatusAccepted, "accepted");
+    _LIT(KStatusTentative, "tentative");
+    _LIT(KStatusConfirmed, "confirmed");
+    _LIT(KStatusDeclined, "declined");
+    _LIT(KStatusCompleted, "completed");
+    _LIT(KStatusDelegated, "delegated");
+    _LIT(KStatusInProcess, "inprocess");
+    
+    // Priority values:
+    _LIT(KPriorityHigh, "high");
+    _LIT(KPriorityMedium, "medium");
+    _LIT(KPriorityLow, "low");
+}
+
+class CCreatorCalendarElement : public CCreatorScriptElement
+{
+public:
+    static CCreatorCalendarElement* NewL(CCreatorEngine* aEngine, const TDesC& aName, const TDesC& aContext = KNullDesC);
+    void ExecuteCommandL();
+protected:
+    CCreatorCalendarElement(CCreatorEngine* aEngine);
+    
+    enum TEntryType {
+        EAppointment,
+        EEvent,
+        EReminder,
+        EAnniversary,
+        ETodo
+    };
+    
+    void FillEntryParamsL(TEntryType aType, const RPointerArray<CCreatorScriptElement>& fields, CCalenderInterimParameters* parameters); 
+};
+
+#endif /*CREATORCALENDARELEMENT_H_*/