uiservicetab/vimpstui/inc/cvimpstuidoublelistboxtabviewcontrol.h
branchRCL_3
changeset 28 3104fc151679
parent 27 2b7283837edb
child 29 9a48e301e94b
--- a/uiservicetab/vimpstui/inc/cvimpstuidoublelistboxtabviewcontrol.h	Thu Aug 19 09:41:53 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,382 +0,0 @@
-/*
-* Copyright (c) 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:  tabbed view control implementation class with doublestyle listbox 
-*
-*/
-
-#ifndef     __CVIMPSTUIDOUBLELISTBOXTABVIEWCONTROL_H
-#define     __CVIMPSTUIDOUBLELISTBOXTABVIEWCONTROL_H
-
-#include "mvimpstuitabbedviewcontrol.h"
-#include "mvimpstprocessArrayobserver.h"
-#include "cvimpstuidoublestylelistbox.h"
-
-class CVIMPSTUiDoubleStyleListBox;
-
-// CLASS DECLARATION
-/**
- * Tabbed view control. Shows list of contacts.
- *  @lib vimpstui.lib
- *  @since S60 v5.0 
- */
-class CVIMPSTUiDoubleListBoxTabViewControl :public CCoeControl,
-								            public MVIMPSTProcessArrayObserver,
-								            public MEikListBoxObserver,
-        									public MCoeControlObserver,
-        									public MVIMPSTUiTabbedViewControl
-    {
-    public: // Constructor and destructor
-        /**
-         * Creates a new CImContactsTabbedViewControl.
-         *
-         * @param aTabbedView reference to view.
-         * @param aKeyEventHandler Key event handler to be used
-         * @param aCommandHandler reference to commandhandler
-         * @param aServiceId Id of the service
-         * @param aBrandHandler reference to brandhandler
-         * @param aEngine reference to engine
-         */
-        static CVIMPSTUiDoubleListBoxTabViewControl* NewL( CVIMPSTUiTabbedView& aTabbedView, MPbk2KeyEventHandler* aKeyEventHandler, 
-        										MVIMPSTCmdHandler& aCommandHandler,
-        										TUint32 aServiceId,
-        										CVIMPSTUiBrandData& aBrandHandler,
-        										MVIMPSTEngine& aEngine,
-        										CEikButtonGroupContainer* aCba);
-        
-        /**
-         * Creates a new CImContactsTabbedViewControl and leaves it to
-         * cleanup stack.
-         * @see NewL
-         *
-         * @param aTabbedView reference to view.
-         * @param aKeyEventHandler Key event handler to be used
-         * @param aCommandHandler reference to commandhandler
-         * @param aServiceId Id of the service
-         * @param aBrandHandler reference to brandhandler
-         * @param aEngine reference to engine
-         */
-        static CVIMPSTUiDoubleListBoxTabViewControl* NewLC( CVIMPSTUiTabbedView& aTabbedView,MPbk2KeyEventHandler* aKeyEventHandler,
-        											MVIMPSTCmdHandler& aCommandHandler,
-        											TUint32 aServiceId,
-        											CVIMPSTUiBrandData& aBrandHandler,
-        											MVIMPSTEngine& aEngine,
-        											CEikButtonGroupContainer* aCba);
-        
-        /**
-         * Destructor.
-         */
-        ~CVIMPSTUiDoubleListBoxTabViewControl();
-    
-    public : // from MIMArrayProcessObserver
-        /**
-         * @see MIMArrayProcessObserver.
-         */
-        void HandleAdditionL(TVIMPSTEnums::TItem type, TInt aIndex);
-        
-       	 /**
-          * @see MIMArrayProcessObserver.
-          */
-     	void HandleDeletionL(TVIMPSTEnums::TItem type, TInt aIndex);
-     	/**
-     	 * @see MIMArrayProcessObserver.
-     	 */
-     	void  HandleAvatarChangeL( const TDesC& aUserId );
-
-    public://from MEikListBoxObserver
-    
-		/**
-         * From MEikListBoxObserver, Handles event's generated by listbox
-		 * @see MEikListBoxObserver
-         */
-		void HandleListBoxEventL( CEikListBox* aListBox,
-			TListBoxEvent aEventType );
-    
-    public: //from MCoeControlObserver
-    	/**
-	     * Handles events from findpane and forwards them to listbox filter.
-	     * @see MCoeControlObserver
-	     */
-	    void HandleControlEventL( CCoeControl* aControl,TCoeEvent aEventType );
-	    
-    
-        /**
-         * Get access to listbox model's filter
-         * @return model's filter
-         */                     
-        CAknListBoxFilterItems* ListFilter();
-        
-     
-    public: // New functions
-        
-        /**
-         * Returns the currently focused item's index.
-         * @return TInt, current item index.
-         */
-        TInt CurrentItemIndex() const;
-        
-        /**
-         * Sets the currently focused item's index.
-         *
-         * @param aIndex new currently focused index
-         */
-        void SetCurrentItemIndex( TInt aIndex );
-        
-		/**
-         * Sets the currently focused item's index and updates the control
-         * on the display.
-         *
-         * @param aIndex new currently focused index
-         */
-        void SetCurrentItemIndexAndDraw( TInt aIndex );
-        
-        /**
-         * Handles item addition for this control.
-         */
-        void HandleItemAdditionL();
-        
-        /**
-         * Handles item removal for this control.
-         */
-        void HandleItemRemovalL();
-
-        /**
-         * Sets list box empty text.
-         *
-         * @param aResourceId resource id of a empty text
-         */
-        void SetListEmptyTextL( TInt aResourceId );
-        
-        /**
-         * send the message using selected item
-         * this will launch the conversation view if im is enabled.
-         */
-        void SendMessageL();
-        
-        /**
-         * Updates view after edit.
-         * @param aIndex is the index of item that has changed.
-         * @param aType is list item type. 
-         */
-        void UpdateViewL( TInt aIndex, TVIMPSTEnums::TItem aType);
-        
-        
-     	/**
-     	 * @see MVIMPSTUiTabbedViewControl.
-     	 */
-		void HandleAvatarRefreshL( const TDesC& aUserId,TBool aBlock);
-
-		
-
-        /**
-	     * LoadsBitmap array.
-	     */	
-        void LoadBitmapsL();
-        
-     
-        
-        /**
-         * Gets the owned listbox control
-         *
-         * @return the owned list box
-         */
-        CVIMPSTUiDoubleStyleListBox& ListBox() const;
-        
-        /**
-        * Activates find-pane
-		*/
-		void ActivateFindPaneL();
-
-        /**
-        * De-activates find-pane
-		*/
-		void DeactivateFindPaneL();
-		
-	   /**
-		*Handle the avatar deletion in UI
-		*/
-		void SetFocussedId(const TDesC& aContact)  ;
-
-		/**
-		* the avatar deletion in UI
-		*/
-		TPtrC GetFocussedId() ;
-		
-    private: // From CCoeControl, standard control functionality
-        
-        /**
-         * @see CCoeControl
-         */
-        TKeyResponse OfferKeyEventL
-            ( const TKeyEvent& aKeyEvent, TEventCode aType );
-        
-        /**
-         * @see CCoeControl
-         */
-        void SizeChanged();
-        
-        /**
-         * @see CCoeControl
-         */
-        TInt CountComponentControls() const;
-        
-        /**
-         * @see CCoeControl
-         */
-        CCoeControl* ComponentControl( TInt aIndex ) const;
-        
-        /**
-         * @see CCoeControl
-         */
-        void FocusChanged( TDrawNow aDrawNow );
-           
-
-    private: // Implementation
-        /**
-         * Standard C++ constructor
-         *
-         * @param aTabbedView reference to view.
-         * @param aKeyEventHandler Key event handler to be used
-         * @param aCommandHandler reference to commandhandler
-         * @param aServiceId Id of the service
-         * @param aBrandHandler reference to brandhandler
-         * @param aEngine reference to engine
-         */    
-        CVIMPSTUiDoubleListBoxTabViewControl(   CVIMPSTUiTabbedView& aTabbedView,MPbk2KeyEventHandler* aKeyEventHandler,
-                    							MVIMPSTCmdHandler& aCommandHandler,
-                    							TUint32 aServiceId,
-                    							CVIMPSTUiBrandData& aBrandHandler,
-                    							MVIMPSTEngine& aEngine,
-                    							CEikButtonGroupContainer* aCba);
-        
-        /**
-         * Performs the 2nd phase of construction.
-         * 
-         */        
-        void ConstructL();
-		
-		/**
-         * Layouts current components according to AVKON LAF
-		 */
-		void SetLayout();
-		
-		/**
-		 *  NOTE : PASSING NULL DESCRIPTOR IS NOT ALLOWED  
-		 *  NO CHECK FOR THE NULL DESCPRIPTOR
-		 * 
-		 *  Utility function to create Icons from
-		 *  image data using Image processor
-		 * 
-		 * @param aAvatarContent : avatar content 
-		 * 
-		 * @return  CGulIcon icon created , returns NULL in case of errors
-		 */
-		CGulIcon*  AvatarToIconL( const TDesC8& aAvatarContent );
-		
-		
-		void SetFocusAndMakeItemVisible();
-		
-    public:
-        
-        /**
-        * Sets the iClrFindPaneFlag
-        */
-        void SetClrFindPaneFlag(TBool aFlag);
-        
-        /**
-        * Checks if the last contact is focused and Sets the iLastItemFlag
-        */            
-        void CheckAndSetLastItemFlag(); 
-     
-        /**
-         * returns the CCoeControl* pointer
-         */
-        CCoeControl* CoeControl();
-        
-        /**
-         * Sets the lock status of softkeys
-         * @param aLock new status of lock (ETrue: locked, EFalse: Unlocked)
-         */                     
-        void SetCbaLockL( TBool aLock );
-
-        /**
-         * Updates Softkeys according to current focus
-         * @param aUseDefaultCba Flag to force the default sofkeys for view.
-         * Default value is false.
-         */                     
-        void UpdateCbaL( TBool aUseDefaultCba = EFalse );
-
-		
-    private: // Data
-    
-    	// not owned
-    	 CVIMPSTUiTabbedView& iTabbedView;
-    	 
-    	// Not owned: key event handler
-    	MPbk2KeyEventHandler* iKeyEventHandler;
-    	
-    	//Holds the Ref to CMd Handler - Doesnt Own
-    	MVIMPSTCmdHandler& iCommandHandler;
-    	
-    	//Doesnt Own
-        MVIMPSTProcessArray& iArrayProcess;         
-         
-        //Service Id 
-		TUint32 iServiceId ;
-		
-		//doesnt own - Brand Handler
-		CVIMPSTUiBrandData& iBrandHandler;
-		
-		//doesnt own - Engine Handler
-		MVIMPSTEngine& iEngine;
-		   	
-        // Owns. Listbox to view friends-list data
-        CVIMPSTUiDoubleStyleListBox* iListBox;
-         
-        // Owns. Search field.
-		CAknSearchField* iFindbox;
-		
-		// is find pane visible.
-        TBool iFindPaneIsVisible;
-        
-        //current state
-        TBool iCurrentState;
-        
-          // Owns: Flag to check whether the last contact was selected
-        TBool iLastItemFlag;
-   
-        CFbsBitmap* iBitmap;  
-       
-        TInt iAvatarError;
-        
-        // CBA. not owned
-        CEikButtonGroupContainer* iCba;     
-
-        // Lock status foc softkeys
-        TBool iCbaLock;
-        
-        // Storage for previous focus
-        TVIMPSTEnums::TItem iLastFocusedItemType;
-        
-        //flag to check to clear find pane
-        TBool iClrFindPaneFlag;
-		
-		//indicate command to be executed on enter key Event.
-		TInt iCurrentCmdToExe;
-        
-
-    };
-
-#endif // __CVIMPSTUIDOUBLELISTBOXTABVIEWCONTROL_H
-
-// End of file