svgtopt/SVGTPlugin/src/VolumeKeyListener.cpp
branchRCL_3
changeset 38 db5c883ad1c5
parent 22 9be6eed35a80
child 39 1902ade171ab
--- a/svgtopt/SVGTPlugin/src/VolumeKeyListener.cpp	Tue May 11 17:02:26 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,289 +0,0 @@
-/*
-* Copyright (c) 2006 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:  It completes on a change in the volume property.  Used for 
-*                the new Central Repository Server.  Used in EKA2 builds only
-*
-*/
-
-
-#include <eikapp.h>
-#include <aknconsts.h>
-#include <browseruisdkcrkeys.h>
-
-#include "VolumeKeyListener.h" 
-#include "MRepositoryVolumeObserver.h"
-
-// CONSTANTS
-const TInt KFirstTimerExpiryInterval = 1; // Expire immediately
-const TInt KTimerExpiryInterval = KAknStandardKeyboardRepeatRate;
-
-const TInt KMinVolume = 0;  // Minimum volume level(Mute)
-const TInt KMaxVolume = 10; // Maximum volume level
-
-// ----------------------------------------------------
-// CVolumeKeyListener::NewL
-// Description: static constructor.
-// Output: none
-// Return: CVolumeKeyListener object
-// ----------------------------------------------------
-CVolumeKeyListener* CVolumeKeyListener::NewL( MRepositoryVolumeObserver* aObserver )
-    {
-    CVolumeKeyListener* self = new(ELeave) CVolumeKeyListener(
-                                                                aObserver);
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(self);
-    return self;
-    }
-
-// ----------------------------------------------------
-// CVolumeKeyListener::CVolumeKeyListener
-// Description: constructor.
-// Output: none
-// Return: none
-// ----------------------------------------------------
-CVolumeKeyListener::CVolumeKeyListener( MRepositoryVolumeObserver* aObserver ):
-                                                iInterfaceSelector(NULL),
-                                                iSelector(NULL),
-                                                iCenRepos(NULL),
-                                                iObserver(aObserver)
-    {
-    }   
-
-// ----------------------------------------------------
-// CVolumeKeyListener::ConstructL
-// Description: second phase constructor.
-// Input:  aObserver: link to the calling object
-// Output: none
-// Return: none
-// ----------------------------------------------------
-void CVolumeKeyListener::ConstructL()
-    {
-    //
-    // Open a connection to receive Volume Key events.
-    iSelector = CRemConInterfaceSelector::NewL();
-    iInterfaceSelector = CRemConCoreApiTarget::NewL(*iSelector,*this);
-    TRAP_IGNORE(iSelector->OpenTargetL());
-    // Timer for implementing repeat
-    iTimer = CPeriodic::NewL(CActive::EPriorityStandard);
-
-    //
-    // Open a connection to the Central Repository...
-    iCenRepos = CRepository::NewL(KCRUidBrowser);
-    //    iObservers=new(ELeave)CArrayFixSeg<MVolumePropertyWatchObserver*>
-    //                (KVolumeObserversArrayGranularity);
-    }
-
-// ----------------------------------------------------
-// CVolumeKeyListener::~CVolumeKeyListener
-// Description: destructor.
-// Input:  none
-// Output: none
-// ----------------------------------------------------
-CVolumeKeyListener::~CVolumeKeyListener()
-    {
-    if(iSelector)
-        {
-        delete iSelector;
-        iInterfaceSelector=NULL;
-        iSelector=NULL; //iSelector has been deleted by "delete iInterfaceSelector"
-        }
-
-    if(iTimer)
-        {
-        iTimer->Cancel();
-        delete iTimer;
-        }
-
-    if(iCenRepos)
-        {
-        delete iCenRepos;
-        }
-    }
-
-// ----------------------------------------------------
-// CVolumeKeyListener::SetObserver
-// Description: Used to set an observer 
-// Input:  aObserver: Point to observer
-// Output: none
-// Return: none
-// ----------------------------------------------------
-void CVolumeKeyListener::SetObserver( MRepositoryVolumeObserver* aObserver)
-    {
-    iObserver = aObserver;
-    }
-
-// ----------------------------------------------------
-// CVolumeKeyListener::GetCurrentVolume
-// Description: gets the current volume level from the 
-//   central directory.
-// Input:  none
-// Output: none
-// Return: volume level
-// ----------------------------------------------------
-TInt CVolumeKeyListener::GetCurrentVolume()
-    {
-    TInt currentVolume = 0;
-    //
-    // Get the current volume
-    if(iCenRepos)
-        iCenRepos->Get(KBrowserMediaVolumeControl, currentVolume);
-
-/*
-    #if defined(__WINSCW__) //offset required on the emulator
-        currentVolume += WINS_DEFAULT_VOLUME;
-    #endif
-*/
-    return currentVolume;
-    }
-
-// ----------------------------------------------------
-// CVolumeKeyListener::MrccatoCommand
-// Description: A Volume key command has been received
-//        (from MRemConCoreApiTargetObserver)
-// Input:aOperationId The operation ID of the command
-//         aButtonAct The button action associated with the command.
-// Output: none
-// Return: none
-// ----------------------------------------------------
-void CVolumeKeyListener::MrccatoCommand(TRemConCoreApiOperationId aOperationId, 
-                             TRemConCoreApiButtonAction aButtonAct )
-    {
-
-    switch(aOperationId)
-        {
-        case ERemConCoreApiVolumeUp:
-            {
-            switch (aButtonAct)
-                {
-                case ERemConCoreApiButtonPress:
-                    {
-                     //Start Timer
-                     if (!iTimer->IsActive())
-                        {
-                        iCommandId = EVolumeControlCmdVolumeUpByOne;
-                        iTimer->Start(KFirstTimerExpiryInterval,
-                                      KTimerExpiryInterval, 
-                                      TCallBack(TimerCallback, this));
-                        }
-                    break;
-                    }
-                case ERemConCoreApiButtonRelease:
-                    {
-                    iTimer->Cancel();
-                    break;
-                    }
-                case ERemConCoreApiButtonClick:
-                    {
-                    FilterAndSendCommand(EVolumeControlCmdVolumeUpByOne);
-                    break;
-                    }
-                default:
-                    {
-                    break;
-                    }
-                }
-            break;
-            }
-        case ERemConCoreApiVolumeDown:
-            {
-            switch (aButtonAct)
-                {
-                case ERemConCoreApiButtonPress:
-                    {
-                    //Start Timer
-                    iCommandId = EVolumeControlCmdVolumeDownByOne;
-                    if (!iTimer->IsActive())
-                        {
-                        iTimer->Start(KFirstTimerExpiryInterval,
-                                      KTimerExpiryInterval, 
-                                      TCallBack(TimerCallback, this));
-                        }
-                     break;
-                    }
-                case ERemConCoreApiButtonRelease:
-                    {
-                    iTimer->Cancel();
-                    break;
-                    }
-                case ERemConCoreApiButtonClick:
-                    {
-                    FilterAndSendCommand(EVolumeControlCmdVolumeDownByOne);
-                    break;
-                    }
-                default:
-                    {
-                    break;
-                    }
-                }
-            break;
-            }
-        default:
-            {
-            break;
-            }
-        }        
-    }        
-        
-// -----------------------------------------------------------------------
-// CVolumeKeyListener::HandleRepeatEvent
-// -----------------------------------------------------------------------
-//
-void CVolumeKeyListener::HandleRepeatEvent()
-    {
-    FilterAndSendCommand(iCommandId);
-    }
-
-// -----------------------------------------------------------------------
-// CVolumeKeyListener::TimerCallback
-// -----------------------------------------------------------------------
-//
-TInt CVolumeKeyListener::TimerCallback(TAny* aPtr)
-    {
-    static_cast<CVolumeKeyListener*>(aPtr)->HandleRepeatEvent();
-    return KErrNone;
-    }
-
-// -----------------------------------------------------------------------
-// CVolumeKeyListener::FilterAndSendCommand
-// -----------------------------------------------------------------------
-//
-void CVolumeKeyListener::FilterAndSendCommand(TInt aCommandId)
-    {
-    TInt currentVolume = 0;
-
-    iCenRepos->Get(KBrowserMediaVolumeControl,currentVolume);
-    switch(aCommandId)
-        {
-        case EVolumeControlCmdVolumeUpByOne:
-            currentVolume=(currentVolume< KMaxVolume)? ++currentVolume : KMaxVolume;
-            break;
-        case EVolumeControlCmdVolumeDownByOne:
-            currentVolume=(currentVolume> KMinVolume)? --currentVolume : KMinVolume;
-            break;  
-        default:
-            break;      
-        }
-         
-    iCenRepos->Set(KBrowserMediaVolumeControl,currentVolume);
-    
-#if defined(__WINS__) //offset required on the emulator
-        currentVolume += WINS_DEFAULT_VOLUME;
-#endif   
-    
-    if(iObserver)
-        iObserver->VolumeChanged(currentVolume);
-    }
-
-// End of File