diff -r 000000000000 -r 094583676ce7 wvuing/IMPSConnectionUI/OperationStepSrc/CCnUiReconnectAllUiCntrlStep.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wvuing/IMPSConnectionUI/OperationStepSrc/CCnUiReconnectAllUiCntrlStep.h Thu Dec 17 08:41:52 2009 +0200 @@ -0,0 +1,178 @@ +/* +* Copyright (c) 2004 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: Network connection restore UI control. +* +*/ + +#ifndef __CCNUIRECONNECTALLUICNTRLSTEP_H +#define __CCNUIRECONNECTALLUICNTRLSTEP_H + + +// INCLUDES +#include +#include +#include "CCnUiLoginUiCntrlStep.h" + + +//FORWARD DECLARATION +class CIMPSSAPSettings; +class CPEngNWSessionSlotID2; + + +// CLASS DECLARATION +/** + * Network connection restore UI control. + * Restores network connection to all + * given clients. + * + * Extends CCnUiLoginUiCntrlStep behaviour + * by looping back from HandleCompleteL() + * after each client login. + * + * @since 2.1 + */ +NONSHARABLE_CLASS( CCnUiReconnectAllUiCntrlStep ) : public CCnUiLoginUiCntrlStep + { +public: // Two-phased constructors and destructor + + /** + * Two-phased constructor. + * @param aCCntxt UI control context. + * @param aLoginSap The sap to reconnect. + * @param aReconnectedClients The clients to reconnect. + */ + static CCnUiReconnectAllUiCntrlStep* NewLC( MCnUiUiControlContext& aCCntxt, + CIMPSSAPSettings& aLoginSap, + TIMPSConnectionClient aReconnectedClient, + CPEngNWSessionSlotID2& aNWSessionSlotID ); + + /** + * Destructor. + */ + virtual ~CCnUiReconnectAllUiCntrlStep(); + + +protected: //protected to allow derivation + + /** + * C++ constructor. + */ + CCnUiReconnectAllUiCntrlStep( MCnUiUiControlContext& aCCntxt, + CIMPSSAPSettings& aLoginSap, + TIMPSConnectionClient aReconnectedClient, + CPEngNWSessionSlotID2& aNWSessionSlotID ); + + /** + * Symbian OS constructor. + */ + void ConstructL(); + + + +public: // Overridden functions from MCnUiCntrlStep + + + /** + * Overridden HandleCompleteL(). + * If there is still more clients to login, + * issues a new login round. + * + * @since 2.1 + * @return ECnUiRestartStep if there is another clients to reconnect. + * Else ECnUiStepContinueTeardown. + */ + TCnUiHandleCompleteStatus HandleCompleteL(); + + + /** + * Undo step. + * + * @since 2.1 + */ + void UndoStepL(); + + +protected: // New helper functions + + /** + * Over written framework method. + * + * Setups the reconnect step as needed. + * + * @since 2.1 + * @param aClient Init has to initialize the aClient + * with the client id to log out. + * + * @return Error status from init. If init returns something + * else than ECnUiLoginInitContinue login operation RunStepL() + * is breaked with return value. + */ + TInt DoInitLoginStepL( TIMPSConnectionClient& aClient ); + + + /** + * Over written framework method. + * + * Shows proper wait note for + * reconnect state. + * + * @since 2.1 + * @param aStateId State id from CCnUiConnOpener. + * @param aClient The accessed client. + */ + void DoShowLoginStateSpecificWaitnoteL( TInt aStateId, + TIMPSConnectionClient aClient ); + + + +protected: // New helper functions + + /** + * Initializes the disconnect. + * Gets the SAP o disconnect and + * populates the clients to logout. + * + * @since 2.1 + */ + void InitNWReConnectL(); + + + /** + * Shows error note from simultaneous + * login operation. + * + * @since 2.1 + */ + void ShowSimultaneousLoginOperationNoteL(); + + +private: // private data + + /// iClientsToReConn; + + CPEngNWSessionSlotID2& iNWSessionSlotID; + + }; + +#endif // __CCNUIRECONNECTALLUICNTRLSTEP_H + +// End of File +