voiceui/vcommand/inc/vcgenericcontainer.h
changeset 13 57b735022c18
parent 1 b13cd05eeb2f
--- a/voiceui/vcommand/inc/vcgenericcontainer.h	Mon Jan 18 20:20:30 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,380 +0,0 @@
-/*
-* 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:  Container class for vcommand app
-*
-*/
-
-
-
-#ifndef CVCGENERICCONTAINER_H
-#define CVCGENERICCONTAINER_H
-
-// INCLUDES
-#include <coecntrl.h>
-#include <coedef.h> 
-#include <bamdesca.h> 
-#include <barsread.h>
-#include <badesca.h>
-#include <aknlists.h>
-#include <AknIconArray.h>
-#include <eiksbobs.h> 
-#include <AknWaitDialog.h>
-#include <AknInfoPopupNoteController.h>
-#include <data_caging_path_literals.hrh>
-#include <csxhelp/vc.hlp.hrh>
-
-#include "vcgenericview.h"
-#include "vcommandconstants.h"
-#include "vcmodel.h"
-
-
-// CONSTANTS
-
-// FORWARD DECLARATIONS
-class CEikTextListBox;
-class CEikFormattedCellListBox;
-
-// CLASS DECLARATION
-
-/**
-* CVCommandGenericContainer container control class.
-*/
-class CVCGenericContainer : public CCoeControl,
-                            public MCoeControlObserver,
-                            public MEikListBoxObserver,
-                            public MEikScrollBarObserver
-    {
-
-    public: // Constructors and destructor
-        
-        /**
-         * C++ constructor.
-         *
-         * @param aMenubar a menubar
-         * @param aView a pointer to view class
-         */
-        CVCGenericContainer::CVCGenericContainer( CEikMenuBar* aMenuBar,
-                                                  CVCModel& aModel, 
-                                                  CVCGenericView& aView );
-
-        /**
-         * Symbian default constructor.
-         *
-         * @param aRect Frame rectangle for container.
-         */
-        void ConstructL( const TRect& aRect );
-
-        /**
-         * Destructor.
-         */
-        ~CVCGenericContainer();
-        
-    public: // Functions from base classes
-    
-        /**
-         * From CoeControl
-         *
-         * @see CCoeControl for more information
-         */
-        void GetHelpContext( TCoeHelpContext& aContext ) const;
-
-
-    public: // New functions
-
-        /**
-         * Returns the focused item on listbox
-         *
-         * @return TInt Id of the focused item
-         */
-        TInt CurrentSelection() const;
-        
-        /**
-         * Sets the focused item on listbox
-         *
-         * @return void
-         */
-        void SetCurrentSelection( TInt aIndex );
-    
-        /**
-         *
-         * @return TInt the number of items in the list box
-         */
-        TInt ListBoxCount() const;
-    
-        /**
-         * Returns the first line name.
-         *
-         * @param aIndex list item index
-         * @return const TDesC& first row name
-         */
-        TDesC* GetFirstRowNameLC( TInt aIndex ) const;
-        
-        /**
-         * Returns the second line name.
-         *
-         * @param aIndex list item index
-         * @return const TDesC& second row name
-         */
-        TDesC* GetSecondRowNameLC( TInt aIndex ) const;
-        
-        /**
-         * Returns a title that is to be shown in folder view.
-         *
-         * @param aIndex list item index
-         * @return TPtrC folder title name
-         */
-        TPtrC GetFolderTitle( TInt aIndex );
-        
-        /**
-         * Returns true if pointed listbox item is a folder.
-         *
-         * @param aListBoxIndex index of listbox item
-         * @return ETrue if item is a folder
-         */
-        TBool IsItemFolderL( TInt aListBoxIndex ) const;
-        
-        /**
-         * Shows the Edit command text query.
-         *
-         * @return void
-         */
-        void ShowEditTextL();
-        
-        /**
-         * Shows delete application query
-         * and handles the voice tag deletion
-         *
-         * @return void
-         */
-        void DeleteVCommandL();
-        
-        /**
-         * Returns ETrue if event is under processing at the moment.
-         *
-         * @return ETrue if event handling process is running
-         */
-        TBool IsHandlingKeyPressInProgress();
-        
-        /**
-         * Sets event handling state.
-         *
-         * @param aValue new status for event handling process
-         * @return void
-         */
-        void SetHandlingKeyPressInProgress( TBool aValue );
-        
-        void RefreshListboxL( CVCommandUiEntryArray& oldCommands,
-                              CVCommandUiEntryArray& newCommands );
-                              
-        /**
-         * Shows tooltip text for item.
-         *
-         * @param aItemIndex index of the listbox item
-         */
-        void ShowTooltipL( TInt aItemIndex );
-
-
-    protected: // Functions from base classes
-    
-        /**
-         * From MEikListBoxObserver
-         * @see MEikListBoxObserver for more information
-         */
-        void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-        
-        /**
-         * From MEikScrollBarObserver
-         * @see MEikScrollBarObserver for more information
-         */
-        void HandleScrollEventL( CEikScrollBar* aScrollBar, TEikScrollEvent aEventType );
-
-        /**
-       	 * From CCoeControl.
-       	 *
-       	 * @see CCoeControl for more information
-       	 */
-        void FocusChanged( TDrawNow aDrawNow );
-        
-        /**
-         * From CCoeControl.
-         *
-         * @see CCoeControl for more information
-         */
-        void SizeChanged();
-     
-        /**
-         * From CoeControl.
-         *
-         * @see CCoeControl for more information
-         */
-        TInt CountComponentControls() const;
-
-        /**
-         * From CCoeControl.
-         *
-         * @see CCoeControl for more information
-         */
-        CCoeControl* ComponentControl( TInt aIndex ) const;
-
-        /**
-         * From MCoeControlObserver.
-         *
-         * @see MCoeControlObserver for more information
-         */
-        void HandleControlEventL( CCoeControl* aControl,TCoeEvent aEventType );
-        
-        /**
-         * From CCoeControl
-         *
-         * @see CCoeControl for more information
-         */
-        void HandleResourceChangeL( TInt aType );      
-        
-        /**        
-         * From CCoeControl
-         *
-         * @see CCoeControl for more information
-         */
-        TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-        
-    private: // New functions
-
-        /**
-         * Constructs status pane
-         *
-         * @param aResourceId
-         */
-        void SetTitlePaneL( TInt aResourceId ) const;
-        
-        /**
-         * Constructs the listbox.
-         */
-        void ConstructListBoxL();
-
-        /**
-         * Initializes the listbox. 
-         */
-        void PopulateListBoxL();
-        
-        /**
-         * Checks if the user edited name is valid.
-         * 
-         * @param aName name to check
-         * @return TBool ETrue if name exists or is too short.
-         */
-        TBool CheckNameValidityL( const TDesC& aName );
-        
-        /**
-         * Sets the new text to the list.
-         * 
-         * @param aIndex The index of an application
-         * @param aNewText the text that replaces the old one
-         * @param aOldText the old text
-         */
-        void UpdateTextL( TInt aIndex, const TDesC& aNewText,
-                          const TDesC& aOldText );
-        
-        /**
-         * Sorts the contents of the iItemNameArray to an alphabetical order.
-         */
-        void SortItemListL();
-        
-        /**
-        * Finds the commands that should be added to the listbox
-        * @param oldCommands A list of commands before an update
-        * @param newCommands A list of commands after an update
-        * @return RArray<CVCommand> Commands that need to be removed from the
-        *         listbox
-        */
-        RArray<CVCommandUiEntry> FindCommandsToBeAddedL(
-            CVCommandUiEntryArray& oldCommands, CVCommandUiEntryArray& newCommands );
-                        
-        /**
-        * Adds items to the listbox.
-        * @param aCommands Commands to be added
-        */
-        void AddCommandsL( RArray<CVCommandUiEntry>& aCommands );
-        
-        /**
-        * Finds the commands that should be removed from the listbox
-        * @param oldCommands A list of commands before an update
-        * @param newCommands A list of commands after an update
-        * @return RArray<CVCommand> Commands that need to be added to the
-        *         listbox
-        */
-        RArray<CVCommandUiEntry> FindCommandsToBeRemovedL(
-            CVCommandUiEntryArray& oldCommands, CVCommandUiEntryArray& newCommands );
-            
-        /**
-        * Removes items from listbox
-        * @param aCommands Commands to be removed
-        */
-        void RemoveCommands( RArray<CVCommandUiEntry>& aCommands );
-        
-        /**
-        * Searches for a string in listbox item array.
-        * @param aText The search string
-        * @return TInt Index in the array where the string was found.
-        *         KErrNotFound if the string was not found.
-        */
-        TInt SearchItemArrayL( const TDesC& aText );
-        
-        /**
-        * Utility function for listbox item creation
-        * @param aIconArrayIndex Icon array index for this item
-        * @param aFirstRow First row for this item
-        * @param aSecondRow Second row for this item
-        * @return TDesC* A new listbox item
-        */
-        TDesC* CreateListboxItemLC( TInt aIconArrayIndex,
-                                    const TDesC& aFirstRow,
-                                    const TDesC& aSecondRow );
-
-        /**
-        * Checks for critical level flash and shows "no memory" note if needed
-        *
-        * @return ETrue if CL would be reached after this operation.
-        */
-        TBool CheckCriticalLevelL();
-
-    private: // data
-    
-        CEikMenuBar*                    iMenuBar;           // Not owned
-        CVCGenericView&                 iView;
-        
-        CVCModel&                       iModel;
-        
-        //CEikTextListBox*                iListBox;           // Owned
-        CEikFormattedCellListBox*       iListBox;           // Owned
-        
-        // Displayed names for the items in listbox
-        CDesC16ArrayFlat*               iItemArray;     // Not owned
-        
-        // Titles for different folders in folder view
-        CDesC16ArrayFlat*               iFolderTitles;
-        
-        // Corresponds index by index with the items in iItemNameArray.
-        // Stores information on whether an item is a folder
-        RArray<TBool>                   iItemIsFolder;
-        
-        CAknInfoPopupNoteController*    iPopupController;   // Owned
-        
-        TBool                           iHandlingKeyPressInProgress;
-        
-    };
-
-#endif // CVCGENERICCONTAINER_H
-
-// End of File
-