coreapplicationuis/powersaveutilities/batindicatorpaneplugin/src/batindicatorpanepluginimpl.cpp
changeset 56 11a052f4b02e
parent 49 76883296a0d5
child 65 8a530a83576a
--- a/coreapplicationuis/powersaveutilities/batindicatorpaneplugin/src/batindicatorpanepluginimpl.cpp	Tue Jul 06 14:26:20 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,293 +0,0 @@
-/*
-* Copyright (c) 2007 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:  BatIndicatorPanePlugin plugin implementation
-*
-*/
-
-
-// INCLUDE FILES
-#include <e32property.h> // RPropert
-#include <batindpaneplugin.rsg> // BatIndicatorPanePlugin resources
-#include <StringLoader.h> // Stringloader
-#include <psmclient.h>
-#include <psmsettings.h>
-#include <hwrmpowerstatesdkpskeys.h>
-#include <data_caging_path_literals.hrh> // KDC_ECOM_RESOURCE_DIR
-#include <centralrepository.h>
-#include "batindicatorpanepluginimpl.h"
-#include "batindpanepluginprivatecrkeys.h"
-#include "bsutil.h"
-#include "trace.h"
-
-// CONSTANTS
-_LIT( KIndicatorResourceFile,"z:batindpaneplugin.rsc" );
-
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CBatIndicatorPanePluginImpl* CBatIndicatorPanePluginImpl::NewL( )
-    {
-    FUNC_LOG
-    
-    CBatIndicatorPanePluginImpl* self = new( ELeave ) CBatIndicatorPanePluginImpl( );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CBatIndicatorPanePluginImpl::~CBatIndicatorPanePluginImpl()
-    {
-    FUNC_LOG
-    
-    delete iContentText;
-    delete iPsmClient; 
-    delete iBatteryStateUtil;
-    delete iPopupControl;
-    delete iLinkText;   
-    iResourceLoader.Close();
-    }
-
-// ---------------------------------------------------------------------------
-// From MEikCommandObserver
-// ---------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::ProcessCommandL( TInt aCommandId )
-    {    	
-    FUNC_LOG
-    
-    if( aCommandId == ELinkFirst )
-        {
-        SetPowerSaveModeEnabled();        	
-        }                  
-    }
-        
-// ---------------------------------------------------------------------------
-// CBatIndicatorPanePluginImpl::CBatIndicatorPanePluginImpl
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ---------------------------------------------------------------------------
-//
-CBatIndicatorPanePluginImpl::CBatIndicatorPanePluginImpl( ):
-                                                iResourceLoader( *CEikonEnv::Static() ),
-                                                iBatIndPanePluginFeatures( 0 )
-    {
-    FUNC_LOG                                          	
-    }
-
-// ---------------------------------------------------------------------------
-// CBatIndicatorPanePluginImpl::ConstructL
-// Symbian 2nd phase constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::ConstructL( )
-    {
-    FUNC_LOG
-    // Create PSM client       
-    iPsmClient = CPsmClient::NewL( *this );
-    
-    GetFeatures();
-        
-    // Create Battery State Utilities
-    if( !Supported( KBatIndPanePluginLinkOnly ) )
-        {
-        iBatteryStateUtil = CBSUtil::NewL();
-        }
-            
-    // Read resource strings
-    TParse* fp = new( ELeave ) TParse();
-    CleanupStack::PushL( fp );
-    fp->Set( KIndicatorResourceFile, &KDC_ECOM_RESOURCE_DIR , NULL );
-    TFileName filename = fp->FullName();
-    iResourceLoader.OpenL( filename );
-    CleanupStack::PopAndDestroy( fp );
-    }
-
-// ---------------------------------------------------------------------------
-// Shows soft notification.
-// ---------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::ShowPreviewPopupL( )
-    {
-    FUNC_LOG
-    
-    delete iPopupControl;
-    iPopupControl = NULL;        
-    
-    if( iContentText )
-        {
-        iPopupControl = CBatteryPopupControl::NewL( *iContentText,
-                                                    *iLinkText );
-        }
-    else
-        {
-        iPopupControl = CBatteryPopupControl::NewL( KNullDesC,
-                                                    *iLinkText );              
-        }
-
-    iPopupControl->SetCommandObserver( *this );
-    // Launch
-    iPopupControl->ShowPopUpL();
-    
-    delete iContentText;
-    iContentText = NULL;
-
-    delete iLinkText;
-    iLinkText = NULL;
-	}
-	  
-// ---------------------------------------------------------------------------
-// Enables or disables power save mode.
-// ---------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::SetPowerSaveModeEnabled( )
-    {
-    FUNC_LOG
-    // Get PSM state
-    TInt mode;
-    TInt err = iPsmClient->PsmSettings().GetCurrentMode( mode );
-        
-    if ( err == KErrNone  )
-        {
-        if( mode == EPsmsrvModeNormal ||
-            mode == EPsmsrvPartialMode )
-            {
-            iPsmClient->ChangePowerSaveMode( EPsmsrvModePowerSave );
-            }
-        else
-            {
-            iPsmClient->ChangePowerSaveMode( EPsmsrvModeNormal );
-            }
-        }
-    }	  
-
-// ---------------------------------------------------------------------------
-// From CAknIndicatorPlugin
-// ---------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::HandleIndicatorTapL( const TInt /*aUid*/ )
-    {
-    FUNC_LOG
-    
-    delete iContentText;
-    iContentText = NULL;
-    
-    delete iLinkText;
-    iLinkText = NULL;
-    
-    TInt err = KErrNone;
-    
-    if ( iBatteryStateUtil )
-        {
-        TInt batteryStatus;
-        err = RProperty::Get( KPSUidHWRMPowerState, KHWRMBatteryStatus, batteryStatus );
-        
-        if( !err && batteryStatus == EBatteryStatusLow )
-            {
-            iContentText = StringLoader::LoadL( R_QTN_BATTERY_LOW_PREVIEW_POPUP ); 
-            }
-        else
-            {
-            TUint8 batteryCapacity = iBatteryStateUtil->GetBatteryCapacity();	
-                   
-            iContentText = StringLoader::LoadL( R_QTN_BATTERY_STATUS_POPUP, 
-                                                batteryCapacity );                
-            }
-        }
-    
-    // Get PSM state
-    TInt mode;
-    TBool psmActive = EFalse;
-    err = iPsmClient->PsmSettings().GetCurrentMode( mode );
-      
-    if ( err == KErrNone  )
-        {
-        psmActive = ( mode == EPsmsrvModePowerSave );
-        }
-                        
-    if ( psmActive )
-        {
-        iLinkText = StringLoader::LoadL( R_QTN_DEACTIVATE_POWER_SAVING );
-        }
-    else
-        {      
-        iLinkText = StringLoader::LoadL( R_QTN_ACTIVATE_POWER_SAVING );           
-        }        
-    ShowPreviewPopupL();  
-    }
-
-// ----------------------------------------------------------------------------
-// CBatIndicatorPanePluginImpl::GetFeatures() 
-// ----------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::GetFeatures( )
-    {
-    FUNC_LOG
-    
-    CRepository* repository = NULL;
-    
-    TRAPD( err, repository = CRepository::NewL( KCRUidBatIndPanePluginConf ) );
-    
-    if ( err == KErrNone )
-        {
-        err = repository->Get( KBatIndPanePlugin, iBatIndPanePluginFeatures );
-
-        if ( err != KErrNone || iBatIndPanePluginFeatures < 0 ) // ERROR
-            {
-            INFO_1( "CBatIndicatorPanePluginImpl::GetFeatures - Reading features err %d", err )
-            iBatIndPanePluginFeatures = 0;
-            }
-        }
-    else
-        {
-        INFO_1( "CBatIndicatorPanePluginImpl::GetFeatures: open KCRUidBatIndPanePluginConf failed, err=%d", err ) 
-        }
-    delete repository;
-    }
-
-// ----------------------------------------------------------------------------
-// CBatIndicatorPanePluginImpl::Supported() 
-// ----------------------------------------------------------------------------
-//
-TInt CBatIndicatorPanePluginImpl::Supported( TInt aFeatureId )
-    {
-    FUNC_LOG
-    return aFeatureId & iBatIndPanePluginFeatures;
-    }
-// ---------------------------------------------------------------------------
-// From MPsmClientObserver
-// ---------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::PowerSaveModeChanged( const TPsmsrvMode /*aMode*/ )
-    {
-    FUNC_LOG
-    }
-
-// ---------------------------------------------------------------------------
-// From MPsmClientObserver
-// ---------------------------------------------------------------------------
-//
-void CBatIndicatorPanePluginImpl::PowerSaveModeChangeError( const TInt /*aError*/ )
-    {
-    FUNC_LOG      	
-    }	 
-//  End of File