diff -r 522cd55cc3d7 -r 13ae750350c9 landmarksui/uicontrols/inc/CLmkAppLmItemSelectorImpl.h --- a/landmarksui/uicontrols/inc/CLmkAppLmItemSelectorImpl.h Tue Feb 02 00:16:03 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,226 +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 - -* Base class for application's (view-based) selectors -* -*/ - - - - - - - -#ifndef CLMKAPPLMITEMSELECTORIMPL_H -#define CLMKAPPLMITEMSELECTORIMPL_H - -// INCLUDES -#include "CLmkAppSelectorImplBase.h" -#include "MLmkAOOperationObserver.h" -#include "MLmkLocationObserver.h" -#include "lmkwaitdlglauncher.h" -#include - -// FORWARD DECLARATIONS -class CLmkLmItemListProvider; -class CLmkDbUtils; -class CLmkLocationService; -class TPosition; -class CPosLandmark; -class CLmkSender; -class CLmkLocSettingsLauncher; - - -// CLASS DECLARATION - -/** -* Base class for application's (view-based) selectors that list items -* having TPosLmItemId, i.e. using provider of type CLmkLmItemListProvider. -*/ -class CLmkAppLmItemSelectorImpl -: public CLmkAppSelectorImplBase, - public MLmkAOOperationObserver, - public MLmkLocationObserver, - public MLmkWaitDialogLauncherObserver - { - public: // Constructors and destructor - /** - * Destructor. - */ - ~CLmkAppLmItemSelectorImpl(); - - public: // New functions - /** - * Method for changing an icon of a listbox item. Calls templated - * method which should handle subclass-specific details. - */ - void ChangeIconCmdL(); - // Added for Bug Fix - void CLmkAppLmItemSelectorImpl::DiskSpaceBelowCriticalLevelL( - TInt aBytesToWrite, TChar aDrive); - - TInt CLmkAppLmItemSelectorImpl::CalculateLandmarkDisksize( - const CPosLandmark& aLandmark); - - public: // From CLmkAppSelectorImplBase - MLmkListMemento* MementoL(); - /** - * Method to handle change in screen size. - * When the icon selection popup is shown screen size changes have to - * be propagated to the popup. - */ - void HandleScreenSizeChange(); - - TInt CurrentCategoryId(); - - public: //from MLmkMapAndNavigationObserver - void HandleLmCreated(TPosLmItemId aNewLmkItemId); - - public://from MLmkWaitDialogLauncherObserver - void HandleDialogDismissed( TInt aButtonId ); - - protected: // From MEikCommandObserver - void ProcessCommandL( TInt aCommandId ); - - protected: // From MLmkLocationObserver - void NotifyL( const TInt aStatus ); - void NotifyErrorL( TInt aErrorCode ); - - protected: // New functions - /** - * Returns provider reference as CLmkLmItemListProvider type. - * @return provider reference - */ - CLmkLmItemListProvider& LmItemListProvider(); - - /** - * Currently selected item's id - * @return TPosLmItemId - */ - TPosLmItemId SelectedIdL(); - - /** - * Currently marked item ids - * @return TPosLmItemId array reference - */ - RArray& MarkedItemIdsL(); - - /** - * Template method called by ChangeIconCmdL. - * @param aId - * @param aIconIndex - */ - virtual void ChangeIconL( TPosLmItemId aId, TInt aIconIndex, TInt aMaskIndex) = 0; - - /** - * Template method called by ChangeIconCmdL. - * @param aIdArray - * @param aIconIndex - */ - virtual void ChangeIconsL( RArray& aIdArray, - TInt aIconIndex, TInt aMaskIndex) = 0; - - IMPORT_C void LaunchPosSettingsL(); - /** - * Initial landmark - * @param aLandmark - */ - virtual void InitialLandmarkL( CPosLandmark* /*aLandmark*/ ){} - - /** - * Method to change the mark index or indexes after adding - * new Landmark. - * @param None - */ - void UpdateMarkIndexAfterAdditionL( TInt aIndexToBeSelected ); - //resolves id, to be focussed after deletion. - void StoreIdTobeFocussedAfterDeletion( RArray& markedItemIds ); - //sets item to focus after deletion - void SetFocusToItemAfterDeletionOfMarkedItems(); - - protected: // Constructors and destructor - /** - * C++ default constructor. - */ - CLmkAppLmItemSelectorImpl( CPosLandmarkDatabase& aDb, - CLmkSender& aSender, - TBool aFindBox ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void BaseConstructL(); - - private: //new functions - /** - * Make new landmark - */ - void NewLandmarkCmdL(); - - /** - * Executes landmark editor with correct parameters for - * new landmark creation. - * @param aLandmark empty or initialized landmark for editing - */ - void ExecuteNewLandmarkEditorL( CPosLandmark& aLandmark ); - /** - * Request current location - */ - void RequestCurrenLocationL(); - - /** - * Create new landmark from current location - * @param aPosition - */ - void CreateLmkFromCurrentLocationL( const TPosition& aPosition ); - - static TInt MessageQueryCallBack( TAny* aPtr ); - - protected: // Data - ///Ref: - CLmkSender& iSender; - - ///Own: - CLmkDbUtils* iDbUtils; - - ///Own: - CLmkLocationService* iLocationService; - - RArray iMarkedItemIds; - - // If a new Item is added then the highlight will have to be - // adjusted to point to the currently added Item. - // For new Landmarks This flag will be set in this class - // For new Categories this flag will be set in the derived class - // And the flag is used in the respective derived classes. - TBool iNewListBoxItemAdded; - - // Own: Pointer to Location Settings Launcher - CLmkLocSettingsLauncher* iLauncher; - - //this holds the landmark view dialog - CLmkEditorImpl* iDlg; - - /** - * Wait dialog launcher - * Owns - */ - CLmkWaitDialogLauncher* iWaitDialogLauncher; - //item to focus after deletion - TPosLmItemId iFocusItemIdAfterDeletion; - }; - -#endif // CLMKAPPLMITEMSELECTORIMPL_H - -// End of File