diff -r 473321461bba -r e06095241a65 vpnui/vpnmanagementui/inc/vpnmanagementuiserversettingscontainer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vpnui/vpnmanagementui/inc/vpnmanagementuiserversettingscontainer.h Wed Sep 01 12:23:21 2010 +0100 @@ -0,0 +1,129 @@ +/* +* Copyright (c) 2003-2009 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: Declaration of the CServerSettingsContainer class. +* +*/ + +#ifndef __VPNMANAGEMENTUISERVERSETTINGSCONTAINER_H__ +#define __VPNMANAGEMENTUISERVERSETTINGSCONTAINER_H__ + +#include + +#include "vpnextapi.h" + + +/** + * CServerSettingsContainer container control class. + * + * @lib vpnmanagementui.lib + * @since S60 v3.0 +*/ +class CServerSettingsContainer : public CAknSettingItemList + { +public: // functions + + /** + * NewL + * + * @since S60 3.2 + * @param aLoader VPN UI loader for common view handling. + * @param aServerIndex index of selected server or KErrNotFound. + * @return self + */ + static CServerSettingsContainer* NewL( + CVpnUiLoader& aLoader, TInt aServerIndex); + /** + * Destructor. + */ + ~CServerSettingsContainer(); + + /** + * From CAknSettingItemList + */ + CAknSettingItem* CreateSettingItemL( TInt aSettingId ); + + /** + * ServerNameExistsL + * @return ETrue name already in use + */ + TBool ServerNameExistsL( const TDesC& aText ) const; + /** + * ChangeSettingValueL + * Opens Setting page for currently selected setting item + */ + void ChangeSettingValueL(); + + + const TAgileProvisionApiServerSettings& ServerDetailsL(); + + static HBufC* GetDestinationNameL( TUint aId ); + static HBufC* GetConnectionMethodNameL( TUint aId ); + + void HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent aEventType); + + TInt ServerIndex() const; + +private: // functions + + /** + * Default constructor + */ + CServerSettingsContainer(); + + /** + * Overrided Default constructor + */ + CServerSettingsContainer( + CVpnUiLoader& aLoader, TInt aServerIndex ); + + /** + * Symbian OS default constructor. + * @param aRect Frame rectangle for container. + */ + void ConstructL(); + +private: // implementation + + void UpdateTitleL( TDes& aText ); + +#ifdef __SERIES60_HELP + /** + * This function is called when Help application is launched. + * (other items were commented in a header). + */ + void GetHelpContext(TCoeHelpContext& aContext) const; +#endif //__SERIES60_HELP + +private: // data + + /** + * To get hold of VpnUiLoader + */ + CVpnUiLoader& iLoader; + + /// Server details + TAgileProvisionApiServerSettings iServerDetails; + TBuf iServerAddressBuffer; + + /** + * To get the index of server list + * -1 when user has select Add new server + * Must be public so that view can access + */ + TInt iServerIndex; + }; + +#endif // __VPNMANAGEMENTUISERVERSETTINGSCONTAINER_H__ + +// End of File