browserui/videoservices/inc/VideoServicesAppUi.h
branchRCL_3
changeset 65 8e6fa1719340
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/browserui/videoservices/inc/VideoServicesAppUi.h	Wed Sep 01 12:31:04 2010 +0100
@@ -0,0 +1,164 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "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:  Header file for CVideoServicesAppUi
+*
+*/
+
+
+#ifndef VideoServicesAPPUI_H
+#define VideoServicesAPPUI_H
+
+// INCLUDES
+#include <eikapp.h>
+#include <eikdoc.h>
+#include <eikproc.h>
+#include <e32std.h>
+#include <coeccntx.h>
+#include <aknappui.h>
+#include <browserlauncher.h>
+#include <downloadedcontenthandler.h>
+#include <centralrepository.h>
+#include <httpcachemanagerinternalcrkeys.h>    
+#include "VideoServicesPrivateCRKeys.h"
+
+#include <favouriteslimits.h> // KFavouritesMaxUrl
+#include <browseroverriddensettings.h>
+
+// CONSTANTS
+const TUid KUidBrowserApplication = { 0x10008d39 };				//Browser UID
+_LIT( KBrowserPath, "Z:\\system\\apps\\Browser\\Browser.app" );	//Browser path
+
+// FORWARD DECLARATIONS
+class CVideoServicesContainer; 
+class CVideoServicesAppUi;
+
+// CLASS DECLARATION
+
+/**
+* Application UI class.
+* Provides support for the EIKON control architecture
+* 
+* @since Series 60 3.1
+*/
+class CVideoServicesAppUi :	public	CAknAppUi, 
+							public	MDownloadedContentHandler, 
+									MApaEmbeddedDocObserver
+    {
+    public: // Constructors and destructor
+
+		/**
+		* Default Constructor
+		*/
+		CVideoServicesAppUi();
+			
+        /**
+        * Destructor.
+        */      
+        ~CVideoServicesAppUi();
+        
+	public: // From MDownloadedContentHandler
+
+        /**
+        * Handle downloaded content that has been saved to a file, 
+        * and return ETrue if it was handled successfully.
+        * @param aFileName File name with path.
+        * @param aParamList Generic parameter list.
+        * @param aContinue Output parameter: It must be ETrue if the caller wants 
+        *                  Browser not to terminate after the content is handled.
+        * @return ETrue if the implementer has processed the content. If it is 
+        *                  EFalse, BrowserLauncher opens that content in an 
+        *                  appropriate viewer application.
+        */
+        TBool HandleContentL( const TDesC& aFileName, const CAiwGenericParamList& aParamList, TBool& aContinue );
+
+        /**
+        * Reserved for future use.
+        */
+        TAny* DownloadedContentHandlerReserved1( TAny* aAnyParam );
+
+    private:
+		/**
+		* EPOC Default Constructor
+		*/
+        void ConstructL();
+
+		/**
+        * From CEikAppUi, takes care of command handling.
+        * @param aCommand command to be handled
+		* @return void
+		* @since Series 60 3.1
+        */
+        void HandleCommandL( TInt aCommand );
+
+        /**
+        * From CEikAppUi, handles key events.
+        * @param aKeyEvent Event to handled.
+        * @param aType Type of the key event. 
+        * @return Response code (EKeyWasConsumed, EKeyWasNotConsumed). 
+		* @since Series 60 3.1
+        */
+        virtual TKeyResponse HandleKeyEventL( 
+            const TKeyEvent& aKeyEvent,TEventCode aType );
+
+    private: // From MApaEmbeddedDocObserver
+		/**
+		* From MApaEmbeddedDocObserver, observes when the 
+		* embedded browser exits
+		* @param aMode The browser exit mode (ignored in VideoServices)
+		* @return void
+		* @since Series 60 3.1
+		*/
+		void NotifyExit( TExitMode aMode );
+
+	private: // New functions
+		/**
+		* Launches browser with "Operator-specified" url as start page
+		* @return void
+		* @since Series 60 3.1
+		*/
+		void LaunchBrowserEmbeddedWithVideoUrlL();
+
+    public: // New functions
+		/**
+		* Launches the browser according to the available parameters 
+		* ( "Operator-specified" video url )
+		* @return void
+		* @since Series 60 3.1
+		*/
+		void LaunchBrowserL();
+
+    public: // Functions from MEikStatusPaneObserver
+
+        /**
+        * Handles status pane size change.
+		* @return void
+		* @since Series 60 3.1
+        */
+        void HandleStatusPaneSizeChange();
+
+	private: // Data
+
+		// VideoServices App view container (not shown in final App)
+        CVideoServicesContainer* iAppContainer;
+        
+        // Access central repository of VideoServices
+        CRepository* iVideoServicesRepository;
+
+		// Buffer where the url is read
+		TBuf<KFavouritesMaxUrl>	iUrl;
+    };
+
+#endif
+
+// End of File