diff -r b852595f5cbe -r 63be7eb3fc78 wlanutilities/wlansniffer/aiplugin/inc/wsfaicontroller.h --- a/wlanutilities/wlansniffer/aiplugin/inc/wsfaicontroller.h Thu Aug 19 10:59:40 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,380 +0,0 @@ -/* -* 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: Class header for TWsfAiController -* -*/ - -#ifndef T_WSFAICONTROLLER_H -#define T_WSFAICONTROLLER_H - -// EXTERNAL INCLUDES -#include -#include -#include - -// INTERNAL INCLUDES -#include "wsfwlaninfo.h" -#include "wsfstatechangeobserver.h" -#include "wsfmodelobserver.h" - - -// FORWARD DECLARATIONS -class CWsfModel; -class CWsfAiModel; -class MWsfAiUiObserver; -class TWsfWlanInfo; -class CWsfWlanInfoArray; -class CWsfDbObserver; -class CWsfActiveWrappers; - - -/** - * The controller class of the component. All functionality is reached - * through this class and all needed events are observed by this. - * - * @lib wsfaiplugin.lib - * @since S60 v5.0 - */ - -NONSHARABLE_CLASS( TWsfAiController ): public MWsfStateChangeObserver, - public MWsfModelObserver - { - public: // Constructors - - /** - * Default C++ constructor - * @since S60 5.0 - */ - TWsfAiController(); - - public: // New methods - - /** - * DeInitialization for this class - */ - void DeInitializeL(); - - /** - * PreInitialization for this class (set the models references) - * @since S60 5.0 - * @param aModel applicaton level model reference - * @param aAiModel model reference of AiPlugin - * @param aActiveWrappers reference of wrappers holder - */ - void InitializeL( CEikonEnv* aEnv, CWsfModel* aModel, - CWsfAiModel* aAiModel, CWsfDbObserver* aObserver, - CWsfActiveWrappers* aActiveWrappers ); - - /** - * Set the UI for the controller - * @since S60 5.0 - * @param aUi reference to AiPlugin UI control - */ - void SetUi( MWsfAiUiObserver& aUi ); - - - /** - * Handles keypresses coming from container - * @since S60 5.0 - */ - void HandleSelectionKeyL(); - - /** - * Start the sequential scanning for wlans - * @since S60 5.0 - */ - void EnableScanL(); - - /** - * Stop the sequential scanning for wlans - * @since S60 5.0 - */ - void DisableScanL(); - - /** - * Start initial refresh - * to the AI model - * @since S60 5.0 - */ - void StartupRefresh(); - - /** - * Propagates the network data from the engine - * to the AI model - * @since S60 5.2 - */ - void StartupRefreshDataReadyL(); - - /** - * Refreshes the refreshing icon - * @since S60 5.0 - */ - void RefreshRefreshingL(); - - /** - * Refreshes the connecting icon - * @since S60 5.2 - */ - void RefreshConnectingL(); - - /** - * Propagates the network data from the engine - * to the AI model - * @since S60 5.2 - */ - void WlanListDataReadyL(); - - /** - * Connect to the given wlan - * @since S60 5.2 - * @param aInfo Wlaninfo to connect with - * @param aConnectOnly ETrue if we are only connecting, - * EFalse if we should also launch the browser - * @param aTestAccessPoint ETrue if ICT is executed, - * EFalse if ICT is not executed - */ - void ConnectL( TWsfWlanInfo& aInfo, TBool aConnectOnly, - TBool aTestAccessPoint ); - - - public: // From MWsfStateChangeObserver - - /** - * The current wlan data has changed and it is ready to be retrieved - * @since S60 5.0 - */ - void WlanListChangedL(); - - /** - * Engine error occured - * @since S60 5.0 - * @param aError System wide error code - */ - void NotifyEngineError( TInt aError ); - - /** - * Scanning has been disabled - * @since S60 5.0 - */ - void ScanDisabledL(); - - /** - * Scanning has been enabled - * @since S60 5.0 - */ - void ScanEnabledL(); - - /** - * A WLAN connection has been established - * @since S60 5.0 - */ - void WlanConnectionActivatedL(); - - /** - * A WLAN connection has been closed - * @since S60 5.0 - */ - void WlanConnectionClosedL(); - - /** - * Connection creation process finished - * @since S60 5.2 - * @param aError System wide error code - */ - void ConnectionCreationProcessFinishedL( TInt aError ); - - - public: //From MWsfModelObserver - - /** - * Called if the launch has been completed successfully - * @since S60 5.0 - */ - void BrowserLaunchCompleteL(); - - /** - * Called if the browser launch failed for some reason - * @since S60 5.0 - * @param aError error code - */ - void BrowserLaunchFailed( TInt aError ); - - /** - * Called when the previously launched browser exits - * @since S60 5.0 - */ - void BrowserExitL(); - - /** - * Notification that connection is going to be created - * @since S60 5.0 - * @param aIapId The IAP id of the connection being created - */ - void ConnectingL( TUint32 aIapId ); - - /** - * Notification that the connection creation process ended - * @since S60 5.0 - * @param aResult The result of the connection creation - */ - void ConnectingFinishedL( TInt aResult ); - - private: - - /* - * Start web browsing with the given wlaninfo - * @since S60 5.0 - * @param aInfo Wlaninfo to connect with - */ - void StartBrowsingL( TWsfWlanInfo& aInfo ); - - /* - * Start web browser with the given wlaninfo - * @since S60 5.2 - * @param aInfo Wlaninfo to connect with - */ - void StartWebBrowserL( TWsfWlanInfo& aInfo ); - - /** - * Cleanup function to release connecting state - * @param aPtr Pointer for this class - */ - static void CleanUpConnectingL( TAny* aPtr ); - - /* - * Brings browser to the foreground - * @since S60 5.0 - */ - void ContinueBrowsingL(); - - /* - * Launches a listquerydialog which holds all available wlans. - * @since S60 5.0 - * @param aInfo The wlaninfo resulting from the selection if - * no error/cancellation occured - * @return ETrue if a valid network was selected, EFalse otherwise - */ - TBool LaunchSearchDialogL( TWsfWlanInfo& aInfo ); - - /* - * Trapped routine of LaunchSearchDialogL - * @param - aSelectedItem which list item was selected - * @return - ETrue if connection should be made, otherwise EFalse - */ - TBool DoLaunchSearchDialogL( TInt& aSelectedItem ); - - /* - * Refreshes the current ui when the ui changes - */ - void RefreshUiL(); - - /** - * Handle error event - * @since S60 5.0 - * @param aError System wide error code - */ - void DoHandleEngineErrorL( TInt aError ); - - /** - * Checks whether the browser is using the currently active WLAN - * connection (if any) - * @since S60 5.0 - * @return ETrue if there is a WLAN connection and browser is using it, - * EFalse otherwise - */ - TBool IsWlanUsedByBrowserL(); - - /** - * Handle MSK if not connected - * @since S60 5.0 - */ - void HandleMskIfOfflineL(); - - /** - * Handle MSK if connected to a WLAN - * @since S60 5.0 - */ - void HandleMskIfConnectedL(); - - /** - * Handle MSK if connecting to a WLAN - * @since S60 5.0 - */ - void HandleMskIfConnectingL(); - - /** - * Handle MSK if connected and browser is using the connection - * @since S60 5.0 - */ - void HandleMskIfBrowsingL(); - - - private: // data - - /** - * Handle to Eikon environment. - * Own. - */ - CEikonEnv* iEnv; - - /** - * Cache of the used info - */ - TWsfWlanInfo iUsedInfo; - - /** - * Reference to Wlan array - */ - CWsfWlanInfoArray* iInfoArray; - - /** - * Reference to Model - */ - CWsfModel* iModel; - - /** - * Reference to Active Idle plugin's Model - */ - CWsfAiModel* iAiModel; - - /** - * A pointer to active idle plugin ui control observer instance - */ - MWsfAiUiObserver* iUi; - - /** - * Cache of the connected WLAN data - */ - TWsfWlanInfo iConnectedWlan; - - /** - * The Database change observer - */ - CWsfDbObserver* iDbObserver; - - /** - * Indicates whether Connect or Start Web browsing was selected - */ - TBool iConnectOnly; - - /** - * A pointer to CWsfActiveWrappers - */ - CWsfActiveWrappers* iActiveWrappers; - - }; - -#endif // T_WSFAICONTROLLER_H - -// End of file