1 // Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
16 #ifndef __CSMSEMAILFIELDS_H__
17 #define __CSMSEMAILFIELDS_H__
23 #if (defined SYMBIAN_MESSAGESTORE_HEADER_BODY_USING_SQLDB)
30 #if (defined SYMBIAN_MESSAGESTORE_HEADER_BODY_USING_SQLDB)
36 Encapsulates the address and subject fields for Email sent over SMS.
41 NONSHARABLE_CLASS (CSmsEmailFields) : public CBase
44 IMPORT_C static CSmsEmailFields* NewL();
45 IMPORT_C static CSmsEmailFields* NewL(const CSmsEmailFields& aEmailFields);
46 IMPORT_C virtual ~CSmsEmailFields();
48 IMPORT_C void Reset();
49 IMPORT_C TInt Length() const;
50 IMPORT_C TBool HasAddress() const;
51 IMPORT_C HBufC* ComposeLC() const;
52 TInt ParseL(const TDesC& aBuffer);
54 IMPORT_C void AddAddressL(const TDesC& aAddress);
55 IMPORT_C void RemoveAddress(TInt aIndex);
56 IMPORT_C const MDesCArray& Addresses() const;
58 IMPORT_C void SetSubjectL(const TDesC& aSubject);
59 IMPORT_C const TDesC& Subject() const;
61 void RestoreL(CMsvStore& aStore);
62 void StoreL(CMsvStore& aStore) const;
64 #if (defined SYMBIAN_MESSAGESTORE_HEADER_BODY_USING_SQLDB)
65 void StoreDBL(CMsvStore& aStore);
66 void ReStoreDBL(CMsvStore& aStore);
67 TInt ConvertToTInt(TDesC16& aStr);
68 void GetRecipientListL(TDesC16& aStr);
75 void ConstructL(const CSmsEmailFields& aEmailFields);
77 void InternalizeL(RReadStream& aStream);
78 void ExternalizeL(RWriteStream& aStream) const;
80 CDesCArray* iAddresses;
84 #endif // __CSMSEMAILFIELDS_H__