diff -r 2b7283837edb -r 3104fc151679 imstutils/imconversationview/imcvuiapp/inc/cimcvappmessageflowhandler.h --- a/imstutils/imconversationview/imcvuiapp/inc/cimcvappmessageflowhandler.h Thu Aug 19 09:41:53 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,183 +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 flow handling -* -*/ - - - -#ifndef _CIMCVAPPMESSAGEFLOWHANDLER_H -#define _CIMCVAPPMESSAGEFLOWHANDLER_H - -// INCLUDES -#include -#include "mimcvenginemessageobserver.h" -#include "mimcvenginechatlistobserver.h" - -class MIMCVEngineMessageReadInterface; -class MIMCVEngineMessageContainer; -class CIMCVEngineContextObserver; -class CIMCVEngine; -// CLASS DECLARATION - -/** -* Flow controller for messages -* -* @imcvuiapp.exe -* @since Series 60 5.0 -*/ -class CIMCVAppMessageFlowHandler : public CTimer, - public MIMCVEngineMessageObserver, - public MIMCVEngineChatListObserver - { - - - - public: - - /** - * Should we fetch new messages or not - * @param aFetch ETrue if this chat is in foreground and should - * receive messages, EFalse otherwise. - */ - void FetchMessages( TBool aFetch ); - - - - protected: // Functions from MIMCVEngineMessageObserver - - /** - * Handle events. - * @param aEvent Event to handle. - * @param aIndex, Index of message which is affected by event. - */ - void HandleMessageEvent( TMessageEventType aEvent, TInt aIndex ); - - private: - /* - * See MIMCVEngineChatListObserver - */ - void HandleChatListEvent(TInt aServiceId, TChatListEventType aEvent, - MIMCVEngineMessageReadInterface* aContainerInfo ) ; - - protected: // Functions from CTimer - - /** - * @see CTimer - */ - void RunL(); - - /** - * @see CActive - */ - TInt RunError( TInt aError ); - - - - private: // New functions - - /** - * Get flow control value from settings - */ - void UpdateTimeIntervalL(); - - /** - * Is opening on going or not. - * @return ETrue if opening on going, EFalse otherwise. - */ - TBool IsOpening() const; - - - - private: - - /** - * C++ default constructor. - */ - CIMCVAppMessageFlowHandler(MIMCVEngineMessageContainer& aMessageContainer, - MIMCVEngineMessageReadInterface& aReadInterface, - CIMCVEngine& aActiveEngine ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL( TBool aScrollOver ); - - public: // Constructors and destructor - - /** - * Two-phased constructor. - * @param aMessageContainer Interface to UI side message container - * @param aReadInterface Message read interface - * @param aScrollOver Is scroll over required - * or not. - */ - static CIMCVAppMessageFlowHandler* NewL( - MIMCVEngineMessageContainer& aMessageContainer, - MIMCVEngineMessageReadInterface& aReadInterface, - CIMCVEngine& aActiveEngine, - TBool aScrollOver ); - - /** - * Destructor. - */ - virtual ~CIMCVAppMessageFlowHandler(); - - - private: // Data - - // Interface for UI side message container - // Not owned - MIMCVEngineMessageContainer& iMessages; - - // Interface for fetching messages - // Not owned - MIMCVEngineMessageReadInterface& iReadInterface; - - CIMCVEngine& iActiveEngine; - - // time interval for receiving messages - TTimeIntervalMicroSeconds32 iTimeInterval; - - // Is chat deleted already - TBool iChatDeleted; - - // Should we fetch new messages - TBool iFetchMessages; - - // Index for fetching messages - TInt iMsgIndex; - - // Initial count for messages - TInt iInitialMsgCount; - - // Is new message received while opening the chat - TBool iNewMsgWhileOpening; - - // Flag is read from CR variation in class construction - // ETrue in releases >= 3.2 - // EFalse in releases < 3.2 - // Set to EFalse if this handler is used to handle - // recorded chat - TBool iBgOpeningMode; - - TInt iAddedUnreadMsgs; - - - }; - - -#endif // _CIMCVAPPMESSAGEFLOWHANDLER_H - -// End of File