mmserv/radioutility/presetutility/src/old_api/radiofmpresetutility.cpp
changeset 14 80975da52420
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/radioutility/presetutility/src/old_api/radiofmpresetutility.cpp	Mon May 03 12:59:52 2010 +0300
@@ -0,0 +1,354 @@
+/*
+* 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:  Contains implementation of the CRadioFmPresetUtility class,
+*                 which controlls the presets for an FM tuner.
+*/
+
+
+#include <RadioPresetUtility.h>
+#include <RadioFmPresetUtility.h>
+#include "presetutilitybody.h"
+#include <preset.h>
+#include "trace.h"
+
+// #############################################################################
+// This file has been deprecated! It is kept only for BC compatibility purposes
+// Please use the new API instead of this one
+// #############################################################################
+
+// Dummy body
+class CRadioFmPresetUtility::CBody : public CBase,
+                                     public MRadioPreset,
+                                     public MRadioFmPreset
+    {
+public:
+    ~CBody();
+    CBody();
+    };
+CRadioFmPresetUtility::CBody::CBody() {}
+CRadioFmPresetUtility::CBody::~CBody() {}
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C CRadioFmPresetUtility* CRadioFmPresetUtility::NewL( MRadioPresetObserver& aObserver )
+    {
+    FUNC_LOG;
+    CRadioFmPresetUtility* self = new (ELeave) CRadioFmPresetUtility( aObserver );
+    CleanupStack::PushL(self);
+    self->iBody = CPresetUtilityBody::NewL();
+    self->iBody->SetObserver( self );
+    CleanupStack::Pop(self);
+    return self;
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C CRadioFmPresetUtility::~CRadioFmPresetUtility()
+    {
+    FUNC_LOG;
+    delete iBody;
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+CRadioFmPresetUtility::CRadioFmPresetUtility( MRadioPresetObserver& aObserver ):
+    iObserver( aObserver )
+    {
+    FUNC_LOG;
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::SetPresetL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::SetPresetL( TInt aIndex, const TFmPresetName& aName, TInt aFrequency )
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    TInt err( KErrNone );
+    TRAP(err, iBody->ReadPresetL( aIndex, radioPreset ) );
+    if (KErrNotFound == err)
+        {
+        // Preset doesn't need to exist yet.
+        // Handling of err only to get rid of compile warning.
+        err = KErrNone;
+        }
+    User::LeaveIfError(err);
+    radioPreset.SetName( aName );
+    radioPreset.SetFrequency( aFrequency );
+    if ( 0 >= aFrequency )
+        {
+        // aFrequency values 0, -1(Or <=0) means that it is better to destroy
+        // rest of parameters and also URL
+        TFmPresetUrl url;
+        radioPreset.SetUrl( url );
+        radioPreset.SetGenre( 0 );
+        radioPreset.SetPiCode( 0 );
+        radioPreset.SetLocalStation( 0 );
+        radioPreset.SetFavorite( EFalse );
+        radioPreset.SetRenamedByUser( EFalse );             
+        }
+    User::LeaveIfError( iBody->SavePresetL( radioPreset, aIndex ) );
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::SetPresetUrlL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::SetPresetUrlL( TInt aIndex, const TFmPresetUrl& aUrl )
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset );
+    radioPreset.SetUrl( aUrl );
+    User::LeaveIfError( iBody->SavePresetL( radioPreset, aIndex ) );
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::SetPresetPtyL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::SetPresetPtyL( TInt aIndex, TUint aPty )
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset );
+    radioPreset.SetGenre( aPty );
+    User::LeaveIfError( iBody->SavePresetL( radioPreset, aIndex ) );
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::SetPresetPICodeL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::SetPresetPICodeL( TInt aIndex, TUint aPICode )
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset );
+    radioPreset.SetPiCode( aPICode );
+    User::LeaveIfError( iBody->SavePresetL( radioPreset, aIndex ) );
+    }
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::SetPresetFavouriteInfoL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::SetPresetFavouriteInfoL( TInt aIndex, TBool aFavourite )
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset );
+    radioPreset.SetFavorite( aFavourite );
+    User::LeaveIfError( iBody->SavePresetL( radioPreset, aIndex ) );
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::SetPresetUserRenameInfoL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::SetPresetUserRenameInfoL( TInt aIndex, TBool aRename )
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset );
+    radioPreset.SetRenamedByUser( aRename );
+    User::LeaveIfError( iBody->SavePresetL( radioPreset, aIndex ) );
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::GetPresetL( TInt aIndex, TFmPresetName& aName, TInt& aFrequency )
+    {
+    FUNC_LOG;
+    TPreset preset;
+    iBody->ReadPresetL( aIndex, preset );
+    aName.Copy( preset.Name() );
+    aFrequency = preset.Frequency();
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::GetPresetNameL( TInt aIndex, TFmPresetName& aName)
+    {
+    FUNC_LOG;
+    TInt unused;
+    GetPresetL( aIndex, aName, unused );
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::GetPresetUrlL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//  
+EXPORT_C void CRadioFmPresetUtility::GetPresetUrlL( TInt aIndex, TFmPresetUrl& aUrl)
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset);
+    aUrl.Copy( radioPreset.Url() );
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::GetPresetPtyL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//  
+EXPORT_C void CRadioFmPresetUtility::GetPresetPtyL( TInt aIndex, TUint& aPty)
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset);
+    aPty = radioPreset.Genre();
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::GetPresetPICodeL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//  
+EXPORT_C void CRadioFmPresetUtility::GetPresetPICodeL( TInt aIndex, TUint& aPICode)
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset);
+    aPICode = radioPreset.PiCode();
+    }
+
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::GetPresetFavouriteInfoL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//  
+EXPORT_C void CRadioFmPresetUtility::GetPresetFavouriteInfoL( TInt aIndex, TBool& aFavourite)
+    {
+    FUNC_LOG;
+    TPreset radioPreset;
+    iBody->ReadPresetL( aIndex, radioPreset);
+    aFavourite = radioPreset.Favorite();
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::GetPresetUserRenameInfoL
+// 
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//  
+EXPORT_C void CRadioFmPresetUtility::GetPresetUserRenameInfoL( TInt aIndex, TBool& aRename)
+    {
+    FUNC_LOG;
+    TPreset preset;
+    iBody->ReadPresetL( aIndex, preset);
+    aRename = preset.RenamedByUser();
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::GetPresetFrequencyL( TInt aIndex, TInt& aFrequency)
+    {
+    FUNC_LOG;
+    TPreset preset;
+    iBody->ReadPresetL( aIndex, preset );
+    aFrequency = preset.Frequency();
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TInt CRadioFmPresetUtility::GetMaxNumberOfPresets( TInt& aMaxNumOfPresets ) const
+    {
+    FUNC_LOG;
+    aMaxNumOfPresets = iBody->MaxNumberOfPresets();
+    return KErrNone;
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TInt CRadioFmPresetUtility::GetNumberOfPresets( TInt& aNumOfPresets ) const
+    {
+    FUNC_LOG;
+    aNumOfPresets = iBody->PresetCount();
+    return KErrNone;
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::GetFirstPresetL( TInt& aIndex) const
+    {
+    FUNC_LOG;
+    aIndex = iBody->FirstPreset();
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::GetNextPresetL( TInt aIndex, TInt& aNextIndex ) const
+    {
+    FUNC_LOG;
+    aNextIndex = iBody->NextPreset( aIndex );
+    }
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CRadioFmPresetUtility::DeletePresetL( TInt aIndex )
+    {
+    FUNC_LOG;
+    User::LeaveIfError( iBody->DeletePreset( aIndex ) );
+    }
+
+// -----------------------------------------------------------------------------
+// CRadioFmPresetUtility::PresetChanged()
+// Returns: None
+// -----------------------------------------------------------------------------
+void CRadioFmPresetUtility::PresetChanged( TPresetChangeEvent aChange, TInt aIndex )
+    {
+    FUNC_LOG;
+    iObserver.MrpeoPresetChanged( (MRadioPresetObserver::TPresetChangeEvent)aChange, aIndex );
+    }