csxhelp/AiwHelpProvider/src/AiwHelpProvider.cpp
branchRCL_3
changeset 44 12f60d9a73b3
parent 40 0d1adf67ec1b
child 45 cbffe13eac63
--- a/csxhelp/AiwHelpProvider/src/AiwHelpProvider.cpp	Thu Aug 19 09:42:56 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,236 +0,0 @@
-/*
-* Copyright (c) 2002 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:  source file.
-*                Write all source code here, all the implementations
-*
-*/
-
-
-#include <eikmenup.h>
-#include "AiwHelpProvider.h"
-#include <AiwMenu.h>
-#include <barsread.h>
-#include <eikenv.h>
-#include <AiwHelpProviderPlugin.rsg>
-#include <ImplementationProxy.h>
-#include "AiwHelpProvider.rh"
-#include <AiwServiceIfMenu.h>
-#include <AiwCommon.h>
-#include <hlplch.h>
-#include <coemain.h>
-#include <avkon.hrh>
-
-
-_LIT(KResFileName, "\\resource\\apps\\AiwHelpProviderPlugin.rsc");
-
-#define KImplementationId 0x10207465
-
-
-
-/******************************************************************
-===================================================================
-						NewL of the Provider
-===================================================================
-*******************************************************************/						
-CAiwHelpProvider* CAiwHelpProvider::NewL()
-    {
-    return new (ELeave) CAiwHelpProvider();
-    }
-
-
-    
-/******************************************************************
-===================================================================
-						Constructor of the Provider
-===================================================================
-*******************************************************************/
-CAiwHelpProvider::CAiwHelpProvider()
-    {
-    }
-
-
-
-/******************************************************************
-===================================================================
-					Destructor of the Provider
-===================================================================
-*******************************************************************/
-CAiwHelpProvider::~CAiwHelpProvider()
-    {
-    }
-    
-    
-    
-/**
-        * Called by the Handler framework to initialise provider with
-        * necessary information from Handler.
-        * @param aFrameworkCallback Framework provided callback for
-        *        provider to send events to framework
-        * @param aInterest List of criteria items which invoked the provider.
-        * @exception Symbian OS error code
-        */
-void CAiwHelpProvider::InitialiseL(MAiwNotifyCallback& /*aFrameworkCallback*/,
-    const RCriteriaArray& /*aInterest*/)
-    {
-    
-    }
-
-
-/**
-        * Executes generic service commands included in criteria.
-        * @param aCmdId Command to be executed
-        * @param aInParamList Input parameters, can be an empty list
-        * @param aOutParamList Output parameters, can be an empty list
-        * @param aCmdOptions Options for the command, see KAiwOpt* constants in AiwCommon.hrh.
-        * @param aCallback callback for asynchronous command handling, parameter checking, etc.
-        * @see enum TAiwServiceCmdOptions in AiwCommon.hrh
-        * @exception KErrArgument if callback is missing when required.
-        * @exception KErrNotSupported if no provider support service
-        */
-void CAiwHelpProvider::HandleServiceCmdL(const TInt& /*aCmdId*/,
-    const CAiwGenericParamList& /*aInParamList*/,
-    CAiwGenericParamList& /*aOutParamList*/,
-    TUint aCmdOptions,
-    const MAiwNotifyCallback* /*aCallback*/)
-    {
- 	// Cancel bit must always be checked. 
-    if(aCmdOptions & KAiwOptCancel)
-        {
-        return;
-        }
-    }
-/**
-        * Initialises menu pane by adding provider specific menu items.
-        * The AIW Framework gives the parameters to be used in addition.
-        * @param aMenuPane Menu pane handle
-        * @param aIndex position of item where to add menu items.
-        * @param aCascadeId ID of cascade menu item.
-        * @param aInParamList input parameter list for provider's parameters checking
-        */
-        
-void CAiwHelpProvider::InitializeMenuPaneL(CAiwMenuPane& aMenuPane,
-    TInt aIndex,
-    TInt /*aCascadeId*/,
-    const CAiwGenericParamList& /*aInParamList*/)
-    {
-    TFileName resFile(KResFileName);
-    TFileName dllName;
-    Dll::FileName(dllName);
-    TBuf<2> drive = dllName.Left(2);
-    resFile.Insert(0, drive);
-    aMenuPane.AddMenuItemsL(resFile, R_AIWHELPPROVIDER_MENU, KAiwCmdHelp, aIndex);
-    }
-
-/**
-        * Handle a menu command invoked by the Handler.
-        * @param aMenuCmdId Command ID for the menu command,
-        *        defined by the provider when adding the menu commands.
-        * @param aInParamList Input parameters, could be empty list
-        * @param aOutParamList Output parameters, could be empty list
-        * @param aCmdOptions Options for the command, see KAiwCmdOpt* constants.
-        * @param aCallback callback if asynchronous command handling is wanted by consumer.
-        *    The provider may or may not support this, leaves with KErrNotSupported, it not.
-        */
-void CAiwHelpProvider::HandleMenuCmdL(TInt aMenuCmdId,
-    const CAiwGenericParamList& aInParamList,
-    CAiwGenericParamList& /*aOutParamList*/,
-    TUint aCmdOptions,
-    const MAiwNotifyCallback* /*aCallback*/)
-    {
-    // Cancel bit must always be checked.
-    if(aCmdOptions & KAiwOptCancel)
-        {
-        return;
-        }
-           
-    switch (aMenuCmdId)
-	    {
-	    case EAiwShowHelpCmd:
-	    case EAknCmdHelp:
-		    {
-		    TCoeHelpContext helpContext;
-		    TInt index;
-		        
-		    // Get the UID of the Help context i.e. the UID of the CS Help file containing 
-		    // the topic information.
-
-		    index = 0;
-		    const TAiwGenericParam* uidParam = aInParamList.FindFirst(index, EGenericParamHelpItem, 
-		        EVariantTypeTUid);
-
-		    if(index >= 0)
-		        {
-		        // Get the data.
-		        const TAiwVariant& val = uidParam->Value();
-		        helpContext.iMajor = val.AsTUid();
-		        }
-		    else
-		        {
-		        // UID param not found. Error handling could be added here.
-		        }            
-		        
-		    // Get the context of Help i.e. the name of the help context. This is the literal 
-		    // descriptor generated from a context string by the CSHelp compiler.          
-
-		    index = 0;
-		    const TAiwGenericParam* contextParam = aInParamList.FindFirst(index, EGenericParamHelpItem, 
-		        EVariantTypeDesC);
-
-		    if(index >= 0)
-		        {
-		        // Get the data.
-		        const TAiwVariant& val = contextParam->Value();
-		        helpContext.iContext = val.AsDes();
-		        }
-		    else
-		        {
-		        // Context param not found. Error handling could be added here.
-		        }             
-		                            
-		    CArrayFix<TCoeHelpContext>* contextList = new (ELeave) CArrayFixFlat<TCoeHelpContext>(1);
-		    contextList->AppendL(helpContext);
-		    
-		    //Get the Window server session
-		    RWsSession wsSession;
-		    User::LeaveIfError(wsSession.Connect());
-		    CleanupClosePushL(wsSession);
-		    HlpLauncher::LaunchHelpApplicationL(wsSession,contextList);
-		    CleanupStack::PopAndDestroy();
-		    break;
-		    }
-        default:
-            break;
-        }
-    }
-
-//
-// Rest of the file is for ECom initialization. 
-//
-
-// Map the interface UIDs to implementation factory functions
-const TImplementationProxy ImplementationTable[] =
-    {
-        IMPLEMENTATION_PROXY_ENTRY(KImplementationId, CAiwHelpProvider::NewL)
-    };
-
-// ---------------------------------------------------------
-// Exported proxy for instantiation method resolution
-// ---------------------------------------------------------
-//
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-    {
-    aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
-    return ImplementationTable;
-    }
-