ccservices/cmsservices/cmsengine/Client/src/cmscontactfielditem.cpp
changeset 0 e686773b3f54
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ccservices/cmsservices/cmsengine/Client/src/cmscontactfielditem.cpp	Tue Feb 02 10:12:17 2010 +0200
@@ -0,0 +1,160 @@
+/*
+* Copyright (c) 2007 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: 
+*       
+*
+*/
+
+
+#include "cmscontactfielditem.h"
+#include <CVPbkDefaultAttribute.h>
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::CCmsContactField
+// 
+// ----------------------------------------------------
+//
+CCmsContactFieldItem::CCmsContactFieldItem():
+    iDefaultAttributeMask( 0 )
+    {     
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::NewL
+// 
+// ----------------------------------------------------
+//
+CCmsContactFieldItem* CCmsContactFieldItem::NewL( const TDesC& aItemData )
+    {
+    CCmsContactFieldItem* self = new ( ELeave ) CCmsContactFieldItem();
+    CleanupStack::PushL( self );
+    self->ConstructL( aItemData );
+    CleanupStack::Pop();
+    return self;
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::NewL
+// 
+// ----------------------------------------------------
+//
+CCmsContactFieldItem* CCmsContactFieldItem::NewL( const TDesC8& aItemData )
+    {
+    CCmsContactFieldItem* self = new ( ELeave ) CCmsContactFieldItem();
+    CleanupStack::PushL( self );
+    self->ConstructL( aItemData );
+    CleanupStack::Pop();
+    return self;
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::ConstructL
+// 
+// ----------------------------------------------------
+//
+void CCmsContactFieldItem::ConstructL( const TDesC& aItemData )
+    {
+    iFieldDataBuf16 = aItemData.AllocL();
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::ConstructL
+// 
+// ----------------------------------------------------
+//
+void CCmsContactFieldItem::ConstructL( const TDesC8& aItemData )
+    {
+    iFieldDataBuf8 = aItemData.AllocL();
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::~CCmsContactField
+// 
+// ----------------------------------------------------
+//
+CCmsContactFieldItem::~CCmsContactFieldItem()
+    {
+    delete iFieldDataBuf8;
+    delete iFieldDataBuf16;
+    delete iFieldDataBufInfo;
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::Data
+// 
+// ----------------------------------------------------
+//
+EXPORT_C TPtrC CCmsContactFieldItem::Data() const
+    {
+    return iFieldDataBuf16 ? iFieldDataBuf16->Des() : TPtrC();      
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::BinaryData
+// 
+// ----------------------------------------------------
+//
+EXPORT_C TPtrC8 CCmsContactFieldItem::BinaryData() const
+    {
+    return iFieldDataBuf8 ? iFieldDataBuf8->Des() : TPtrC8();      
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::Info
+// 
+// ----------------------------------------------------
+//
+EXPORT_C TPtrC CCmsContactFieldItem::Info() const
+    {
+    return iFieldDataBufInfo ? iFieldDataBufInfo->Des() : TPtrC();      
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::SetData
+// 
+// ----------------------------------------------------
+//
+void CCmsContactFieldItem::SetData( const TDesC& aItemData )
+    {
+    delete iFieldDataBuf16;
+    iFieldDataBuf16 = NULL;
+    iFieldDataBuf16 = aItemData.AllocL();    
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::SetInfo
+// 
+// ----------------------------------------------------
+//
+void CCmsContactFieldItem::SetInfo( const TDesC& aItemInfo )
+    {
+    delete iFieldDataBufInfo;
+    iFieldDataBufInfo = NULL;
+    iFieldDataBufInfo = aItemInfo.AllocL();    
+    }
+
+// ----------------------------------------------------
+// CCmsContactFieldItem::HasDefaultAttribute
+// 
+// ----------------------------------------------------
+//
+TBool CCmsContactFieldItem::HasDefaultAttribute( TCmsDefaultAttributeTypes aDefaultType )
+    {
+    return iDefaultAttributeMask & aDefaultType ? ETrue : EFalse;
+    }
+
+
+
+
+// end of file