cbs/cbsui/UiInc/CCbsUIMsgView.h
branchRCL_3
changeset 19 7d48bed6ce0c
parent 18 594d59766373
child 20 987c9837762f
--- a/cbs/cbsui/UiInc/CCbsUIMsgView.h	Thu Aug 19 10:28:14 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,362 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*   Class for viewing messages.
-*
-*
-*/
-
-
-#ifndef __CBSMSGVIEW_H
-#define __CBSMSGVIEW_H
-
-//  INCLUDES
-#include <CbsCommon.h>
-#include <aknview.h>
-#include <AknNaviDecoratorObserver.h>
-#include "MCbsUiTopicMonitorObserver.h"
-#include "MSaveMessageController.h"
-#include "CbsUiDebug.h"
-
-
-// FORWARD DECLARATIONS
-class CCbsUiTopicView;
-class CCbsUiMsgViewContainer;
-class CAknNavigationDecorator;
-class CFindItemMenu;
-class MCbs;
-class CAknNavigationControlContainer;
-
-// CLASS DECLARATION
-/**
-*	It is the class for viewing messages.
-*/
-class CCbsUiMsgView : public CAknView,
-                      public MCbsUiTopicMonitorObserver,
-                      public MSaveMessageController,
-                      public MAknNaviDecoratorObserver                      
-    {
-    public: // Constructors and destructor   
-        
-        /**
-        * Destructor.
-        */
-        ~CCbsUiMsgView();
-        
-        /**
-        * Two-phased constructor.
-        *
-        * @param aServer Reference to cbs server.
-        */
-        static CCbsUiMsgView* NewL( MCbs& aServer );
-        
-    private: // From MEikMenuObserver
-
-        /*
-        * Adds find item and checks weather delete, keep or both of
-        * them should be removed.
-        *
-        * @param aResourceId resource ID for identifying the menu pane being 
-        *                    initialised.
-        * @param aMenuPane the in-memory representation of the menu pane.
-        */
-        void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
-        
-    private: // From MAknNaviDecoratorObserver
-        
-		/**
-		* Method for handling touch events on navigator (navi pane)
-		* 
-		* @param aEventID Id of the event.
-		*/
-    	void HandleNaviDecoratorEventL( TInt aEventID );
-        
-    public: // From MEikCommandObserver
-        
-        /**
-        * Closes context menu if it exists.
-        *
-        * @param aCommandId Command id, which has been pressed.
-        */
-        void ProcessCommandL( TInt aCommandId );
-       
-    public: // From CAknView
-
-        /**
-        * Returns view id.
-        * 
-        * @return View ID.
-        */
-        TUid Id() const;
-        
-        /**
-        * Handles the command.
-        *
-        * @param aCommand menu command which user has selected from 
-        *                 option menu
-        */
-        void HandleCommandL( TInt aCommand );        
-        
-        /**
-        * Activates the message view. Actiovation depends on the message.
-        * Three variations are: normal, immediate and 
-        *                       soft notification messages.
-        *
-        * @param aPrevViewId Previous view id.
-        * @param aCustomMessageId With this different mechanism of activations
-        *                          are used. Immediate message uses 
-        *                          KCbsImmediateMessageIdInt and normal message
-        *                          uses KCbsUiCustomMessageId. If the message id
-        *                          differ from these, the message is activated
-        *                          by soft notification
-        * @param aCustomMessage Message content.
-        */
-        void DoActivateL(
-            const TVwsViewId& aPrevViewId, 
-            TUid aCustomMessageId, 
-            const TDesC8& aCustomMessage );
-        
-        /**
-        * Deactivates the view and destroys needed objects.
-        */
-        void DoDeactivate();     
-
-    public: // From MSaveMessageController, these are called from 
-            // CbsUiUtility
-
-        /**
-        *   Saves a message (the saved message won't be deleted to make 
-        *   room for new messages).
-        *
-        *   Return codes:
-        *   KErrNone            Message is saved.
-        *   KErrGeneral         Message not saved -- total maximum of saved 
-        *                       messages reached.
-        *   KErrNotFound        Message not saved -- no message associated
-        *                       with the given handle.
-        *   KErrDiskFull        Message not saved -- FFS out of space.
-        *
-        *   @param  aHandle     Handle to the message to be saved.
-        *   @return             Return code.
-        */
-        TInt SaveMessage( const TCbsMessageHandle& aHandle );
-
-    public:        
-
-        /**
-        * Sets the message information to navi pane. e.g. Message 1/3.
-        */    
-        void UpdateNaviPaneL();
-        
-        /**
-        * When called, next message is displayed
-        */
-        void MoveToNextMessageL();
-        
-        /**
-        * When called, previous message is displayed
-        */
-        void MoveToPreviousMessageL();
-        
-        /**
-        * Topic list or topic messages are changed.
-        *
-        * @param aEvent reason for event
-        * @param aTopicNumber topic number, which caused the event
-        */
-        void TopicListChangedL(
-            TCbsTopicListEvent aEvent, TCbsTopicNumber aTopicNumber );
-
-        /**
-        * Handle changes in container when rect changes.
-        * Update message and set new rect to container.
-        */
-        void HandleRectChangeInContainerL();
-
-    private: // Data structures
-
-        enum TMsgViewSetHandle
-            {
-            EToNext,
-            EToPrevious
-            };
-      
-    private:  // New functions
-
-        /**
-        * Creates a find item dialog and pass a message to
-        * it and gives the search case, what to look.
-        *
-        * @param aCommand search case
-        */
-        void DoSearchL( TInt aCommand );
-        
-        /**
-        * Removes and destroys the context menu.
-        */
-        void CloseContextMenu();
-
-        /**
-        * Launch the context menu.
-        */
-        void LaunchContextMenuL();
-
-        /**
-        * Deletes a old message.
-        */ 
-        void DeleteOldMessage();
-
-        /**
-        * Loads a message from topic view.
-        *
-        * @return error code if Loading of message has been leaved and catched.
-        */
-        TInt DoLoadMessageL();
-
-        /**
-        * Activates topic view with defined topic number and message handle.
-        *
-        * @param aTopicNumber which topic the message belongs
-        * @param aHandle which message handle is activating topic view.
-        */
-        void ActivateTopicViewL(
-            TCbsTopicNumber aTopicNumber, TCbsMessageHandle aHandle);
-
-        /**
-        * Sets current message handle to aMessageHandle.
-        *
-        * @param aMessageHandle message handle         
-        */
-        void SetCurrentMessageHandle( const TDesC8& aMessageHandle );
-
-        /**
-        * Loads current message buffer.
-        */
-        void LoadMessageL();
-
-        /**
-        * Adds date and time to a aMessage.
-        *
-        * @param aTime A time when message was received.
-        * @param aMessage Address of actual pointer variable. So after 
-        *                 reallocation real message content is also changed.
-        * @param aResourceArrayId Used resource array for date and time format.
-        */
-        void AddDateAndTimeL( 
-            const TInt64 aTime, HBufC** aMessage, TUint aResourceArrayId ) const;
-
-        /**
-        * Returns topic number of current message.
-        *
-        * @return current topic number
-        */
-        TCbsTopicNumber CurrentTopicNumber() const;
-
-        /**
-        * Gets message position in topic where th aHandle belongs.
-        *
-        * @param aHandle message handle
-        * @param aPosition It will contain the message position in topic.
-        * @param aTotal It will contain the total message count in topic,
-        * @return error code
-        */
-        TInt GetMessagePosition(
-            TCbsMessageHandle aHandle, TInt& aPosition, TInt& aTotal );
-
-        /**
-        * Sets aHandle to previous or next according to aTo
-        * if possible.
-        *
-        * @param aTo sets aHandle to prev or next
-        * @return ETrue if aHandle has been set.
-        */
-        TBool SetHandleTo( TCbsMessageHandle& aHandle, TMsgViewSetHandle aTo );
-
-        /**
-        * Deletes a message according to a aHandle.
-        *
-        * @param aHandle handle to be deleted.
-        * @return ETrue if message was deleted
-        */
-        TBool DeleteMessageL( TCbsMessageHandle aHandle );
-
-        /**
-        * Activates topic list view.
-        */
-        void ActivateTopicListViewL() const;
-
-        /**
-        * Sets current message to newest hot marked message or
-        * activates the topic list view.
-        *
-        * @return ETrue if new view is launched
-        */
-        TBool HandleSoftNotificationL();
-
-    private: 
-
-        /**
-        * C++ constructor.
-        *
-        * @param aServer Reference to cbs server.   
-        */
-        CCbsUiMsgView( MCbs& aServer );
-
-        /**
-        * Two-phased constructor.
-        */
-        void ConstructL();
-        
-    private: // Data
-        
-        // message buffer
-        HBufC* iMessage;
-        
-        // Container class
-        CCbsUiMsgViewContainer* iContainer;
-
-        // Navi pane variables
-        CAknNavigationControlContainer* iNaviContainer;
-
-        // NaviPaneDecorator
-        CAknNavigationDecorator* iDecoratedLabel;
-        
-        // NaviPaneDecorator
-        CAknNavigationDecorator* iPreviousDecoratedLabel;        
-      
-        // Find item common component        
-        CFindItemMenu* iFindItemMenu;
-        
-        // Context sensitive menu, which appears when pushed ok key        
-        CEikMenuBar* iContextMenu;
-
-        // To get a topic count and messages inside
-        // a topic.
-        MCbs& iServer;
-
-        // Tells if the message is class 0.
-        TBool iIsClass0;
-
-        // Current message handle
-        TCbsMessageHandle iCurrentHandle;
-
-        // True if launched from the other application.
-        TBool iFromOtherApplication;
-
-    };
-    
-#endif //__CBSMSGVIEW_H
-
-
-// End of file