diff -r 8173571d354e -r 1fc85118c3ae eventsui/eventseditor/inc/evtmgmtuiplacecomponent.h --- a/eventsui/eventseditor/inc/evtmgmtuiplacecomponent.h Thu Aug 19 09:48:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,322 +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: 'Set Place' component for retrieving place. -* -*/ - - -#ifndef EVTMGMTUIPLACECOMPONENT_H_ -#define EVTMGMTUIPLACECOMPONENT_H_ - -#include // CBase - -#include "evtmgmtuimapnavigationadapter.h" -#include "evtmgmtuilocationserviceadapter.h" -#include "evtmgmtuiwaitdlglauncher.h" -#include "evtmgmtuilocsettinglauncherobserver.h" - -class TCoordinate; -class CEvtMgmtUiLocSettingsLauncher; -class CAknIconArray; - -/** - * @class CEvtMgmtUiPlaceComponent - * Class that represents 'Set place' component of editor - * - * This class acts as 'set place' component of editor. - * It is used to retrieve location details for which event will be set. - * Location details can be retrieved from current location, map or landmark - * - * @since S60 v9.1 - */ - -class CEvtMgmtUiPlaceComponent: public CBase, - public MEvtMgmtUiMapAndNavigationObserver, - public MEvtMgmtUiLocationServiceObserver, - public MEvtMgmtUiWaitDialogLauncherObserver, - public MEvtMgmtUiLocSettingsLauncherObserver - { -private: - /* - * 'Set place' popup dialog options - */ - enum TEvtMgmtUiSetPlace - { - /* - * It indicates that 'Current location' is selected - * from popup dialog - */ - EEvtMgmtUiSetPlaceCurrentPlace, - /* - * It indicates that 'Landmark' is selected - * from popup dialog - */ - EEvtMgmtUiSetPlaceLandmark, - /* - * It indicates that 'Map' is selected - * from popup dialog - */ - EEvtMgmtUiSetPlaceFromMap, - }; - - public: // Constructor and destructor - /** - * Static Two phase constructor - * @param[in] aPrevPlace - place of existing event - * empty string for newly create event - * @param[in/out] aTriggerLocation - location of the existing event is passed. - * after successful completion of retrieval operation - * new location is set to it. - */ - static CEvtMgmtUiPlaceComponent* NewLC(const TPtrC aPrevPlace, - TCoordinate& aTriggerLocation ); - - static CEvtMgmtUiPlaceComponent* NewL(const TPtrC aPrevPlace, - TCoordinate& aTriggerLocation ); - - /** - * Virtual destructor - */ - virtual ~CEvtMgmtUiPlaceComponent(); - - public:// new functions - /** - * It is used as a wrapper class to trap leaving function DisplayPlacePopupDlgL() - * - * @since S60 v5.0 - * - * @param[in] aStatus - status which will contain success/failure state - * based on retrieval of location is successful or failed - */ - void DisplayPlacePopupDlg( TRequestStatus& aStatus ); - - /** - * It is used to retrieve place details - * - * @since S60 v5.0 - * - * @ret place details retrieved - */ - TPtrC Place() const; - - /** - * It is used to retrieve location details - * - * @since S60 v5.0 - * - * @ret location details retrieved - */ - TCoordinate& TriggerLocation() const; - - /** - * It is used to launch position settings - * - * @since S60 v5.0 - */ - void LaunchPositioningSettingsL(); - - public: //Derived - - /** - * Derived from MEvtMgmtUiMapAndNavigationObserver - */ - void HandleMapAndNavigationResponseL( TInt aErrorCode, const TPtrC aPlace, TCoordinate aTriggerLocation ); - - /** - * Derived from MEvtMgmtUiLocationServiceObserver - */ - void HandleLocationServiceResponseL( const TInt aStatus ); - - /** - * Derived from MEvtMgmtUiLocationServiceObserver - */ - void HandleLocationServiceErrorL( TInt aErrorCode ); - - /** - * Derived from MEvtMgmtUiWaitDialogLauncherObserver - */ - void HandleDialogDismissed( TInt aButtonId ); - - /** - * Derived from MEvtMgmtUiLocSettingsLauncherObserver - */ - void NotifyLocSettingLaucherChangeL( TInt aErrorCode ); - - private://new functions - /* - * It is used to display accuracy note - */ - void DisplayAccuracyNoteL(); - /* - * It is used to display accuracy note - */ - void DisplayAccuracyNoteL(TPosition& aPos); - /* - * It is used to get the accuracy string - */ - void GetAccuracyStringL( TReal& aAccuracy, HBufC*& aAccuracyString ); - /* - * Gets the place details from retrieved position information. - */ - TInt GetPlaceL(); - /* - * Resolves the Error code - */ - void ResolveErrorL( TInt aErrorCode ); - - private: // Constructor - /** - * C++ Default constructor - */ - CEvtMgmtUiPlaceComponent( TCoordinate& aTriggerLocation ); - - /** - * Second phase of the two phase constructor - */ - void ConstructL( const TPtrC aPrevPlace ); - - private: //new function - - /** - * It is used to display 'set place' popup dialog and retrieve place - * using selected method. - * - * @since S60 v5.0 - * - * @ret it returns the option selected. - * it leaves with KErrCancel, if popup dialog is cancelled. - * it may leave with other errors, if retrieval of place fails. - */ - TInt DisplayPlacePopupDlgL(); - - /* - * It is used to display error note. - * - * @since S60 v5.0 - * - * @param[in] aResourceId - resource ID of the text to be displayed on error note. - */ - void DisplayErrorNoteL(TInt aResourceId ); - - - /** - * It retrieves place details from landmark - * - * @since S60 v5.0 - * - */ - void PlaceFromLandmarkL(); - - /** - * It returns total number of landmarks stored in landmark database. - * If there is any error in retrieving details, it will return zero landmark. - * - * @since S60 v5.0 - * - * @ret total number of landmarks stored in landmark database - */ - TInt LandmarksL(); - - /** - * It displays message query if there is no positioning method enabled. - * - * @since S60 v5.0 - * - * @ret If pressed Ok, it will return true. - * If pressed Close, it will return false. - */ - TBool DisplayNoPositioningMethodInfoNoteL( TInt aResourceId ); - - /** - * It initiates set place request from current location. - * If there is no positioning method enabled, it will leave with KErrCancel. - * Otherwise it will request current location and will launch busy dialog. - * - * @since S60 v5.0 - * - */ - void PlaceFromCurrentLocationL(); - - /** - * Update icons - */ - void UpdateIconsL( CAknListQueryDialog& aDialog ); - - /** - * Append icon to icon array. CAknIconArray owns icons so it is - * easier to it leave safely. - * @param aIcons icon array - * @param aIconFileWithPath icon file name with path - * @param aSkinID skin id of the icon - * @param aIconGraphicsIndex picture index - * @param aIconGraphicsMaskIndex mask index - */ - void AddIconL( CAknIconArray& aIcons, - const TDesC& aIconFileWithPath, - TAknsItemID aSkinID, - TInt aIconGraphicsIndex, - TInt aIconGraphicsMaskIndex ); - - /** - * Gets Events Management UI icon file path and name. Ownership - * is transferred, item is left in the cleanup stack. - * @return TFileName* The full name of the Events UI icon file. - */ - TFileName* IconFileNameLC() const; - /** - * It will create new trigger; - */ - //void CreateTriggerL(); - private: - /** - * Place value - * owns - */ - HBufC* iPlace; - /* - * location details - */ - TCoordinate& iTriggerLocation; - - /* - * status of retrieval of place - * Not own - */ - TRequestStatus* iStatus; - - /* - * object used to retrieve place details from map - * Owns - */ - CEvtMgmtUiMapNavigationAdapter* iMapAdapter; - /* - * object used to retrieve place details from current location - * Owns - */ - CEvtMgmtUiLocationServiceAdapter* iLocationServiceAdapter; - /** - * Wait dialog launcher - * Owns - */ - CEvtMgmtUiWaitDialogLauncher* iWaitDialogLauncher; - /* - * object used to display position settings - * Owns - */ - CEvtMgmtUiLocSettingsLauncher* iPosSetLauncher; - - TBool iIsDlgOutstanding; - }; - -#endif //EVTMGMTUIPLACECOMPONENT_H_