diff -r 000000000000 -r c8830336c852 wlansecuritysettings/wlaneapsettingsui/EapPluginConfig/inc/EAPPluginConfiguration.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wlansecuritysettings/wlaneapsettingsui/EapPluginConfig/inc/EAPPluginConfiguration.h Thu Dec 17 08:47:43 2009 +0200 @@ -0,0 +1,132 @@ +/* +* Copyright (c) 2001-2009 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 of EAP Plugin Configuration +* +*/ + + +#ifndef __EAPPLUGINCONFIGURATION_H__ +#define __EAPPLUGINCONFIGURATION_H__ + + +// INCLUDES +#include + +#include "EAPPluginConfigurationIf.h" +#include "EAPPluginConfigUid.h" +#include "EAPPluginList.h" +#include "EapSettings.h" + + +// CLASS DECLARATION +/** +* CEAPPluginConfiguration class +*/ +class CEAPPluginConfiguration : public CEAPPluginConfigurationIf + { + public: + static CEAPPluginConfiguration* NewL(); + static CEAPPluginConfiguration* NewLC(); + + ~CEAPPluginConfiguration(); + + /** + * Load the EAP Plugin configuration + * @param aWPAEAPPlugin The list of EAPs in use as it was read from + * WlanEapList column of WLANServiceTable. In + * output it contains the new list as it has + * to be written in the same column of + * database. + * @param aConnectionName The name of the connection. + * @return The ID of the button pressed to close configuration: + * typically EAknSoftkeyBack for back, EAknCmdExit for a + * request of exit or EEikCmdExit for a request of shutdown + */ + TInt EAPPluginConfigurationL( TDes& aWPAEAPPlugin, + const TUint32 aIapID, + const TDes& aConnectionName ); + + /** + * Load the EAP Plugin configuration (with expanded EAP types) + * @param aWPAEnabledEAPPlugin The list of enabled EAPs in use as + * it was read from WlanEnabledEapList column + * of WLANServiceTable. In output it contains + * the new list as it has to be written in the + * same column of database. + * @param aWPADisabledEAPPlugin The list of disabled EAPs in use as + * it was read from WlanDisabledEapList column + * of WLANServiceTable. In output it contains + * the new list as it has to be written in the + * same column of database. + * @param aConnectionName The name of the connection. + * @return The ID of the button pressed to close configuration: + * typically EAknSoftkeyBack for back, EAknCmdExit for a + * request of exit or EEikCmdExit for a request of shutdown + */ + TInt EAPPluginConfigurationL( TDes8& aWPAEnabledEAPPlugin, + TDes8& aWPADisabledEAPPlugin, + const TUint32 aIapID, + const TDes& aConnectionName ); + + /** + * Shows the EAP type info. + */ + void ShowEAPTypeInfo(); + + /** + * Deletes all EAP types' settings for + * the given IAP. + */ + void DeleteSettingsL( const TUint32 aIapID ); + + /** + * Changes the index of the EAP settings for all EAP types + */ + void ChangeIapIDL( const TUint32 aOldIapID, const TUint32 aNewIapID ); + + /** + * Copies the EAP type settings to another ID + */ + void CopySettingsL( const TUint32 aSourceIapID, + const TUint32 aDestinationIapID ); + + private: + void ConstructL(); + CEAPPluginConfiguration(); + void LoadPluginInfoL( TDes& aWPAEAPPlugin, REAPPluginList& aPlugins ); + void LoadPluginInfoL( TDes8& aWPAEnabledEAPPlugin, + TDes8& aWPADisabledEAPPlugin, + REAPPluginList& aPlugins ); + + void SavePluginInfoL( TDes& aWPAEAPPlugin, REAPPluginList& aPlugins ); + void SavePluginInfoL( TDes8& aWPAEnabledEAPPlugin, + TDes8& aWPADisabledEAPPlugin, + REAPPluginList& aPlugins ); + + + TInt MoveEAPType( EAPSettings::TEapType aEapType, TInt aPos ); + + TInt MoveEAPType( const TDesC8& aEapType, TInt aPos ); + + private: // Data + // Resource file offset. + TInt iResOffset; + TUint32 iIapId; + RImplInfoPtrArray iEapArray; + }; + + +#endif // __EAPPLUGINCONFIGURATION_H__ + +// End of File