diff -r 000000000000 -r d6fe6244b863 creator/inc/creator_messageelement.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/creator/inc/creator_messageelement.h Tue Feb 02 00:17:27 2010 +0200 @@ -0,0 +1,92 @@ +/* +* 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: +* +*/ + + +#ifndef CREATORMESSAGEELEMENT_H_ +#define CREATORMESSAGEELEMENT_H_ + +#include "creator_scriptelement.h" +#include "creator_message.h" + +namespace creatormsg +{ + _LIT(KMessage, "message"); + _LIT(KType, "type"); + _LIT(KTo, "to"); + _LIT(KFrom, "from"); + _LIT(KFolder, "folder"); + _LIT(KSubject, "subject"); + _LIT(KText, "text"); + _LIT(KAttachmentPath, "attachmentpath"); + _LIT(KAttachmentId, "attachmentid"); + _LIT(KStatus, "status"); + _LIT(KSms, "sms"); + _LIT(KMms, "mms"); + _LIT(KAms, "ams"); + _LIT(KEmail, "email"); + _LIT(KSmart, "smart"); + _LIT(KBt, "bt"); + _LIT(KIr, "ir"); + _LIT(KSent, "sent"); + _LIT(KInbox, "inbox"); + _LIT(KDraft, "draft"); + _LIT(KOutbox, "outbox"); + _LIT(KMailbox, "mailbox"); + _LIT(KRead, "read"); + _LIT(KNew, "new"); +} + +/* + * Builds message parameters from the parsed script and adds a command to the engine + */ +class CCreatorMessageElement : public CCreatorScriptElement +{ +public: + static CCreatorMessageElement* NewL(CCreatorEngine* aEngine, const TDesC& aName, const TDesC& aContext = KNullDesC); + void ExecuteCommandL(); +protected: + CCreatorMessageElement(CCreatorEngine* aEngine); + /* + * Creates message address. The address type is based on the message type. + * @return Phone number string for SMS, MMS, AMS and Smart messages. Email address for other types. + * @param msgType Message type. + */ + HBufC* CreateMessageAddressLC(const TDesC& msgType); + /* + * Sets message type to parameters + * @param aParameters Message parameters + * @param aMsgTypeStr Message type string + */ + void SetMessageTypeL(CMessagesParameters& aParameters, const TDesC& aMsgTypeStr ) const; + /* + * Gets length of the random data + * @return Length of the random data + * @param aRandomLenStr String defining the random length (from the script) + * @param aMsgType Message type string + */ + TInt GetRandomBodyLengthL(const TDesC& aRandomLenStr, const TDesC& aMsgType ) const; + /* + * Gets maximum length of the body text + * @return Maximum length of the body text + * @param aMsgType Message type string + */ + TInt GetMaxBodyLength( const TDesC& aMsgType ) const; + +}; + + +#endif /*CREATORMESSAGEELEMENT_H_*/