memana/analyzetoolclient/configurationappgui/src/atconfigurationappguiappui.cpp
changeset 2 6a82cd05fb1e
parent 1 3ff3fecb12fe
--- a/memana/analyzetoolclient/configurationappgui/src/atconfigurationappguiappui.cpp	Thu Feb 11 15:52:57 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,554 +0,0 @@
-/*
-* Copyright (c) 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: 
-*
-*/
-
-#include <eikmenub.h>
-#include <akncontext.h>
-#include <akntitle.h>
-#include <atconfigurationappgui.rsg>
-#include <stringloader.h>
-#include <aknnotewrappers.h>
-#include <s32stor.h> // CDictionaryStore
-
-#include "atconfigurationappguiappui.h"
-#include "atconfigurationappgui.hrh"
-#include "atconfigurationappguilistboxview.h"
-#include "atconfigurationappguiprocessview.h"
-#include "atconfigurationappguisettingitemlistview.h"
-#include "atconfigurationappguiapplication.h"
-#include "atlog.h"
-
-#include <aknmessagequerydialog.h>
-
-// CONSTANTS
-const TInt KATDefaultUpdatingInterval = 2000000;
-_LIT8( KSubTestId, "ATConfigUiSubTest" );
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::CATConfigurationAppGuiAppUi()
-// Construct the CATConfigurationAppGuiAppUi instance
-// -----------------------------------------------------------------------------
-//
-CATConfigurationAppGuiAppUi::CATConfigurationAppGuiAppUi()
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::CATConfigurationAppGuiAppUi()" );
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::ConstructL()
-// Completes the second phase of Symbian object construction.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::ConstructL()
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::ConstructL()" );
-    
-    BaseConstructL( EAknEnableSkin  | 
-                     EAknEnableMSK ); 
-    InitializeContainersL();
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::~CATConfigurationAppGuiAppUi()
-// Destructor.
-// -----------------------------------------------------------------------------
-//
-CATConfigurationAppGuiAppUi::~CATConfigurationAppGuiAppUi()
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::~CATConfigurationAppGuiAppUi()" );
-    
-    if ( iPeriodicTimer )
-        {
-        if ( iPeriodicTimer->IsActive() )
-            {
-            iPeriodicTimer->Cancel();
-            }  
-        delete iPeriodicTimer;  
-        }
- 
-    iSubTestProcesses.Close();
-    iStorageServer.Close();
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::InitializeContainersL()
-// Initializes all the controls.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::InitializeContainersL()
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::InitializeContainersL()" );
-    
-    iPeriodicTimer = CPeriodic::New( CActive::EPriorityLow );
-        
-    iATConfigurationAppGuiListBoxView = CATConfigurationAppGuiListBoxView::NewL();
-    AddViewL( iATConfigurationAppGuiListBoxView );
-    iATConfigurationAppGuiProcessView = CATConfigurationAppGuiProcessView::NewL();
-    AddViewL( iATConfigurationAppGuiProcessView );
-    //iATConfigurationAppGuiSettingItemListView = CATConfigurationAppGuiSettingItemListView::NewL();
-    //AddViewL( iATConfigurationAppGuiSettingItemListView );
-    
-    SetDefaultViewL( *iATConfigurationAppGuiListBoxView );
-
-    TInt error = iStorageServer.Connect();
-        if ( error != KErrNone )
-            {
-            HBufC* noteText;
-            noteText = StringLoader::LoadLC( R_CANT_CONNECT_SERVER );
-            CAknErrorNote* note = new (ELeave) CAknErrorNote( ETrue );
-            note->ExecuteLD( *noteText );
-            CleanupStack::PopAndDestroy( noteText );
-            }
-    // Load application settings
-    //LoadSettingsL();
-    // Start updating the view
-    if ( iPeriodicTimer )
-        {
-        StartTimerL();    
-        }    
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::HandleCommandL()
-// Handle a command for this appui.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::HandleCommandL( TInt aCommand )
-    {
-    LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::HandleCommandL(%i)", 
-			aCommand );
-    
-    TBool commandHandled = EFalse;
-    switch ( aCommand )
-        { // Code to dispatch to the AppUi's menu and CBA commands is generated here
-        default:
-            break;
-        }
-
-    if ( !commandHandled ) 
-        {
-        if ( aCommand == EAknSoftkeyExit || aCommand == EEikCmdExit )
-            {
-            // Stop all subtests before closing handles
-            StopAllSubtestsL();
-            Exit();
-            }
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::HandleResourceChangeL()
-// Override of the HandleResourceChangeL virtual function.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::HandleResourceChangeL( TInt aType )
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::HandleResourceChangeL()" );
-    
-    CAknViewAppUi::HandleResourceChangeL( aType );
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::HandleKeyEventL()
-// Override of the HandleKeyEventL virtual function.
-// -----------------------------------------------------------------------------
-//
-TKeyResponse CATConfigurationAppGuiAppUi::HandleKeyEventL(
-        const TKeyEvent& /*aKeyEvent*/,
-        TEventCode /*aType*/ )
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::HandleKeyEventL()" );
-    
-    // The inherited HandleKeyEventL is private and cannot be called
-    return EKeyWasNotConsumed;
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::HandleViewDeactivation()
-// Override of the HandleViewDeactivation virtual function.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::HandleViewDeactivation( 
-        const TVwsViewId& aViewIdToBeDeactivated, 
-        const TVwsViewId& aNewlyActivatedViewId )
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::HandleViewDeactivation()" );
-    
-    CAknViewAppUi::HandleViewDeactivation( 
-            aViewIdToBeDeactivated, 
-            aNewlyActivatedViewId );
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::SetProcessSubTestStartL()
-// Starts subtest for a process.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::SetProcessSubTestStartL( TUint aProcessId )
-    {
-    LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::SetProcessSubTestStartL(%i)", 
-    		aProcessId );
-    
-    // Load the kernel side device driver
-    TInt loadErr = User::LoadLogicalDevice( KAnalyzeToolLddName );
-    TBool driverLoaded( EFalse );
-            
-    if ( loadErr == KErrNone || loadErr == KErrAlreadyExists )
-        {
-        driverLoaded = ETrue;
-        }
-        
-    RAnalyzeTool analyzeTool;    
-    TInt driverOpen = analyzeTool.Open();
-    TInt handleCount( KErrNone );
-    
-    if ( driverOpen == KErrNone )
-        {       
-        TATProcessHandlesBuf params;
-        params().iProcessId = aProcessId;
-        
-        analyzeTool.GetCurrentHandleCount( params );
-        handleCount = params().iCurrentHandleCount;
-        LOGSTR2( "CATConfigurationAppGuiAppUi::SetProcessSubTestStartL - %i current handle(s)",
-                params().iCurrentHandleCount );       
-        }
-    
-    TInt startErr = iStorageServer.StartSubTest( aProcessId, KSubTestId, handleCount );
-    if ( KErrNone == startErr )
-        {
-        iSubTestProcesses.Append( aProcessId );    
-        }
-    else if ( KErrNotSupported == startErr )
-        {
-        ShowErrorNoteL( R_CANT_START_SUBTEST_NOTSUPPORTED );
-        }
-    else // Could not start for a process
-        {
-        ShowErrorNoteL( R_CANT_START_SUBTEST_PROCESSID );  
-        }
-    
-    // The count of device driver users
-    TClientCountBuf count;
-    
-    // Check the flag
-    if ( driverOpen == KErrNone )
-        {
-        analyzeTool.ClientCount( count );
-        analyzeTool.Close();
-        }  
-    // Check the flag
-    if ( driverLoaded )
-        {
-        // Check if there is another user for device driver
-        if ( count().iClientCount <= 1 )
-            {
-            // There was no other users -> unload the device driver
-            User::FreeLogicalDevice( KAnalyzeToolLddName );
-            }
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::SetProcessSubTestStopL()
-// Stops subtest for a process.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::SetProcessSubTestStopL( TUint aProcessId )
-    {
-    LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::SetProcessSubTestStopL(%i)", 
-    		aProcessId );
-    
-    // Load the kernel side device driver
-    TInt loadErr = User::LoadLogicalDevice( KAnalyzeToolLddName );
-    TBool driverLoaded( EFalse );
-            
-    if ( loadErr == KErrNone || loadErr == KErrAlreadyExists )
-        {
-        driverLoaded = ETrue;
-        }
-        
-    RAnalyzeTool analyzeTool;
-    
-    TInt driverOpen = analyzeTool.Open();
-    TInt handleCount( KErrNone );
-    
-    if ( driverOpen == KErrNone )
-        {  
-        TATProcessHandlesBuf params;
-        params().iProcessId = aProcessId;
-        
-        analyzeTool.GetCurrentHandleCount( params );
-        handleCount = params().iCurrentHandleCount;
-        LOGSTR2( "CATConfigurationAppGuiAppUi::SetProcessSubTestStopL - %i current handle(s)",
-                params().iCurrentHandleCount );      
-        }
-        
-    TInt stopErr = iStorageServer.StopSubTest( aProcessId, KSubTestId, handleCount );
-    if ( KErrNone == stopErr )
-        {
-        TInt index = iSubTestProcesses.Find( aProcessId );
-        if ( index > KErrNotFound )
-            {
-            iSubTestProcesses.Remove( index );
-            if ( iSubTestProcesses.Count() == KErrNone )
-                iSubTestProcesses.Reset();
-            }             
-        }
-    else
-        {
-        ShowErrorNoteL( R_CANT_STOP_SUBTEST_PROCESSID );     
-        }
-    
-    // The count of device driver users
-    TClientCountBuf count;
-    
-    // Check the flag
-    if ( driverOpen == KErrNone )
-        {
-        analyzeTool.ClientCount( count );
-        analyzeTool.Close();
-        }  
-    // Check the flag
-    if ( driverLoaded )
-        {
-        // Check if there is another user for device driver
-        if ( count().iClientCount <= 1 )
-            {
-            // There was no other users -> unload the device driver
-            User::FreeLogicalDevice( KAnalyzeToolLddName );
-            }
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::IsSubTestRunning()
-// Returns ETrue if subtest is running for a process.
-// -----------------------------------------------------------------------------
-//
-TInt CATConfigurationAppGuiAppUi::IsSubTestRunning( TUint aProcessId )
-    {
-    LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::IsSubTestRunning(%i)", 
-    		aProcessId );
-    
-    return iSubTestProcesses.Find( aProcessId );
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::LoadSettingsL()
-// Loads application settings.
-// -----------------------------------------------------------------------------
-//
-TInt CATConfigurationAppGuiAppUi::LoadSettingsL()
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::LoadSettingsL()" );
-    
-    /*CDictionaryStore* iniFile = Application()->OpenIniFileLC( CCoeEnv::Static()->FsSession() );
- 
-    if ( iniFile->IsPresentL( KUidATConfigurationAppGuiApplication ) )
-        {
-        RDictionaryReadStream readStream;
-        readStream.OpenLC( *iniFile, KUidATConfigurationAppGuiApplication );
-        // Load warning tones value
-        iWarningTones = static_cast<TInt>( readStream.ReadInt32L() );
-        // Load update interval value
-        iUpdateInterval = static_cast<TInt>( readStream.ReadInt32L() );
-        // Initialize other settings
- 
-        CleanupStack::PopAndDestroy( &readStream );
-        }
-    else
-        {
-        // ini doesn't exist, so use default values
-        iWarningTones = 0;
-        iUpdateInterval = 0;
-        }
- 
-    CleanupStack::PopAndDestroy(iniFile);*/      
-        
-    return KErrNone;
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::ShowErrorNoteL()
-// Shows error note.
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::ShowErrorNoteL( TInt aResourceId )
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::ShowErrorNoteL()" );
-    
-    CAknErrorNote* errorNote = new ( ELeave ) CAknErrorNote();
-    HBufC* errorText = StringLoader::LoadLC( aResourceId );
-    errorNote->SetTextL( errorText->Des() );
-    errorNote->ExecuteLD();
-    CleanupStack::PopAndDestroy( errorText );      
-    }
-
-//-----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::HandleForegroundEventL
-// Handles fore ground events
-//-----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::HandleForegroundEventL( TBool aForeground )
-    {  
-    LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::HandleForegroundEventL(%i)", 
-    		aForeground );
-    
-    if ( aForeground )
-        {
-        // Start timer when processes view gains foreground
-        if ( iDeactivatedId.iViewUid == TUid::Uid( EATConfigurationAppGuiListBoxViewId ) )
-            {
-            StartTimerL();    
-            }
-        }
-    else
-        {
-        // Cancel timer when not in foreground
-        TVwsViewId viewId;
-        GetActiveViewId( viewId );
-        // Save deactivated view's Id
-        iDeactivatedId = viewId;
-        TimerNotifyL( EFalse );        
-        }
-    }
-
-//-----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::StartTimerL
-// Starts timer with a specific time interval
-//-----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::StartTimerL()
-    {   
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::StartTimerL()" );
-    
-    if ( iPeriodicTimer->IsActive() )
-        {
-        iPeriodicTimer->Cancel();
-        }
-    iPeriodicTimer->Start( KATDefaultUpdatingInterval, 
-            KATDefaultUpdatingInterval, TCallBack( CallBackFunctionL, this ) );  
-    }
-    
-//-----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::TimerNotifyL
-// Periodic timer's callback function
-//-----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::TimerNotifyL( TBool aPeriod )
-    {
-    LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::TimerNotifyL(%i)", 
-    		aPeriod );
-    
-    if ( iPeriodicTimer->IsActive() )
-        {
-        iPeriodicTimer->Cancel();
-        }   
-    if ( aPeriod )
-        {
-        if ( iATConfigurationAppGuiListBoxView )
-            {
-            iATConfigurationAppGuiListBoxView->UpdateViewL();
-            }
-        StartTimerL();
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CATConfigurationAppGuiAppUi::StopAllSubtestsL()
-// Stops all subtests which are running
-// -----------------------------------------------------------------------------
-//
-void CATConfigurationAppGuiAppUi::StopAllSubtestsL()
-    {
-    LOGSTR1( "ATCU CATConfigurationAppGuiAppUi::StopAllSubtestsL()" );
-    
-    TInt index( KErrNone );
-    RArray<TATProcessInfo> processes;
-    TInt err( iStorageServer.GetProcessesL( processes ) );
-    LOGSTR2( "iStorageServer.GetProcessesL(%i)", err ); 
-    
-    // Load the kernel side device driver
-    TInt loadErr( User::LoadLogicalDevice( KAnalyzeToolLddName ) );
-    TBool driverLoaded( EFalse );
-    LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::StopAllSubtestsL() loadErr(%i)", 
-    		loadErr );
-            
-    if ( loadErr == KErrNone || loadErr == KErrAlreadyExists )
-        {
-        driverLoaded = ETrue;
-        }
-    
-    RAnalyzeTool analyzeTool;    
-    TInt driverOpen( analyzeTool.Open() );
-    
-    while ( index < processes.Count() )
-        {
-        TUint processId = processes[ index ].iProcessId;
-        TInt handleCount( KErrNone );
-        
-        if ( driverOpen == KErrNone )
-            {  
-            TATProcessHandlesBuf params;
-            params().iProcessId = processId;
-            // Get process handle count
-            analyzeTool.GetCurrentHandleCount( params );
-            handleCount = params().iCurrentHandleCount;
-            LOGSTR2( "ATCU CATConfigurationAppGuiAppUi::StopAllSubtestsL() handleCount( %i )",
-            		handleCount );      
-            }        
-        
-        err = iStorageServer.StopSubTest( processId, KSubTestId, handleCount );
-        LOGSTR2( "ATCU > iStorageServer.StopSubTest( %i )", err ); 
-        
-        TInt find( iSubTestProcesses.Find( processId ) );
-        if ( find > KErrNotFound )
-            {
-            iSubTestProcesses.Remove( find );
-            if ( iSubTestProcesses.Count() == KErrNone )
-                {
-                iSubTestProcesses.Reset();
-                }  
-            } 
-        index++;
-        }
-    
-    // Close processes array
-    processes.Close();
-
-    // The count of device driver users
-    TClientCountBuf count;
-    
-    // Check the flag
-    if ( driverOpen == KErrNone )
-        {
-        analyzeTool.ClientCount( count );
-        analyzeTool.Close();
-        }  
-    // Check the flag
-    if ( driverLoaded )
-        {
-        // Check if there is another user for device driver
-        if ( count().iClientCount <= 1 )
-            {
-            // There was no other users -> unload the device driver
-            err = User::FreeLogicalDevice( KAnalyzeToolLddName );
-            LOGSTR2( "ATCU > FreeLogicalDevice( %i )", err ); 
-            }
-        }
-    }
-
-// End of File