Bug 3539. Update localisation mappings.
/*
* Copyright (c) 2006 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: Interface for Conversation Process Component
*
*/
#ifndef MCACONVERSATIONPC_H
#define MCACONVERSATIONPC_H
// INCLUDES
#include <e32std.h>
#include <badesca.h>
#include "MCAMessageRWInterfacePC.h"
#include "TEnumsPC.h"
class MCAConversationObserverPC;
class MCAMessage;
class MCAMessagesReadInterface;
class MCAMessagesWriteInterface;
class MCAMessageUtils;
class MCAServerContactsArrayPC;
// CLASS DECLARATION
/**
* Interface for conversations
*
* @lib wvuiprocessng.dll
* @since 3.2
*/
class MCAConversationPC
{
public: // Interface
/**
* AddConversationContactsObserverL: To add the UI component as an observer
* to listen to the contact related events
* @param MCAConversationChatObserverPC - Ptr to the object to be added
*/
virtual void AddObserver( MCAConversationObserverPC* aObserver ) = 0;
/**
* RemoveConversationObserver : To remove the added observer
*/
virtual void RemoveObserver() = 0;
/**
* Delete identified chat container
* @param aServerAddress Part of identifier to identify container.
* @param aUserId Part of identifier to identify container.
* @param aTargetId Part of identifier to identify container.
*/
virtual void DeleteChatL( const TDesC& aServerAddress,
const TDesC& aUserId,
const TDesC& aTargetId ) = 0;
/**
* InitialiseResourcesL
* @param aContactId - the current conversation wvid
*/
virtual void InitialiseResourcesL( const TDesC& aContactId ) = 0;
/**
* ReleaseResourcesL
*
*/
virtual void ReleaseResources() = 0;
/**
* GetIdentification
* @param aContactId - wvid
* @return Identification of contact.
* Alias if nickname is not set and alias is enabled.
* Wvid without domain and prefix if nickname does not
exists and alias is not enabled or not exists.
*/
virtual const TPtrC GetIdentification( const TDesC& aContactId ) = 0;
/**
* Part of container identifier which contains this message
* @return Identifier to identify container which contains this message
*/
virtual const TDesC& GetReadInterfaceId() = 0;
/**
* GetLogFileName
* @param ref to TPtr - This will be set within this function and
* returned to the caller
*/
virtual void GetLogFileName( TPtr& aLogFileNamePtr ) = 0;
/**
* Starts logging in a specified group.
* @param aLogFileName is the file name which will be shown in the
* first line of the notepad memo (after end logging).
*/
virtual void RecordChatL( const TDesC& aLogFilename ) = 0;
/**
* SendMessageL
* @param aMessageBuffer.
*/
virtual void SendMessageL( const TDesC& aMessageBuffer ) = 0;
/**
* PopulateGroupDetailsLC
* @return - Fills and returns groupname along with the ID
* Ownership is transferred to the caller
*/
virtual MCAServerContactsArrayPC* PopulateGroupDetailsLC() = 0;
/**
* Get name of chat.
* @return Name of chat.
*/
virtual TPtrC GetReadInterfaceName() = 0;
/**
* Set the current conversation
* @param aIndex of the chat in the local list.
*/
virtual void SetActiveConversationL( const TDesC& aWvId ) = 0;
/**
* Find any contact which id is aContactId
* @param aContactId Contactid to recognize contact.
* @return ETrue if found else EFalse
*/
virtual TBool FindAnyContact( const TDesC& aContactId ) = 0;
/**
* Count of stored groups
* @return Count of groups
*/
virtual TInt GroupCount( TBool aOnlyVisible ) = 0;
/**
* Count of stored contacts
* @return Count of contacts
*/
virtual TInt ContactCount() = 0;
/**
* CheckReply
* @param aWvid - contact id
* @param aContactInlist - also checks whether the contact is in contact list
*/
virtual void CheckReply( TPtrC& aWvid, TBool& aContactInlist ) = 0;
/**
* IsActiveConversation
* @param aContactId - contact id
* @return ETrue - if the passed contactID is the current active conversation
* EFalse - Otherwise
*/
virtual TBool IsActiveConversation( const TDesC& aContactId ) = 0;
/**
* SetMessageReadInterfaceL: Calls the MessageReadInterface() of engine component
* to set the read interface
* @param aWvId - wv user id
* @return void
*/
virtual void SetMessageReadInterfaceL( const TDesC& aWvId ) = 0;
/**
* SetMessageWriteInterfaceL: Calls the MessageWriteInterface() of engine component
* to set the write interface
* @return void
*/
virtual void SetMessageWriteInterfaceL() = 0;
/**
* Closes all open conversations
*/
virtual void CloseConversations() = 0;
/**
* Leaves every joined group.
*/
virtual void LeaveJoinedGroupsL() = 0;
/**
* Gets the message count from ReadInterface
*/
virtual TInt MessageCount() = 0;
/**
* Destructor
*/
virtual ~MCAConversationPC() {}
};
#endif // MCACONVERSATIONPC_H
// End of File