diff -r 2bb96f4ecad8 -r 8e7494275d3a omads/omadsextensions/adapters/contactsgroup/inc/contactsgrpconverter.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/omads/omadsextensions/adapters/contactsgroup/inc/contactsgrpconverter.h Tue Aug 31 15:05:37 2010 +0300 @@ -0,0 +1,71 @@ +/* +* Copyright (c) 2008 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: Group vCard object conversion routines +* +*/ + + +#ifndef __CONTACTSGRPCONVERTER_H__ +#define __CONTACTSGRPCONVERTER_H__ + +#include + +#include + +class CContactIdArray; + +/* @brief CContactsGrpConverter Class + * This class is used to convert Contact Group items to vCard presentation and vice versa. + */ + +NONSHARABLE_CLASS( CContactsGrpConverter ): public CBase + { +public: + + static CContactsGrpConverter* NewL(); + static CContactsGrpConverter* NewLC(); + ~CContactsGrpConverter(); + + // returns group label + const TDesC& GroupLabel() const; + // returns contact items beloging to group + const CContactIdArray& ItemsContained() const; + + // Import group item + void ImportDbItemL( CContactGroup& aItem ); + + // Export / Import vCard info from/to this object + void ExportVCardL( CBufBase& aBuffer ); + void ExportVCardL( RWriteStream& aWriteStream ); + void ImportVCardL( const TDesC8& aBuffer ); + + // Reset all data + void ResetL(); + +private: + + CContactsGrpConverter(); + void ConstructL(); + + void SetContactItemsL( const TDesC& aValue ); + + void SplitL( const TDesC& aText, const TChar aSeparator, RArray& aArray ); + void TrimAll( TPtrC& aValue ); +private: + HBufC* iGroupLabel; + CContactIdArray* iContactsIdArray; + + }; + +#endif // __CONTACTSGRPCONVERTER_H__