landmarksui/engine/inc/CLmkLmItemListProvider.h
branchRCL_3
changeset 17 1fc85118c3ae
parent 16 8173571d354e
child 18 870918037e16
--- a/landmarksui/engine/inc/CLmkLmItemListProvider.h	Thu Aug 19 09:48:36 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,259 +0,0 @@
-/*
-* Copyright (c) 2004 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:    LandmarksUi Content File -    Abstract base class for landmark and category providers.
-*
-*/
-
-
-
-
-
-
-
-
-#ifndef CLMKLMITEMLISTPROVIDER_H
-#define CLMKLMITEMLISTPROVIDER_H
-
-//  INCLUDES
-#include "CLmkListProviderBase.h"
-#include "MLmkAOOperationObserver.h"
-#include "MLmkDbObserver.h"
-#include "landmarks.hrh"
-#include <EPos_Landmarks.h> // Lm typedefs, constants etc.
-#include <EPos_CPosLandmark.h>
-
-// FORWARD DECLARATIONS
-class CPosLandmarkDatabase;
-class CLmkDbUtils;
-class CLmkDbInitializer;
-class CLmkAOOperation;
-class CAknWaitDialog;
-
-// CLASS DECLARATION
-
-/**
-*  Abstract base class for landmark and category providers.
-*  Each concrete provider is responsible of notifying observer about all
-*  provider events.
-*/
-class CLmkLmItemListProvider
-: public CLmkListProviderBase,
-  public MLmkAOOperationObserver,
-  public MLmkDbObserver
-    {
-    public:  // Constructors and destructor
-        /**
-        * Destructor.
-        */
-        ~CLmkLmItemListProvider();
-
-    public: // New methods
-        /**
-        * Any item which is not found is ignored.
-        * @param aSelectedItems database ids for selected items
-        * @return array containing selected items, ownership is transferred
-        */
-        IMPORT_C CArrayFix<TInt>* SelectedIndexesL(
-                        const RArray<TPosLmItemId>& aSelectedItems ) const;
-
-        /**
-        * Any item which is not found is ignored.
-        * @param aSelectedIndexes will be set by this method
-        * @param aSelectedItems database ids for selected items
-        */
-        IMPORT_C void GetSelectedIndexesL( CArrayFix<TInt>& aSelectedIndexes,
-                        const RArray<TPosLmItemId>& aSelectedItems ) const;
-
-        /**
-        * Leaves if appending an item to aSelectedItems fails.
-		* Panics if any index is out of bounds.
-        * @param aSelectedItems
-        * @param aSelectedIndexes
-        */
-        IMPORT_C void GetSelectedItemIdsL(
-                        RArray<TPosLmItemId>& aSelectedItems,
-                        const CArrayFix<TInt>& aSelectedIndexes ) const;
-
-		IMPORT_C void GetAllItemIdsL(
-		    RArray<TPosLmItemId>& aSelectedItems ) const;
-
-        /**
-        * Returns KErrNotFound if item is not found.
-        * @param aSelectedItem
-        * @return error code
-        */
-        IMPORT_C TInt SelectedIndex( TPosLmItemId aSelectedItem ) const;
-
-        /**
-        * Panics if index is out of bounds.
-        * @param aSelected
-        * @param aIndex
-        */
-        IMPORT_C void GetSelectedItemId( TPosLmItemId& aSelected,
-                                         TInt aIndex ) const;
-
-        /**
-        * Any item which is not found is ignored.
-        * @param aSelectedItemsCount will set iSelectedItemsCount class variable by this method
-        */
-        IMPORT_C void SetSelectedItemsCount( TInt aSelectedItemsCount );
-
-        /**
-        * Any item which is not found is ignored.
-        * @param aItemId will be removed from the iIdArray
-        */
-        IMPORT_C void RemoveItem( TPosLmItemId aItemId );
-
-        /**
-        * Any item which is not found is ignored.
-        * @param aOperationCmd will set the Database Operation Command
-        */
-        IMPORT_C void SetOperationCmd( TLmkAppCmdId aOperationCmd );
-
-        /**
-        * Any item which is not found is ignored.
-        * The Function must be used if no of selected items is greater than 10
-        * @param aSelectedItems, the item count should be greater than 10
-        * @param aType is a operation type
-        * @param aCategoryId will set the category id to filter for deletion
-        */
-		IMPORT_C void RemoveItemsL( const RArray<TPosLmItemId>& aSelectedItems,
-								MLmkAOOperationObserver::TOperationTypes aType,
-								TPosLmItemId aCategoryId );
-
-    public: // From CLmkListProviderBase
-        void InitializeL();
-        TInt ItemCount() const;
-        TBool StartSearchingLandmarksL(
-								const TDesC& aSearchPattern,
-    							TBool aSearchOnlyInPreviousMatches);
-
-    protected: // From MLmkAOOperationObserver
-        void HandleOperationL( TOperationTypes aType,
-                               TReal32 aProgress,
-                               TInt aStatus );
-
-    protected: // From MLmkDbObserver
-        void HandleDatabaseEvent( TPosLmEvent& aEvent );
-
-    protected:  // New functions
-        /**
-        * "Template method" implemented by subclasses.
-        * List preparation cannot be done in construction phase, but
-        * only after database initialization is complete.
-        */
-        virtual void PrepareListL() = 0;
-        virtual TBool PrepareListL(const TDesC& aSearchPattern,
-    							TBool aSearchOnlyInPreviousMatches) = 0;
-
-        virtual void RemoveLandmarksL(const RArray<TPosLmItemId>& aSelectedItems ) = 0;
-
-        /**
-        * Internal helper method for performing steps after
-        * database initialization.
-        */
-        void HandleDatabaseInitializedL();
-
-        /**
-        * Internal helper method which handles provider errors. It
-        * resets iIdArray and notifies observers.
-        * @param aError error code
-        */
-        void HandleError( TInt aError );
-
-    protected:  // Constructors and destructor
-        /**
-        * C++ constructor.
-        * @param aDb
-        * @return newly instantiated object
-        */
-        CLmkLmItemListProvider( CPosLandmarkDatabase& aDb );
-
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-        void BaseConstructL();
-
-	    /**
-	    * This function gets the landmark from the database &
-	    * update its icon with the category icon, if it is associated
-	    * with one category.
-	    */
-	    CPosLandmark* GetLandmarkLC(TInt aIndex);
-
-    protected: // Data
-
-        ///Ref: landmark database
-        CPosLandmarkDatabase& iDb;
-
-        /// Provide all db items or only the ones in the array?
-        TBool iListAllItemsInDb;
-
-        /// TPosLmItemId list
-        RArray<TPosLmItemId> iIdArray;
-
-        ///Own:
-        CLmkDbUtils* iDbUtils;
-
-        ///Own: helper for initialization
-        CLmkDbInitializer* iInitializer;
-
-		//own:  stores only those CPosLandmark objects, for which user has not set the icons
-		//      explicitly
-        RPointerArray<CPosLandmark>* iIconChangeLmkArray;
-
-        ///Own:
-        //CLmkAOOperation* iSearchAO;
-
-        ///Own
-        TInt iSelectedItemsCount;
-
-        ///Own : stores the search result count
-        TInt iCount;
-
-        //Own
-        TBool iRequestFromFindBox;
-
-		//Own : set the progress note flag to start CAOOperation
-		//		to get asynchronous search result
-        TBool iOperationNotInUse;
-
-        //Own : sets the operation given from the ui
-        TLmkAppCmdId iOperationCmd;
-
-        //Own : Operation type assign for operation
-        MLmkAOOperationObserver::TOperationTypes iType;
-
-        //Own : to store the
-        RArray<TPosLmItemId> iSelectedForDelete;
-
- 		//Own : no of landmarks to be deleted
-        TInt iItemsToDelete;
-
-       //Own : no of landmarks deleted while in the operation
-        TInt iItemsDeleted;
-
-        //Own is removelandmars operation going on.
-        TBool iIsRemoveLandmarks;
-
-        //Own : Waitnot for operations
-        CAknWaitDialog* iWaitNote;
-
-		//Own : CategoryId to remove landmarks from category operation
-		TPosLmItemId iCategoryId;
-    };
-
-#endif      // CLMKLMITEMLISTPROVIDER_H
-
-// End of File