--- a/imstutils/imconversationview/imcvuiengine/inc/cimcvenginemessagecontainer.h Thu Aug 19 09:41:53 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,366 +0,0 @@
-/*
-* Copyright (c) 2007-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: message container class
-*
-*/
-
-
-#ifndef __CIMCVENGINEMESSAGECONTAINER_H__
-#define __CIMCVENGINEMESSAGECONTAINER_H__
-
-#include "mimcvenginemessagesreadinterface.h"
-#include "mimcvenginemessageswriteinterface.h"
-#include "mimcvenginemessagecontainerinfo.h"
-#include "mimcvenginemessageobserver.h"
-
-// FORWARD CLASS DECLERATIONS
-class MIMCVEngineBufferMemoryHandler;
-class MIMCVEngineNewMsgObserver;
-class MCAMessage;
-
-// CLASS DECLARATION
-
-/**
- * Container class for messages.
- *
- * @lib imcvengine.dll
- * @since 5.0
- */
-
-
-class CIMCVEngineMessageContainer : public CBase,
- public MIMCVEngineMessageReadInterface,
- public MIMCVEngineMessageWriteInterface,
- public MIMCVEngineMessageContainerInfo
- {
- public: // Construction
-
- /**
- * Construction
- * @param aServiceId - ServiceId
- * @param aTargetId, Identifier of container
- * @param aMemoryHandler Handles memory
- * @param aType Type of container. EChatContainer
- * @return Pointer to new created instance of CIMCVEngineMessageContainer
- */
- static CIMCVEngineMessageContainer* NewL(
- TInt aServiceId,
- const TDesC& aTargetId,
- const TDesC& aDisplayName,
- const TDesC8& aContactLink,
- MIMCVEngineBufferMemoryHandler& aMemoryHandler,
- TContainerType aType );
-
- /**
- * Construction
- * @param aServiceId - ServiceId
- * @param aTargetId, Identifier of container
- * @param aMemoryHandler Handles memory
- * @param aType Type of container. EChatContainer
- * @return Pointer to new created instance of CIMCVEngineMessageContainer
- */
- static CIMCVEngineMessageContainer* NewLC(
- TInt aServiceId,
- const TDesC& aTargetId,
- const TDesC& aDisplayName,
- const TDesC8& aContactLink,
- MIMCVEngineBufferMemoryHandler& aMemoryHandler,
- TContainerType aType );
-
- /**
- * Destruction
- */
- ~CIMCVEngineMessageContainer();
-
- private: // Construction
-
- /**
- * Constructor
- * @param aMemoryHandler Handles memory
- */
- CIMCVEngineMessageContainer( MIMCVEngineBufferMemoryHandler& aMemoryHandler );
-
- /**
- * Constructor
- * @param aServiceId - ServiceId
- * @param aTargetId, Identifier of container
- * @param aType Type of container. EChatContainer
- */
- void ConstructL(
- TInt aServiceId,
- const TDesC& aTargetId,
- const TDesC& aDisplayName,
- const TDesC8& aContactLink,
- TContainerType aType );
-
- private: // Methods from MIMCVEngineMessageReadInterface
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- TInt UnreadCount( TUnreadFilter aUnreadFilter = EUnreadAll ) const;
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- TInt MessageCount() const;
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- void StoreEditerMessageL( const TDesC& aEditorMessage );
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- const TDesC& GetEditerMessage();
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- void Read( TReadType aReadType, TInt aReadAmount = 0 );
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- MIMCVEngineMessage& Message( TInt aIndex ) const;
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- MIMCVEngineMessage& ReadNextUnread();
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- MIMCVEngineMessage& ReadUnreadFromIndex( TInt aIndex );
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- void SetObserver( MIMCVEngineMessageObserver* aObserver );
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- TPtrC Name() const;
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- TDesC DisplayName() const;
-
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- void DeleteMessage( TInt aIndex );
-
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- MIMCVEngineMessageContainerInfo& TargetId();
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- void Lock( TBool aLocked );
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- void SetActive( TBool aActiveChat );
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- TBool IsActive();
-
-
-
- private: // Methods from MIMCVEngineMessageWriteInterface
-
- /**
- * @see MIMCVEngineMessageWriteInterface
- */
- void AppendL( MIMCVEngineMessage* aMessage, TBool aSharedOwnership );
-
-
-
-
- /**
- * @see MIMCVEngineMessageWriteInterface
- */
- TTime Time();
-
- /**
- * sets the display name
- * @param aDispalyName. updated display name
- */
- void SetNameL( const TDesC& aDispalyName );
- public:
- /**
- * sets the contactlink
- * @param aContactLink. updated contactlink
- */
- void SetLinkL(const TDesC8& aContactLink);
-
- /**
- * @see MIMCVEngineMessageReadInterface
- */
- TPtrC8 ContactLink() const;
-
- private: // From MIMCVEngineMessageContainerInfo
-
-
- /**
- * @see MIMCVEngineMessageContainerInfo
- */
- const TDesC& Target() const;
-
- /**
- * Returns target id to be used for
- * comparisons.
- * @return Target id.
- */
- const TDesC& ComparableTarget() const;
-
-
-
-
- public: // New methods
-
- /**
- * Ordering function for ordering Message containers
- * @param aSourceA First compare item.
- * @param aSourceB Second compare item.
- * @return -1, 0 or +1, like CompareC.
- */
- static TInt OrderUid( const CIMCVEngineMessageContainer& aSourceA,
- const CIMCVEngineMessageContainer& aSourceB );
-
- /**
- * Type of container
- * @return Type of container. EChatContainer
- */
- TContainerType ContainerType() const;
-
-
- /**
- * Set chat observer.
- * @param aObserver. Observer to set.
- */
- void SetChatObserver( MIMCVEngineNewMsgObserver* aObserver );
-
- private: // New helper methods
-
- /**
- * Resolve type of container by identifier.
- * @param aType, new type. If ENoneContainer, Resolved automaticly.
- */
- void ResolveType( TContainerType aType );
-
- /**
- * display id it remove the domain part if any
- * @param aId id to extarct
- * @param aDomainHiding , hiding the domain part
- */
- static TPtrC DisplayId( const TDesC& aId, TBool aDomainHiding = ETrue );
-
-
-
- public:
-
- /**
- * Get count of all messages. Unread and read.
- * @return Count of messages
- */
- TInt AllMessagesCount() const;
-
- /**
- * Access to any message. Also unread.
- * @param aIndex Index of message
- * @return Reference to message.
- */
- MIMCVEngineMessage& MessageFromAll( TInt aIndex ) const;
-
- /**
- * Delete from all messages. Unread and read messages available.
- * @param aIndex. Index of message.
- */
- void DeleteMessageFromAll( TInt aIndex );
-
- /**
- * Is container locked or not. ETrue locked, EFalse not.
- * @return Locked status.
- */
- TBool IsLocked() const;
-
- /**
- * Sizes of messages in container in bytes.
- * @return Size in bytes.
- */
- TInt ContainerSizeInBytes() const;
-
- private: // Member data
-
- /// conversation party id Owns
- HBufC* iTargetId;
-
- // Owns , conversation party name
- HBufC* iBuddyDisplayName;
-
- // Owns ,contact link info of chat.
- HBufC8* iContactLink;
-
- // owns
- HBufC* iDecodedTargetId;
- // owns : reference to previous entered message
- HBufC* iEditerMessge;
-
- /// Offset to last unread message
- TInt iUnreadOffset;
-
- /// Array of messages.
- RPointerArray< MIMCVEngineMessage > iMessageContainer;
-
- /// Reference to memory handler
- MIMCVEngineBufferMemoryHandler& iMemoryHandler;
-
- /// Observer class - Doesnt Own
- MIMCVEngineMessageObserver* iObserver;
-
- /// Type of container
- TContainerType iContainerType;
-
- /// Not own. Chat observer
- MIMCVEngineNewMsgObserver* iChatObserver;
-
- // Locked status
- TBool iLocked;
-
-
- // Size of contained messages in bytes
- TInt iContainerSizeInBytes;
-
- //Active Chat
- TBool iActiveChat;
-
- };
-
-
-#endif // __CIMCVENGINEMESSAGECONTAINER_H__
-
-// End of File