basiclocationinfodisplay/blid/ui/inc/CBlidAppUi.h
branchRCL_3
changeset 18 870918037e16
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/basiclocationinfodisplay/blid/ui/inc/CBlidAppUi.h	Wed Sep 01 12:31:27 2010 +0100
@@ -0,0 +1,177 @@
+/*
+* 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:  Blid application UI class definition.
+*
+*/
+
+
+
+#ifndef BLIDAPPUI_H
+#define BLIDAPPUI_H
+
+// INCLUDES
+#include <aknViewAppUi.h>
+#include <akntabgrp.h>
+#include <aknnavide.h>
+#include <AknTabObserver.h>
+// included for Huitk impl
+#include <alf/alfenv.h>
+
+// USER INCLUDE
+#include "MKeyProcessor.h"
+#include "BlidNotes.h"
+
+// FORWARD DECLARATIONS
+//class CBlidMainContainer;
+class CBlidDocument;
+class CSatelliteInfoUI;
+
+// CLASS DECLARATION
+
+/**
+* Application UI class. 
+*/
+class CBlidAppUi : public CAknViewAppUi, public MAknTabObserver, 
+                   public MKeyProcessor
+    {
+    public: // Constructors and destructor
+        /**        
+         * Second phase constructor        
+         */      
+        void ConstructL();
+
+        /**
+         * Destructor.
+         * Frees reserved resources
+         */      
+        ~CBlidAppUi();
+        
+    public: // New functions
+        /**
+         * Returns the Blid document object.
+         * @return CBlidDocument
+         */
+        CBlidDocument* BlidDocument() const;
+
+        /**
+         * Show BLID application's dialogs
+         * @param aNoteId Id of Note
+         */
+        void ShowDialogL( const BlidNotes::TBlidNotes aNoteId );
+
+        /**
+         * Skin changed
+         *
+         */
+        void SkinChange();
+
+        /**
+         * Checks if App is in foreground
+         */
+        TBool IsForeground();
+        
+        /**
+         * Set satellite view active or inactive
+         * @param aActive To set active or inactive
+         */        
+        void SetSatelliteViewActive( TBool aActive );
+        
+        /**
+         * Check if Satellite view is active
+         *
+         */        
+        TBool IsSatelliteViewActive( );
+        
+        /**
+         * Resets the odometer value
+         *
+         */        
+        void ResetOdoMeterValueL();
+        
+        /**
+         * Launches Satellite info dialog
+         *
+         */        
+        void LaunchSatelliteInfoDlgL();
+
+    public: // From MAknTabObserver
+        /**
+         * Called when Tab is changed, activates appropriate view
+         * @param aIndex
+         */    
+        void TabChangedL(TInt aIndex);
+
+    public: // From  MKeyProcessor
+        /**
+         * Process key event
+         * @param aKeyEvent
+         * @param aType
+         */    
+        TBool ProcessKeyEventL( const TKeyEvent& aKeyEvent,TEventCode aType );
+        
+        /**
+         * Retruns CBlidAppUi pointer, which is Tab observer
+         *
+         */        
+        MAknTabObserver* TabObserver();
+    
+    public: // from MBlidEngObserver
+        void NotifyL( const TBool aOnlineMode );
+        void NotifyErrorL( TInt aErrorCode );
+
+    protected: // from CCoeAppUi
+        /**
+         * Called whenever app goes to background or comes to foreground
+         * @param aForeground
+         */    
+	    void HandleForegroundEventL(TBool aForeground);
+	    
+        /**
+         * Handles a change to the resources
+         * @param aType
+         */	    
+		void HandleResourceChangeL( TInt aType );
+		
+    public: // From CEikAppUi
+        /**
+         * From CEikAppUi, takes care of command handling.
+         * @param aCommand command to be handled
+         */
+        void HandleCommandL(TInt aCommand);
+
+    private: // new functions
+        /**
+         * Launch Landmarks
+         */
+        void LaunchLandmarksDialogL();
+        
+    private: //Data
+        /// Ref: A pointer to CSatelliteInfoUI
+        CSatelliteInfoUI* iSatelliteInfo;
+
+        /// Own: TBool variable
+        TBool iContextPane;
+        
+        /// Own: State to hole app state (foreground/background)
+        TBool iForeground;
+    
+		/*! @var HUIToolkit environment. */
+    	CAlfEnv* iAlfEnv;
+    	
+    	TBool iIsSatViewActive;
+    };
+
+#endif // BLIDAPPUI_H
+
+// End of File