williamr@4: // Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). williamr@4: // All rights reserved. williamr@4: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@4: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@4: // williamr@4: // Initial Contributors: williamr@4: // Nokia Corporation - initial contribution. williamr@4: // williamr@4: // Contributors: williamr@4: // williamr@4: // Description: williamr@4: // williamr@4: williamr@4: #ifndef __CALCALENDARINFO_H__ williamr@4: #define __CALCALENDARINFO_H__ williamr@4: williamr@4: #include williamr@4: #include williamr@4: williamr@4: #include "calcommon.h" williamr@4: williamr@4: class CCalCalendarInfoImpl; williamr@4: class CDesC8Array; williamr@4: williamr@4: /** The calendar info class where metadata of a calendar file is set and retrieved. williamr@4: williamr@4: @publishedAll williamr@4: @released williamr@4: */ williamr@4: NONSHARABLE_CLASS(CCalCalendarInfo) : public CBase williamr@4: { williamr@4: public: williamr@4: IMPORT_C static CCalCalendarInfo* NewL(); williamr@4: IMPORT_C ~CCalCalendarInfo(); williamr@4: williamr@4: IMPORT_C TBool IsValid() const; williamr@4: williamr@4: IMPORT_C const TDesC& FileNameL() const; williamr@4: williamr@4: IMPORT_C void SetNameL(const TDesC& aName); williamr@4: IMPORT_C const TDesC& NameL() const; williamr@4: williamr@4: IMPORT_C void SetDescriptionL(const TDesC& aDescription); williamr@4: IMPORT_C const TDesC& DescriptionL() const; williamr@4: williamr@4: IMPORT_C void SetColor(TRgb aColor); williamr@4: IMPORT_C TRgb Color() const; williamr@4: williamr@4: IMPORT_C void SetEnabled(TBool aEnabled); williamr@4: IMPORT_C TBool Enabled() const; williamr@4: williamr@4: IMPORT_C CDesC8Array* PropertyKeysL() const; williamr@4: IMPORT_C const TDesC8& PropertyValueL(const TDesC8& aKey) const; williamr@4: IMPORT_C void SetPropertyL(const TDesC8& aKey, const TDesC8& aValue); williamr@4: IMPORT_C void RemovePropertyL(const TDesC8& aKey); williamr@4: williamr@4: public: williamr@4: static CCalCalendarInfo* NewL(CCalCalendarInfoImpl* aCalendarInfoImpl); williamr@4: const CCalCalendarInfoImpl& Impl() const; williamr@4: williamr@4: private: williamr@4: CCalCalendarInfo(); williamr@4: void ConstructL(); williamr@4: void ConstructL(CCalCalendarInfoImpl* aCalendarInfoImpl); williamr@4: williamr@4: private: williamr@4: CCalCalendarInfoImpl* iImpl; williamr@4: }; williamr@4: williamr@4: #endif