basiclocationinfodisplay/blid/ui/inc/CHtkNavigationControl.h
branchRCL_3
changeset 17 1fc85118c3ae
parent 16 8173571d354e
child 18 870918037e16
--- a/basiclocationinfodisplay/blid/ui/inc/CHtkNavigationControl.h	Thu Aug 19 09:48:36 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,566 +0,0 @@
-/*
-* Copyright (c) 2005-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:  Blid application compass view's compass control class definition.
-*
-*/
-
-
-
-#ifndef __CHTKNAVIGATIONCONTROL_H__
-#define __CHTKNAVIGATIONCONTROL_H__
-
-// SYSTEM INCLUDES
-#include <lbspositioninfo.h>
-#include <EPos_CPosLandmark.h>
-#include <alf/alfcontrol.h>
-
-//#ifdef RD_SCALABLE_UI_V2
-#include <barsread.h>
-#include <StringLoader.h>
-#include <aknstyluspopupmenu.h>
-//#endif // RD_SCALABLE_UI_V2
-
-// USER INCLUDE
-#include "CBlidBaseView.h"
-
-//FORWARD DCLERATION
-class MBlidLocation;
-class MBlidRouter;
-class MBlidEngObserver;
-class MBlidSettings;
-class CBlidEng;
-class CEikonEnv;
-class MKeyProcessor;
-class CAlfEnv;
-class CAlfImageVisual;
-class CAlfTextVisual;
-class CAlfBorderBrush;
-class CAlfAnchorLayout;
-class CAlfLayout;
-class CAlfCurvePath;
-class CAlfCurvePathLayout;
-class CAlfDeckLayout;
-class CAlfTextStyle;
-class CBlidArrivedTonePlayerUtility;
-class CAlfFrameBrush;
-class CAlfImageLoaderUtil;
-class CAlfTexture;
-
-const TInt KNumTexts = 3;
-
-/*! 
-  @class CHtkNavigationControl
-  
-  @discussion 
-  */
-class CHtkNavigationControl : public CAlfControl
-    {
-	public:
-		 /*!
-		  @function NewL
-		   
-		  @discussion Create a CHtkNavigationControl object, which will draw itself to aRect
-		  @param aRect the rectangle this view will be drawn to
-		  @result a pointer to the created instance of CHtkNavigationControl
-		  */
-		    static CHtkNavigationControl* NewL(CAlfEnv& aEnv,
-					                           MObjectProvider* aParent,
-							                   const TRect& aRect,
-					                           MBlidLocation& aLocation,
-					                           MBlidRouter& aRouter,
-					                           CBlidEng& aEngine,
-					                           CBlidBaseView& aView);
-
-		 /*!
-		  @function NewLC
-		   
-		  @discussion Create a CHtkNavigationControl object, which will draw itself to aRect
-		  @param aRect the rectangle this view will be drawn to
-		  @result a pointer to the created instance of CHtkNavigationControl
-		  */
-		    static CHtkNavigationControl* NewLC(CAlfEnv& aEnv,
-					                            MObjectProvider* aParent,
-							                    const TRect& aRect,
-					                            MBlidLocation& aLocation,
-					                            MBlidRouter& aRouter,
-					                            CBlidEng& aEngine,
-					                            CBlidBaseView& aView);
-
-
-		 /*!
-		  @function ~CHtkNavigationControl
-		  
-		  @discussion Destroy the object and release all memory objects
-		  */
-		     ~CHtkNavigationControl();
-
-	  
-	private:
-		 /*!
-		  @function CHtkNavigationControl
-		  
-		  @discussion Perform the first phase of two phase construction 
-		  */
-		    CHtkNavigationControl(CAlfEnv& aEnv,
-                                  MBlidLocation& aLocation,
-                                  CBlidBaseView& aView,
-                                  CBlidEng& aEngine );
-
-		 /*!
-		  @function ConstructL
-		  
-		  @discussion  Perform the second phase construction of a CHtkNavigationControl object
-		  */
-		    void ConstructL(CAlfEnv& aEnv,
-		                    const TRect& aRect,
-                            MBlidRouter& aRouter,
-                            CBlidEng& aEngine);
-
-	private:    
-        /** 
-         * Add new tabs to tabgroup
-         * @param aTabGroup
-         */
-        void AddTabsL(CAknTabGroup& aTabGroup);
-        
-        /**
-         * Appui's status pane getter
-         * @return Statuspane pointer
-         */
-        CEikStatusPane* StatusPane();
-        /**
-         * Creates navigation visuals
-         */
-        void CreateNavigationVisualsL( );
-        /**
-         * Creates navigation text visuals
-         */						     
-		void CreateNavigationTextVisualsL( CAlfTextStyle* aStyle1 );
-		/**
-         * Creates disstance visuals
-         */
-		void CreateDistanceVisualL( CAlfTextStyle* aStyle1 );
-		/**
-         * Play arrived tone
-         */
-		void PlayArrivedToneL();
-		/**
-         * Calculate if user has arrived to destination
-         */
-		void CalculateIfArrivedL();
-		/**
-         * Creates application strings
-         */
-		void CreateApplicationStringsL( );
-		/**
-         * Converts durtion into descriptor
-         */
-		void DurationFormat( TDes& aDurationString );
-		/**
-         * Converts distance unit into descriptor
-         */
-		void DistanceUnit( TDes& aUnitString );
-		/**
-         * Converts distance into descriptor
-         */
-		void DistanceFormat( TDes& aDistanceString );
-		/**
-         * Calculates durtion
-         */
-		void CalculateDurationL( TCourse aCourse );
-		/**
-         * Calculates distance
-         */
-		void CalculateDistanceL( TPosition aPosition );
-		/**
-         * Converts speed format into descriptor
-         */
-		void SpeedFormat( TDes& aSpeedString, TDes& aSpeedFormatString);
-		/**
-         * Creates speed visuals
-         */
-		void CreateSpeedVisualL( CAlfTextStyle* aStyle1 );
-		/**
-         * Prepares for dynamic move
-         */
-		void PrepareDynamicMoveL( );
-		/**
-         * Sets the landmark name
-         */                             
-		void SetLandMarksNameL();
-		/**
-         * Displays the current signal strength
-         */
-		void DisplaySatelliteSignalStrength( TInt aSatCount );
-		/**
-         * Creates textures for signal images
-         */
-		void CreateSignalTexturesL();
-		/**
-         * Create popup image texture
-         */
-		void CreatePopupImgTextureL();
-		/**
-         * Creates accuracy ring texture
-         */
-		void CreateAccTextureL();
-
-       /*
-        * This function checks wheather
-        * distance to destination is less than 10 meter
-        * and return ETrue or EFalse depends upon the condition.
-        */        
-        TBool IsInArrivedZone();
-		/**
-         * Creates indicator visual
-         */      
-        void CreateIndicatorVisualL();
-        /**
-         * Launches device not available note
-         */
-        void LaunchDeviceNotAvlNoteL();
-        /**
-         * Launches infor query dialog
-         */
-        void LaunchInfoQueryDlgL();
-		/**
-         * Creates animation
-         */
-        void CreateAnimationL();
-        /**
-         * Creates popup visuals
-         */
-        void CreatePopUpVisualL();
-        /**
-         * Updates visual image when timer is expired
-         */
-        void UpdateVisualImage();
-        /**
-         * Called when timer is expired
-         */
-        static TInt Tick(TAny* aObject); // functions for TCallBack protocol
-        /**
-         * Launches stylus activated popup
-         */
-        void LaunchStylusPopupMenuL( TPointerEvent aPointerEvent );
-        /**
-         * Calculate the Layout Rects
-         */
-        void CalculateRects();
-        /**
-         * Set Anchors for Visuals
-         */
-        void SetAnchors();
-        
-	public:	    //from CAlfControl
-		/**
-         * Handles the key events
-         */
-		TBool OfferEventL( const TAlfEvent& aEvent );
-		/**
-         * Notify about control visibility
-         */
-		void NotifyControlVisibility( TBool aIsVisible, 
-		       						  CAlfDisplay& aDisplay );
-					
-		
-	public:
-        /**
-         * Update controls
-         */ 
-        void UpdateL();
-        /**
-         * Clears the navigation info
-         */
-        void ClearNavigationInfoL();
-		/**
-         * Set update option
-         */
-		void SetUpdateOptionL( TBool aIsDestSet );        
-		/**
-         * Draw curves
-         */
-		void DrawCurvesL( );
-		/**
-         * Sets the flag visual
-         */
-		void SetFlagVisualL();
-		/**
-         * Sets the accuracy visual
-         */
-		void SetAccRacyVisualL();
-
-        /**
-         * Create CAknNavigationDecorator, ownership passed to caller.
-         * @param aDefaultNaviPane, ETrue if default, EFalse if tabgroup
-         * @return new instance of object. NULL, if something fails
-         */
-        void CreateNaviPaneL( TBool aDefaultNaviPane );
-
-
-        /**
-         * Activate navigation decorator.
-         * Method can called if tab needs to be refreshed.
-         * @param aNaviDecorator    navigation decorator
-         * @param aTabId            activated tabulator id             
-         */
-        void ActivateTabL( CAknNavigationDecorator& aNaviDecorator, 
-                            TInt aTabId );
-		/**
-         * Retruns the navi decorator
-         */
-		CAknNavigationDecorator* GetNiviDecorator( );
-		/**
-         * Change the flag visual image when reaching destination
-         */
-        void ChangeFlagVisualImageL();
-        /**
-         * Check if user has arrived to the destination
-         */
-        TBool HasArrivedDestination();        
-        /**
-         * Make title
-         * @param aResourceText resource to create title
-         */
-        void MakeTitleL( TInt aResourceText );
-        /**
-         * Stop the arrrival tone player
-         */
-        void StopPlayerL(  ); 
-        /**
-         * Update the layout
-         */
-        void UpdateLayoutL();
-        /**
-         * Displays the info popup msg
-         */
-        void DisplayInfoPopUpMsgL();
-        
-	private:
-		
-        /// Ref: A reference to MBlidLocation model
-        MBlidLocation& iLocationModel;
-
-        /// Ref: A pointer to MBlidRouter model
-        MBlidRouter* iRouter;
-
-        /// Reference to the view to handle resource change
-        CBlidBaseView& iView;
-        
-        /// Reference to the engine
-        CBlidEng& iEngine;
-
-        /// Own: Decorator class for navigation pane controls.
-        CAknNavigationDecorator* iDecoratedTabGroup;        
-        
-		//Own: Layout for all the visuals.
-		CAlfAnchorLayout* iLayout;
-
-		//Own: Text visuals. 
-		CAlfTextVisual* iLabel;
-		
-		//Own: Text visuals. 
-		CAlfTextVisual* iDistanceLabel;
-
-		//Own: Text visuals. 
-		CAlfTextVisual* iSpeedLabel;
-
-		//Own: Text visuals. 
-		CAlfTextVisual* iSpeedFormatLabel;
-
-		CAlfEnv& iEnv;
-		
-		CAlfImageVisual* iImageVisual;
-		
-        TInt iIndex;
-        
-        /// Own: Position information 
-        TPosition iPositionInfo;
-
-        /// Own: Course information
-        TCourse iCourse;
-        
-        /// Ref: A pointer to MBlidSettings model
-        MBlidSettings* iSettings;        
-        
-        // To determine if user has arrived to destination
-        static TBool iHasArrived;
-        
-        //variable to check wheather user arrived to destination
-        TBool iTimeFirstArrived;
-        
-        //Boolean to determine whether the arrived tone has palyed/not         
-        static TBool       iHasToPlayArrivedTone;
-
-        /// Own: Metric distance functionality text string 
-        HBufC* iDistanceFormatKm;
-
-        /// Own: Metric distance functionality text string 
-        HBufC* iDistanceFormatM;
-
-        /// Own: Imperial distance functionality text string 
-        HBufC* iDistanceFormatMiles;
-
-        /// Own: Imperial distance functionality text string 
-        HBufC* iDistanceFormatFt;
-
-        /// Own: Duration functionality text string 
-        HBufC* iDurationFormatLong;
-
-        /// Distance variable
-        TReal32 iDistance;
-
-        /// Duration variable
-        TTime iDuration;
-
-        /// Duration in days
-        TInt iDurationInDays;
-
-        /// Duration in seconds
-        TReal64 iDurationInSeconds;
-
-        /// Own: Speed's title text string
-        HBufC* iBlidSpeed;
-        
-        /// Speed variable
-        TReal iSpeed;
-
-        /// Is speed data available
-        TBool iIsSpeed;
-
-        /// Own: Metric speed's format text string
-        HBufC* iSpeedFormatKmph;
-
-        /// Own: Imperial speed's format text string
-        HBufC* iSpeedFormatMph;
-
-        // Own: No Data indicator
-        HBufC* iDataBeingCalculated;
-
-       // Own: No Data indicator
-        HBufC* iDataBlank;
-        
-		
-		TBool iIsDestinationSet;
-		
-		CAlfCurvePath* iCurvePath;		
-		
-		CAlfCurvePathLayout* iCurveLayout;
-		
-		HBufC8* iFlagText;
-		HBufC8* iAccText;
-		
-		CAlfImageVisual*  iFlagVisual;
-		
-		CAlfImageVisual*  iAccVisual;		
-		
-		CAlfImageVisual*  iNorthVisual;
-		
-		CAlfDeckLayout*  idecLayout;
-		
-		CAlfDeckLayout*  iNdecLayout;
-		
-		TReal iHeading;
-		
-		TRect iAccuracyRingRect;
-		
-		TPoint* iCharPoint;
-		
-		CAlfDeckLayout* iAccLayout;
-		
-        CPeriodic* iTimer;
-        
-        TInt iIsFirstDistance;
-        TReal32 iFirstDistance;
-    	HBufC*	iImagePath;
-    	TSize iCurveSize;
-    	TSize iFlagSize;
-    	TSize iAccuracyringcurveSize;   
-        
-        CAlfDeckLayout* iCurveDecLyt;
-        
-        CAlfAnchorLayout* iIndiAccAnchor;
-        
-        CAlfImageVisual* iIndicatorVisual;
-        
-        CAlfDeckLayout* iFlagdeck;
-        
-        CAlfDeckLayout* iActualNdeck;
-		
-		CBlidArrivedTonePlayerUtility* iToneUtility;
-		
-		TBool isStopUpdate;
-		
-		CAlfAnchorLayout* iPopUpLayout;
-		
-		CAlfTextVisual* iPopUpMsg;
-		
-		CAlfImageVisual* iPopImage;
-		
-		TBool isSatelliteInfoLaunch;
-		
-		CAlfDeckLayout* iPopupDeck;
-		
-		CAlfFrameBrush* iFrameBrush;
-		
-		CAlfAnchorLayout* iPopUpAnchor;
-
-		TRgb	iVisualColor;
-		
-		TBool iMskInfoVisible;
-		
-		CAlfImageVisual* iNavigationRing;
-
-	    CPeriodic* iPeriodic; // periodic timer active object
-        TInt iDisplayIcon;    // Current svg animation icon
-	    RPointerArray<CAlfTexture> iTextures;
-	    RPointerArray<CAlfTexture> iPopupTextures;
-	    RPointerArray<CAlfTexture> iSignalTextures;
-	    CAlfTexture* iAccTexture;
-	    CAlfTexture* iPopupImgTexture;
-				
-		MAlfBitmapProvider* iProvider;
-		
-		TRect iSignalStrengthRect;
-		
-		TRect iLmkNameRect;
-		
-		TRect iDistanceRect;
-		
-		TRect iSpeedBgRect;
-		
-		TRect iSpeedRect;
-		
-		TRect iSpdFormatRect;
-		
-		TRect iNavRingBgRect;
-		
-		TRect iAccRingRect;
-		
-		TRect iDirectionIndRect;
-		
-		TRect iNorthRect;
-
-		TRect iFlagRect;
-
-		CAknStylusPopUpMenu* iMenu;
-		
-		TBool isDeviceUnavailableDisplayed;
-    public:        
-        TBool iTimerComplete;
-        static TBool       iInArrivedZone;
-        TBool iIsDownPressed;
-    };
-
-#endif // __CHTKNAVIGATIONCONTROL_H__