diff -r 000000000000 -r f979ecb2b13e calendarui/controller/inc/calenlocationactiveselector.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/calendarui/controller/inc/calenlocationactiveselector.h Tue Feb 02 10:12:19 2010 +0200 @@ -0,0 +1,119 @@ +/* +* Copyright (c) 2005 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: Active class to launch the map and listen for user selection + * +*/ + + +#ifndef __LOCATIONACTIVESELECTOR_H__ +#define __LOCATIONACTIVESELECTOR_H__ + +// INCLUDES +#include "calenselectionobserver.h" +#include +#include // MAknServerAppExitObserver + +// FORWARD DECLARATIONS +class CMnMapView; +class TPosition; +class CPosLandmark; +class CCalenGlobalData; + +// CLASS DECLARATION +/** + * The asynchronous operation handler class to launch the map + * + */ +class CCalenLocationActiveSelector : public CActive + { + public: + /** + * Symbian 1st phase construction + * @param aObserver Observer to callback once user selects the location + */ + static CCalenLocationActiveSelector* NewL(MCalenSelectionObserver& aObserver, + MAknServerAppExitObserver& aExitObserver, + CCalenGlobalData& aGlobalData); + + /** + * Destructor + */ + ~CCalenLocationActiveSelector(); + + // CActive-related methods + /** + * RunL method to handle the user selection + */ + void RunL(); + + /** + * Cancel method to handle the user selection + */ + void DoCancel(); + + /** + * Function to handle any errors in async request + * @param aError Error Code + */ + TInt RunError( TInt aError ); + + /** + * Initiates selection operation + * @param aProvider Map Provider + * aPosition Current position + */ + void SelectL( CMnProvider& aProvider, + TPosition& aPosition, + TBool isLaunchedFromEditors); + + /** + * Initiates selection operation + * @param aProvider Map Provider + */ + void SelectL( CMnProvider& aProvider, + CPosLandmark* aLandmarkToShow); + + /** + * Disconnects from provider, when operation is completed + */ + void Reset(); + + /** + * Reads all the landmarks from all the available databases in the system + */ + void RetrieveAndAddLandMarksL(CMnMapView* aMapView, + TBool isLaunchedFromEditors); + + private: + /** + * C++ constructor + * @param aObserver Observer to callback once user selects the location + */ + CCalenLocationActiveSelector( MCalenSelectionObserver& aObserver, + MAknServerAppExitObserver& aExitObserver, + CCalenGlobalData& aGlobalData ); + + /** + * Symbian 2nd phase constructor + */ + void ConstructL(); + + private: + MCalenSelectionObserver& iObserver; + MAknServerAppExitObserver& iExitObserver; + CMnMapView* iMapView; + CCalenGlobalData& iGlobalData; + }; + +#endif /* __LOCATIONACTIVESELECTOR_H__ */