cbs/cbsui/UiInc/CCbsUiTopicListView.h
branchRCL_3
changeset 19 7d48bed6ce0c
parent 18 594d59766373
child 20 987c9837762f
--- a/cbs/cbsui/UiInc/CCbsUiTopicListView.h	Thu Aug 19 10:28:14 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,429 +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: 
-*  This is the application main view. Shows all the topics which
-*  has been received and their status: subscribed, hotmarked, new messages
-*
-*
-*/
-
-
-#ifndef __CCBSTOPICLISTVIEW_H
-#define __CCBSTOPICLISTVIEW_H
-
-// INCLUDES
-#include <aknview.h>
-#include <CbsCommon.h>
-#include "MCbsUiTopicMonitorObserver.h"
-#include "CbsUiDebug.h"
-	
-// CONSTANTS  
-const TInt KNumberOfStandardTopics = 17;
-
- 
-// FORWARD DECLARATIONS
-
-class CSelectionList;
-class CListBoxNumbers;
-class CCbsUiTopicListViewContainer;
-class MCbs;
-class CAknNavigationDecorator;
-class CAknNavigationControlContainer;
-
-// CLASS DECLARATION
-
-/**
-* This is the application main view. Shows all the topics which
-* has been received and their status: subscribed, hotmarked, new messages
-*  
-*/
-class CCbsUiTopicListView : public CAknView, 
-                            public MCbsUiTopicMonitorObserver
-    {
-    private: // Data declaration
-
-        enum TTopicListViewFocusState
-            {
-            ESetFocusToCurrentHandle,
-            ESetFocusToFirstItem,
-            ESetFocusToNewestItem,
-            ENoFocusUpdate 
-            };
-
-    public: // Constructors and destructor
-
-        /**
-        * Creates an instance of the class.
-        *
-        * @param aServer It is the server.
-        * @return It returns a pointer to the created class.
-        */
-        static CCbsUiTopicListView* NewL( MCbs& aServer );
-        
-        /**
-        * Destructor.
-        */
-        virtual ~CCbsUiTopicListView();
-        
-    public: // New functions
-
-        /**
-        * Calls the server to add or change a topic. Which is called
-        * depends on the type of the dialog.
-        *
-        * @param aType is it a edit or add query. True is add query
-        * @param aNumber topic number to add or change
-        * @param aName topic name to add or change
-        * @return error code if something goes wrong
-        */
-        TInt EditTopic( 
-            TBool aType, 
-            TCbsTopicNumber aNumber, 
-            const TCbsTopicName aName );
-
-        /** 
-        * Adds a topic with specified number and name.
-        *
-        * @param  aNumber It is the number of the topic.
-        * @param  aName It is the name of the topic.
-        * @return a error code if the addition fails
-        */
-        TInt AddTopic( 
-            const TCbsTopicNumber& aNumber, 
-            const TCbsTopicName& aName );       
-
-        /**
-        * Marks topic which is focused. This should be called only when 
-        * the Options menu is created and when the Ok (selection) key
-        * has been pressed. Focus behaviour is based on this.
-        */
-        void MarkCurrentHandle();
-        
-    public: // From MCbsUiTopicMonitorObserver
-
-        /**
-        * 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 );
-     
-    public: // from CAknView
-        
-        /**
-        * Returns the identifier of the view.
-        *
-        * @return It returns the identifier.
-        */
-        TUid Id() const;        
-    
-        /**
-        * Handles the options menu commands.
-        *
-        * @param aCommand command to be executed
-        */
-        void HandleCommandL( TInt aCommand );
-
-    public: // New function
-        /**
-        * Handle changes in container when rect changes.
-        */
-        void HandleRectChangeInContainer();
-
-    private: // from CAknView
-        
-        /**
-        * Activates the view.
-        *
-        * @param aPrevViewId
-        * @param aCustomMessageId
-        */
-        void DoActivateL(
-            const TVwsViewId& aPrevViewId, 
-            TUid aCustomMessageId, 
-            const TDesC8& aCustomMessage );
-        
-        /**
-        * Deactivates the view.
-        */
-        void DoDeactivate();     
-
-        /**
-        * Checks new topic count, if it has been changed after
-        * application switch.
-        */
-        void ViewActivatedL(
-            const TVwsViewId& aPrevViewId,
-            TUid aCustomMessageId,const 
-            TDesC8& aCustomMessage );
-
-        void ViewDeactivated();
-      
-    private: // MEikMenuObserver 
-
-        /**
-        * Sets the menu items according to the state of the topic, which
-        * is focused on. Used when options menu is opened. Marks also 
-        * a current topic handle.
-        *
-        * @param aResourceId resource id of the menu
-        * @param aMenuPane used to modify menu dynamically
-        */
-        void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );         
-
-    private: // New functions
-
-        /**
-        * Sets current topic number according to aTopicNumber.
-        *
-        * @param aTopicNumber contains current topic number.
-        */
-        void SetCurrentTopicNumber( const TDesC8& aTopicNumber );
-
-        /**
-        * Sets current topic number according to aTopicNumber.
-        *
-        * @param aTopicNumber new current topic number.
-        */
-        void SetCurrentTopicNumber( const TCbsTopicNumber aTopicNumber );
-
-        /**
-        * Updates the topics information.
-        */
-        void ReloadTopicsL();
-
-        /**
-        * Prepares container for reloading.
-        */
-        void PrepareReloading();
-
-        /**
-        * Reloads topics from the server.
-        */
-        void ReloadL();
-
-        /**
-        * Ends reloading.
-        */
-        void EndReloadingL();
-
-        /**
-        * Sets focus after reload. Should be called after ReloadTopicsL().
-        *
-        * @param aFocusState focus is set according to this
-        */
-        void SetFocusAfterReload( TTopicListViewFocusState aFocusState );
-
-        /**
-        * Sets focus to aIndex.
-        *
-        * @param aIndex new focused index
-        */
-        void SetFocusToTopic( TInt aIndex );
-
-        /**
-        * Updates the focus according to Selection Service after deletion.
-        *
-        * @param aDeletedTopic Calculates the new focus according to deleted
-        *                      topic.
-        */
-        void UpdateCurrentTopicAfterDeletion( TCbsTopicNumber aDeletedTopic );
-        
-        /**
-        * Returns the total amount of topics.
-        *
-        * @return It is the amount of topics.
-        */
-        TInt TotalTopics() const;                      
-       
-        /**
-        * Requests the view to move to the previous topic.
-        */
-        void MoveToPreviousTopic();
-   
-        /**
-        * Writes a CBS to title pane.
-        */
-        void UpdateTitlePaneL() const;
-
-        /**
-        * Writes to navi pane a right message:
-        * No new messages
-        * One new message
-        * %N new messages
-        */
-        void UpdateNaviPaneL();
-
-        /**
-        * Gets resouce id for text to be displayed.
-        *
-        * @param aUnreadMessages Number of unread messages.
-        * @return resource id for text
-        */ 
-        TInt GetInfoResourceId( TInt aUnreadMessages ) const;
-
-        /**
-        * Creates a new decorated label to navi pane.
-        *
-        * @param aResourceId text resource id.
-        * @param aUnreadMessages number of unread messages
-        */
-        void CreateNewLabelL( TInt aResourceId, TInt aUnreadMessages );
-
-        /**
-        * Launches an edit or add topic query dialog.
-        *
-        * @param aType          type of the query. 
-        *                       ETrue is add and EFalse is edit query.
-        * @param aTopicName     name of the topic
-        * @param aTopicNumber   number of the topic
-        */
-        void ShowTopicQueryL( 
-            TBool aType, 
-            TDes& aTopicName, 
-            TDes& aTopicNumber );
-
-        /**
-        * Launchs the edit topic query with the right parameters.
-        */
-        void ShowEditTopicQueryL();
-
-        /**
-        * Checks if there has come new topics while this function was
-        * last called. Shows a note how many new topics has been added,
-        * since last been in TopicListView.
-        */
-        void CheckNewTopicCountL();
-
-        /**
-        * Returns the new topics count from server.
-        * 
-        * @return new topic count
-        */
-        TInt GetNewTopicsCount();
-
-        /**
-        * Changes the topic name and number to the specified.
-        *
-        * @param  aHandle It is the handle to the topic.
-        * @param  aNumber It is the new number of the topic.
-        * @param  aName It is the name of the topic.
-        * @return error code in case fail
-        */
-        TInt UpdateTopic( 
-            const TCbsTopicNumber& aOldNumber,
-            const TCbsTopicNumber& aNumber,
-            const TCbsTopicName& aName );
-
-        /**
-        * Finds topic index by topic number.
-        *
-        * @param aIndex it will contain the topic index
-        * @param aTopicNumber topic number
-        * @return KErrNone if no errors
-        */
-        TInt FindTopicIndexByNumber( 
-            TInt& aIndex, 
-            const TCbsTopicNumber& aTopicNumber );
-
-        /**
-        * Activates the topic view.
-        */
-        void ActivateTopicViewL() const;
-
-        /**
-        * Activates settings view.
-        */
-        void ActivateSettingsViewL() const;
-
-        /**
-        * Activates a add from index dialog.
-        */
-        void ActivateAddFromIndexViewL();
-
-        /**
-        * Activates an idle object to show an information note. 
-        * Used in call back function.
-        *
-        * @param aNewTopics count of new topics
-        * @return always KErrNone
-        */
-        static TInt ActivateBackgroundNoteL( TAny* aNewTopics );
-        
-    private:
-        
-        /**
-        * It is type for topic handles array.
-        */
-        typedef CArrayFixFlat< TCbsTopicNumber > TCbsUiTopicNumberList;
-        
-        /**
-        * Constructor.
-        * 
-        * @param aServer connection to the server
-        */
-        CCbsUiTopicListView(MCbs& aServer);
-        
-        /**
-        * Finalizes the construction.
-        *
-        * Note that it is assumed that the server exists for the life 
-        * time of the class.
-        */
-        void ConstructL();
-     
-    private: // Data        
-
-        // It is the control for the view.
-        CCbsUiTopicListViewContainer* iContainer;
-        
-        // It is the label in status pane.
-        CAknNavigationDecorator* iDecoratedLabel;        
-   
-        // Pointer to server session. Owned by UiApp
-        MCbs& iServer;        
-       
-        // It is the array that contains the topic numbers.
-        TCbsUiTopicNumberList* iTopicNumberList;
-       
-        // Handle that is focused.        
-        TCbsTopicNumber iCurrentTopicNumber;
-
-        // For updating information about messages to navi pane.
-        CAknNavigationControlContainer* iNaviPane;
-
-        // iFocusState is set in HandleCommandL and focus is set in 
-        // TopicListChangedL.
-        TTopicListViewFocusState iFocusState;
-
-        // To see wheather it is needed to update navi pane.
-        // if ETrue: navi pane is not updated
-        TBool iAddFromIndexDialogIsActive;
-
-        // for showing background note
-        CIdle* iBackgroundNote;
-
-        // Count of new topics.
-        TInt iNewTopicsCount;
-
-
-    };
-    
-    
-#endif // __CCBSTOPICLISTVIEW_H
-    
-    
-// End of File