renamed dlls+exe to prevent conflicts with existing files in emulator; changelog attached.
* renamed dlls/exe:
- aifw.dll to aifw_hs.dll
- cputils to cputils_hs
- aiidleint.dll to aiidleint_hs.dll
- aiutils.dll to aiutils_hs.dll
- MenuInterface.dll to MenuInterface_hs.dll
- XCFW.dll to XCFW_hs.dll
- homescreen.exe to homescreen_hs.exe
- ailaunch.exe to ailaunch_hs.exe
* new UID for Active Idle (aifw_hs.dll, aiidleint_hs.dll and homescreen.exe):
#define AI_UID3_AIFW_COMMON 0xEDFF45C4 (was 0x102750F0 = 271012080)
* new UID for cputils_hs.dll: 0xE3E7134E (was 0x20016B7F = 536963967)
* new UID for AI Utilities Factory (aiutils_hs.dll): 0xEC55106C (was 0x10281865 = 271063141)
* new UID for MenuInterface_hs.dll: 0xEEE24485 (was 0x10210EAB = 270601899)
* new UID for XCFW_hs.dll: 0xEB12332F (was 0x10210EA0 = 270601888)
* new UID for ailaunch_hs.exe: 0xEF5A047A (was 0x200286E3 = 537036515)
/*
* 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: This class is a handler for getlist operation. It manages fetching and
* providing getlist information
*
*
*/
#ifndef __MCSGETLISTHANDLER_H__
#define __MCSGETLISTHANDLER_H__
#include <e32base.h>
#include <e32property.h>
#include "mcsmenuitem.h"
//Forward declatations
class CMenuSrvEng;
class CLiwGenericParamList;
class CMenuFilter;
class CLiwMap;
/*
* GetList Handler.
* @lib mcsmenu.lib
* @since S60 v5.0
*/
NONSHARABLE_CLASS( CMcsGetlistHandler ): public CBase
{
public:
typedef TUint TBasicParameters;
enum
{
EGetListRecursive = 1,
EGetListFlat = 2,
EGetListParentOnly = 4,
EGetListIncludeParent = 8
};
/**
* Factory method.
*/
static CMcsGetlistHandler* NewL( CMenuSrvEng& aEng );
/**
* Destructor.
*/
~CMcsGetlistHandler();
/**
* Do getlist operation. Stores serialized result in
* iSerializedOutput descriptor
* @param aSerializedInput serialized input parameters for getlist
* @result size of serialized result descriptor
*/
TInt GetListSizeL( const TDesC8& aSerializedInput );
/*
* Returns result of GetList operation
* @return serialized output of GetList operation
**/
TPtrC8 GetListDataL( );
/*
* Destroys the output buffer.
**/
void CloseOutputBuffer( );
private:
/**
* Constructor.
*/
CMcsGetlistHandler( CMenuSrvEng& aEng );
/**
* 2nd phase constructor
*/
void ConstructL();
private:
/**
* Fetches basic input parameters for GetList operation
* @param aInputList input list for GetList
* @param aFolderId to store folder id
* @param aBasicParameters to store basic parameters
*/
void FetchBasicParametersL( const CLiwGenericParamList* aInputList,
TInt& aFolderId, TBasicParameters& aBasicParameters );
/**
* Fetches required and ignored attributes
* @param aInputList input list for GetList
* @param aRequiredAttributes to store required attributes
* @param aIgnoredAttributes to store ignored attributes
*/
void FetchRequiredAndIgnoredAttributesL(
const CLiwGenericParamList* aInputList,
CDesC16Array* aRequiredAttributes,
CDesC16Array* aIgnoredAttributes );
/**
* Fetches filter
* @param aInputList input list for GetList
* @param aFilter to store filter
*/
TBool FetchFilterL( const CLiwGenericParamList* aInputList,
CMenuFilter* aFilter );
/**
* Fetches items ids
* @param aItemArray items ids
* @param aFolderId folder id
* @param aFilter filter
* @param aBasicParameters basic input parameters for getlist
*/
void FetchItemsIdsL( RArray<TMenuItem>& aItemArray, TInt aFolderId,
CMenuFilter* aFilter, TBasicParameters& aBasicParameters );
/**
* Gets attributes from descriptor
* @param aList descriptor containing attributes
* @param aArray array to store attributes
*/
void GetAttributesL( const TDesC& aList, CDesC16Array* aArray );
/**
* Set flags in filter
* @param inputMap Input map containint flags
* @param aFilter filter
*/
void SetFlagsL( const CLiwMap* inputMap, CMenuFilter* aFilter );
/**
* Set attribute string to input map
* @param inputMap input map
* @param aAttrName input attribute name
* @param aFilter filter
*/
void SetAttributeDesL( const CLiwMap* inputMap,
const TDesC& aAttrName, CMenuFilter* aFilter );
/**
* Set attribute hex to input map
* @param inputMap input map
* @param aAttrName input attribute name
* @param aFilter filter
*/
void SetAttributeHexFormatL( const CLiwMap* inputMap,
const TDesC& aAttrName, CMenuFilter* aFilter );
/**
* Set attribute num to input map
* @param inputMap input map
* @param aAttrName input attribute name
* @param aFilter filter
*/
void SetAttributeNumL( const CLiwMap* inputMap,
const TDesC& aAttrName, CMenuFilter* aFilter );
/**
* Set attribute bool to input map
* @param inputMap input map
* @param aAttrName input attribute name
* @param aFilter filter
*/
void SetAttributeBoolL( const CLiwMap* inputMap,
const TDesC& aAttrName, CMenuFilter* aFilter );
private:
/**
* Engine. not own
*/
CMenuSrvEng& iEng ;
/**
* Buffer for serialized result.own
*/
RBuf8 iOutputBuffer;
};
#endif // __MCSGETLISTHANDLER_H__