diff -r 7d48bed6ce0c -r 987c9837762f convergedcallengine/csplugin/inc/cspsssettingshandler.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/convergedcallengine/csplugin/inc/cspsssettingshandler.h Wed Sep 01 12:15:03 2010 +0100 @@ -0,0 +1,144 @@ +/* +* Copyright (c) 2007-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 file contains the header file of the class +* CSPSsSettingsHandler. +* +*/ + + + +#ifndef CSPSSSETTINGSHANDLER_H +#define CSPSSSETTINGSHANDLER_H + +// INCLUDES +#include +#include + + +// FORWARD DECLARATIONS +class MCCPSsObserver; + +// CLASS DECLARATION + +/** +* CSPSsSettingsHandler observer SSSettings changes +* +* @lib phoneenginegsm +* @since Series_60 4.0 +*/ +class CSPSsSettingsHandler : public CBase, + public MSSSettingsObserver + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CSPSsSettingsHandler* NewL( const MCCPSsObserver& aObserver ); + + /** + * Destructor. + */ + virtual ~CSPSsSettingsHandler( ); + + public: // New functions + + /** + * GetALSLineL + * @param aALSLine, Als line information to be updated + */ + void GetALSLineL( RMobilePhone::TMobilePhoneALSLine& aALSLine ); + + /** + * SetALSLineL + * @param aALSLine, Als line information to set + */ + void SetALSLineL( RMobilePhone::TMobilePhoneALSLine& aALSLine ); + + /** + * GetClirL + * @param aClir, Clir information to be updated + */ + void GetClirL( RMobileCall::TMobileCallIdRestriction& aClir ); + + /** + * GetCugL + * @param aCugIndex, CUG index + */ + void GetCugL( TInt& aCugIndex ); + + /** + * GetDefaultCugL + * Get CUG default value. + */ + void GetDefaultCugL(TInt& aDefCug ); + + /** + * IsValueValidCugIndex + * Is CUG index in allowed range. + */ + TBool IsValueValidCugIndex( const TInt& aValue ) const; + + public: // Functions from MSSSettingsObserver + + /* + * Observer functoin + * @param aSetting Current setting + * @param aNewValue New value for the setting + */ + virtual void PhoneSettingChanged( + TSSSettingsSetting aSetting, + TInt aNewValue ); + + private: + + /** + * Constructor. + */ + CSPSsSettingsHandler( const MCCPSsObserver& aObserver ); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + + /** + * Call register Als notify after idle callback + */ + void RegisterAfterIdle(); + + /** + * CIdle CallBack method + */ + static TInt CIdleCallBack( TAny* aAny ); + + /** + * Register to notify ALS line changed + */ + void Register(); + + private: // Data + + /** + * MCCPSsObserver is used to send message to the CCE/phone. + */ + MCCPSsObserver& iObserver; + //Pointer to instance of Settings + RSSSettings iSSSettings; + // Idle object to register ALS notify. + CIdle* iRegisterAlsNofify; + + }; + +#endif // CSPSSSETTINGSHANDLER_H