Rework addition of Symbian splash screen to reduce the source impact (uses SVG from Bug 2414)
Notes: by using the OPTION SOURCEDIR parameter in the mifconv extension instructions, I can
arrange to use the same source file name in sfimage, without having to export over the original
Nokia file. This means that the name inside splashscreen.mbg is the same, which removes the need
for the conditional compilation in SplashScreen.cpp, and gets rid of sf_splashscreen.mmp.
/*
* Copyright (c) 2007-2007 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: CCenRepAttributes class declaration.
*
*/
#ifndef C_CENREPATTRIBUTES_H
#define C_CENREPATTRIBUTES_H
#include <e32base.h>
#include <cfcontextinterface.h>
#include <cfcontextsourceplugin.h>
#include "cfcontextsourcesettingparameter.h"
class CCFContextSourceSettingArray;
_LIT( KUID, "UID" );
_LIT( KMode, "Mode" );
_LIT( KMasked, "Masked" );
_LIT( KNonMasked, "NonMasked" );
_LIT( KKey, "Key" );
_LIT( KValue, "Value" );
_LIT( KContextSource, "ContextSource" );
_LIT( KContextType, "ContextType" );
_LIT( KContextValue, "ContextValue" );
_LIT( KContextValueSet, "ContextValueSet" );
_LIT( KContextValueUnSet, "ContextValueUnSet" );
/**
* Base class for attribute and parameter handling
*
* @lib CenRepSourcePlugIn.dll
* @since S60 5.0
*/
NONSHARABLE_CLASS( CCenRepAttributes ) : public CBase
{
public:
virtual ~CCenRepAttributes();
public: // New methods
/**
* Pure virtual definition
* Search context values from parameter array and updates context
*
* @since S60 5.0
* @param aKeyValue Parameter key value for context values to search
* @return void
*/
virtual void UpdateContextL( const TInt aKeyValue ) = 0;
/**
* Converts string to hexadecimal.
*
* @since S60 5.0
* @param aString The string to convert
* @param aValue Converted value
* @return KErrNotFound if not an int to be converted, else KErrNone
*/
static TInt ConvertToHex( const TDesC& aString, TUint32& aValue );
/**
* Initializes object and triggers to define context.
*
* @since S60 5.0
* @param aIndex Index of RContextSourceSettingArray item
* @return Central repository key
*/
TUint32 InitCenRepKeyL( TInt aIndex );
protected:
CCenRepAttributes( MCFContextInterface& aCF,
CCFContextSourceSettingArray& aSettings );
/**
* Converts string to integer.
*
* @since S60 5.0
* @param aString The string to convert
* @param aValue Converted value
* @return KErrNotFound if not an int to be converted, else KErrNone
*/
TInt ConvertToInt( const TDesC& aString, TInt& aValue ) const;
/**
* Publish context
*
* @since S60 5.0
* @param
* @return void
*/
void PublishContext();
private:
void DefineContext();
public: // Data
protected: // Data
// Sensor source settings
CCFContextSourceSettingArray& iSettings;
// Ref: CF interface for contexts
MCFContextInterface& iCF;
// Own: Pointer to a Context object
CCFContextObject* iContext;
// Own: Parameter array of settings
RSettingParameterArray iParamArray;
// Parameter count in parameter array
TInt iParamCount;
private: // Data
};
#endif // C_CENREPATTRIBUTES_H