Revision: 201030 RCL_3
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 31 Aug 2010 15:16:10 +0300
branchRCL_3
changeset 20 072a5fa0c63b
parent 19 2f5c9ee7098c
child 21 c6bafb5162d8
Revision: 201030 Kit: 201035
group/bld.inf
layers.sysdef.xml
sysdef_1_4_0.dtd
tsrc/group/bld.inf
voicerec_plat/group/bld.inf
voicerec_plat/new_file_service_api/group/bld.inf
voicerec_plat/new_file_service_api/inc/CNewFileServiceBase.h
voicerec_plat/new_file_service_api/inc/NewFileService.hrh
voicerec_plat/new_file_service_api/inc/NewFileServiceClient.h
voicerec_plat/new_file_service_api/inc/NewFileServiceDefs.h
voicerec_plat/new_file_service_api/new_file_service_api.metaxml
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/Bmarm/UI_NewFileServiceTestU.DEF
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/Bwins/UI_NewFileServiceTestU.DEF
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/EABI/UI_NewFileServiceTestU.def
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/group/UI_NewFileServiceTest.mmp
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/group/UI_NewFileServiceTest.pkg
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/group/bld.inf
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/inc/CDummyNewFileServiceBase.h
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/inc/UI_NewFileServiceTest.h
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/src/CDummyNewFileServiceBase.cpp
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/src/UI_NewFileServiceTest.cpp
voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/src/UI_NewFileServiceTestBlocks.cpp
voicerec_plat/new_file_service_api/tsrc/conf/UI_NewFileServiceTest.cfg
voicerec_plat/new_file_service_api/tsrc/conf/tcNewFileServiceTest.cfg
voicerec_plat/new_file_service_api/tsrc/group/bld.inf
voicerec_plat/new_file_service_api/tsrc/init/TestFramework.ini
voicerec_plat/voicerecorder_public_constants_api/group/bld.inf
voicerec_plat/voicerecorder_public_constants_api/inc/VoiceRecorderContexts.h
voicerec_plat/voicerecorder_public_constants_api/inc/VoiceRecorderUID.h
voicerec_plat/voicerecorder_public_constants_api/voicerecorder_public_constants_api.metaxml
voicerecorder/Aif/VoiceRecorderAif.rss
voicerecorder/AppSrc/CVRAppServer.cpp
voicerecorder/AppSrc/CVRAppServer.h
voicerecorder/AppSrc/CVRAppUI.cpp
voicerecorder/AppSrc/CVRAppUi.h
voicerecorder/AppSrc/CVRApplication.cpp
voicerecorder/AppSrc/CVRApplication.h
voicerecorder/AppSrc/CVRDocument.cpp
voicerecorder/AppSrc/CVRDocument.h
voicerecorder/AppSrc/CVRNewFileService.cpp
voicerecorder/AppSrc/CVRNewFileService.h
voicerecorder/AppSrc/CVRSettingItem.cpp
voicerecorder/AppSrc/CVRSettingItem.h
voicerecorder/AppSrc/CVRSettingsDialog.cpp
voicerecorder/AppSrc/CVRSettingsDialog.h
voicerecorder/AppSrc/CVRSettingsDialogMMCSupported.cpp
voicerecorder/AppSrc/CVRSettingsDialogMMCSupported.h
voicerecorder/AppSrc/MVREmbeddedObserver.h
voicerecorder/AppSrc/MVRUSBEventObserver.h
voicerecorder/BMARM/VOICERECORDERRECVIEWU.DEF
voicerecorder/BMARM/VOICERECORDERUTILSU.DEF
voicerecorder/BWINS/NewServiceU.DEF
voicerecorder/BWINS/VOICERECORDERRECVIEWU.DEF
voicerecorder/BWINS/VoiceRecorderUtilsU.DEF
voicerecorder/BWINS/VoiceRecorderUtilsUU.DEF
voicerecorder/Conf/voicerecorder.confml
voicerecorder/Conf/voicerecorder_101F87A3.crml
voicerecorder/EABI/NewServiceU.DEF
voicerecorder/EABI/VoiceRecorderRecViewU.DEF
voicerecorder/EABI/VoiceRecorderUtilsU.DEF
voicerecorder/EABI/VoiceRecorderUtilsUU.DEF
voicerecorder/NewServiceInc/CNewFileServiceDiscovery.h
voicerecorder/NewServiceInc/NewFileService.rh
voicerecorder/NewServiceInc/NewFileServiceUID.h
voicerecorder/NewServiceSrc/CNewFileServiceBase.cpp
voicerecorder/NewServiceSrc/CNewFileServiceClientImpl.cpp
voicerecorder/NewServiceSrc/CNewFileServiceClientImpl.h
voicerecorder/NewServiceSrc/CNewFileServiceDiscovery.cpp
voicerecorder/NewServiceSrc/DllMain.cpp
voicerecorder/NewServiceSrc/NewFileServiceDefs.h
voicerecorder/NewServiceSrc/RNewFileServiceClient.cpp
voicerecorder/NewServiceSrc/RNewFileServiceClient.h
voicerecorder/NewServiceSrc/cnewfileserviceserverobserver.cpp
voicerecorder/NewServiceSrc/cnewfileserviceserverobserver.h
voicerecorder/RecViewInc/CVRRecView.h
voicerecorder/RecViewInc/RecView.rh
voicerecorder/RecViewSrc/CVRButtonPanel.cpp
voicerecorder/RecViewSrc/CVRButtonPanel.h
voicerecorder/RecViewSrc/CVRDiskSpaceWatcher.cpp
voicerecorder/RecViewSrc/CVRDiskSpaceWatcher.h
voicerecorder/RecViewSrc/CVRLabel.cpp
voicerecorder/RecViewSrc/CVRLabel.h
voicerecorder/RecViewSrc/CVRMdaRecorder.cpp
voicerecorder/RecViewSrc/CVRMdaRecorder.h
voicerecorder/RecViewSrc/CVRMediaRemovalMonitor.cpp
voicerecorder/RecViewSrc/CVRMediaRemovalMonitor.h
voicerecorder/RecViewSrc/CVRMemo.cpp
voicerecorder/RecViewSrc/CVRMemo.h
voicerecorder/RecViewSrc/CVRMemo.inl
voicerecorder/RecViewSrc/CVRRecView.cpp
voicerecorder/RecViewSrc/CVRRecViewActivationContainer.cpp
voicerecorder/RecViewSrc/CVRRecViewActivationContainer.h
voicerecorder/RecViewSrc/CVRRecViewContainer.cpp
voicerecorder/RecViewSrc/CVRRecViewContainer.h
voicerecorder/RecViewSrc/CVRRecViewModel.cpp
voicerecorder/RecViewSrc/CVRRecViewModel.h
voicerecorder/RecViewSrc/CVRRemConObserver.cpp
voicerecorder/RecViewSrc/CVRRemConObserver.h
voicerecorder/RecViewSrc/CVRStateInfoPanel.cpp
voicerecorder/RecViewSrc/CVRStateInfoPanel.h
voicerecorder/RecViewSrc/CVRSystemEventHandler.cpp
voicerecorder/RecViewSrc/CVRSystemEventHandler.h
voicerecorder/RecViewSrc/CVRTonePlayer.cpp
voicerecorder/RecViewSrc/CVRTonePlayer.h
voicerecorder/RecViewSrc/DllMain.cpp
voicerecorder/RecViewSrc/MVRButtonPanelModel.h
voicerecorder/RecViewSrc/MVRDecoratorModel.h
voicerecorder/RecViewSrc/MVRIHFObserver.h
voicerecorder/RecViewSrc/MVRKeyObserver.h
voicerecorder/RecViewSrc/MVRMdaRecorder.h
voicerecorder/RecViewSrc/MVRMediaRemovalObserver.h
voicerecorder/RecViewSrc/MVRObserver.h
voicerecorder/RecViewSrc/MVRStateInfoModel.h
voicerecorder/RecViewSrc/MVRStateInfoObserver.h
voicerecorder/RecViewSrc/MVRSystemEventObserver.h
voicerecorder/RecViewSrc/MVRUpdateEventProvider.h
voicerecorder/RecViewSrc/MVRVolumeChangeObserver.h
voicerecorder/RecViewSrc/MVRVolumeEventObserver.h
voicerecorder/RecViewSrc/TVRContext.h
voicerecorder/RecViewSrc/TVRState.cpp
voicerecorder/RecViewSrc/TVRState.h
voicerecorder/UtilsInc/MVRLayoutChangeObserver.h
voicerecorder/UtilsInc/MVRSelectionProvider.h
voicerecorder/UtilsInc/TVRRename.h
voicerecorder/UtilsInc/VRUSBStateHanlder.h
voicerecorder/UtilsInc/VRUtils.h
voicerecorder/UtilsSrc/DllMain.cpp
voicerecorder/UtilsSrc/TVRRename.cpp
voicerecorder/UtilsSrc/VRUSBStateHanlder.cpp
voicerecorder/UtilsSrc/VRUtils.cpp
voicerecorder/cenrep/keys_voicerecorder.xls
voicerecorder/group/App.lnt
voicerecorder/group/NewService.mmp
voicerecorder/group/ProjLint.bat
voicerecorder/group/RecView.lnt
voicerecorder/group/RecView.mmp
voicerecorder/group/RecViewLint.bat
voicerecorder/group/Utils.lnt
voicerecorder/group/Utils.mmp
voicerecorder/group/UtilsLint.bat
voicerecorder/group/VRConsts.h
voicerecorder/group/VoiceRecorder.pkg
voicerecorder/group/VoiceRecorder.rh
voicerecorder/group/VoiceRecorderApp.mmp
voicerecorder/group/VoiceRecorderInternalCRKeys.h
voicerecorder/group/VoiceRecorderPrivatePSKeys.h
voicerecorder/group/VoiceRecorderSingleClick.hrh
voicerecorder/group/VoiceRecorder_reg.rss
voicerecorder/group/backup_registration.xml
voicerecorder/group/bld.inf
voicerecorder/group/lscan.bat
voicerecorder/group/moveudeb.bat
voicerecorder/group/voicerecorder.hrh
voicerecorder/group/voicerecorder.rss
voicerecorder/gsplugin/data/1020729D.rss
voicerecorder/gsplugin/group/GSVoiceRecorderPlugin.mmp
voicerecorder/gsplugin/group/bld.inf
voicerecorder/gsplugin/inc/CVRGSPlugin.h
voicerecorder/gsplugin/inc/CVRGSPluginContainer.h
voicerecorder/gsplugin/src/CVRGSPlugin.cpp
voicerecorder/gsplugin/src/CVRGSPluginContainer.cpp
voicerecorder/gsplugin/src/VRGSPluginImplementationTable.cpp
voicerecorder/help/data/xhtml.zip
voicerecorder/help/group/bld.inf
voicerecorder/help/inc/vorec.hlp.hrh
voicerecorder/help/rom/voicerechelps_variant.iby
voicerecorder/loc/voicerecorder.loc
voicerecorder/rom/Voicerecorder.iby
voicerecorder/rom/VoicerecorderResources.iby
voicerecorder/sis/101F87A3.cre
voicerecorder/sis/VoiceRecorder.pkg
voicerecorder/sis/VoiceRecorder.xml
voicerecorder/sis/VoiceRecorderCenrep.pkg
voicerecorder/sis/VoiceRecorder_stub.pkg
voicerecorder/sis/VoiceRecorder_stub.sis
voicerecorder/sis/VoiceRecorder_udeb.pkg
voicerecorder/sis/build_cenrep_sisx.bat
voicerecorder/sis/build_sis_stub.bat
voicerecorder/sis/build_sisx.bat
voicerecorder/sis/build_sisx_udeb.bat
voicerecorder/sis/change_version.bat
voicerecorder/sis/readme.txt
--- a/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +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:  Project build file for voicerec.
-*
-*/
-
-
-#include <platform_paths.hrh>
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_EXPORTS
-
-
-PRJ_MMPFILES
-#include "../voicerec_plat/group/bld.inf"
-#include "../voicerecorder/group/bld.inf"
-
-
-//  End of File  
-
--- a/layers.sysdef.xml	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE SystemDefinition SYSTEM "sysdef_1_4_0.dtd" [
-  <!ENTITY layer_real_source_path "sf/app/voicerec" >
-]> 
-
-<SystemDefinition name="avdomain" schema="1.4.0">
-	<systemModel>
-  <!-- Common file for prebuild layers-->
-  	<layer name="app_layer">
-			<module name="voicerec">
-				<unit unitID="voicerec" mrp="" bldFile="&layer_real_source_path;/group" name="voicerec" />
-			</module>
-    </layer> 
-
-  	<layer name="api_test_layer">
-			<module name="voicerec_tsrc">
-				<unit unitID="voicerec_tsrc" name="voicerec_tsrc" bldFile="&layer_real_source_path;/tsrc/group" mrp="" />
-			</module>
-    </layer>
-
-  	<layer name="pref_test_layer">
-			<module name="voicerec_tsrc_group">
-				<unit unitID="voicerec_tsrc_group" name="voicerec_tsrc_group" bldFile="&layer_real_source_path;/tsrc/group" mrp="" filter="TA_VOICEREC" />
-			</module>
-    </layer>
-
-  	<layer name="app_voicerec_layer">
-			<module name="voicerec_group">
-				<unit unitID="voicerec_group" mrp="" bldFile="&layer_real_source_path;/group" name="voicerec_group" />
-			</module>
-    </layer>
-   
-  </systemModel>
-</SystemDefinition>
\ No newline at end of file
--- a/sysdef_1_4_0.dtd	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
- <!ELEMENT SystemDefinition (systemModel?, build?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (logicalset* | module*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  levels CDATA #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT logicalset (logicalsubset* | module* | unit* | package* | prebuilt*)*>
- <!ATTLIST logicalset name CDATA #REQUIRED>
- <!ELEMENT logicalsubset (module* | unit* | package* | prebuilt*)*>
- <!ATTLIST logicalsubset name CDATA #REQUIRED>
- <!ELEMENT module (component* | unit* | package* | prebuilt*)*>
- <!ATTLIST module
-  name CDATA #REQUIRED
-  level CDATA #IMPLIED>
- <!ELEMENT component (unit* | package* | prebuilt*)*>
- <!ATTLIST component name CDATA #REQUIRED>
- <!ELEMENT unit EMPTY>
- <!ATTLIST unit
-  unitID ID #REQUIRED
-  name CDATA #REQUIRED
-  mrp CDATA #REQUIRED
-  filter CDATA #IMPLIED
-  bldFile CDATA #REQUIRED
-  priority CDATA #IMPLIED
-  contract CDATA #IMPLIED>
- <!ELEMENT package EMPTY>
- <!ATTLIST package
-  name CDATA #REQUIRED
-  mrp CDATA #REQUIRED
-  filter CDATA #IMPLIED
-  contract CDATA #IMPLIED>
- <!ELEMENT prebuilt EMPTY>
- <!ATTLIST prebuilt
-  name CDATA #REQUIRED
-  version CDATA #REQUIRED
-  late (Y|N) #IMPLIED
-  filter CDATA #IMPLIED
-  contract CDATA #IMPLIED>
- <!ELEMENT build (option* | target+ | targetList+ | unitList+ | configuration+)*>
- <!ELEMENT unitList (unitRef+)>
- <!ATTLIST unitList
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT unitRef EMPTY>
- <!ATTLIST unitRef unit IDREF #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y | N | y | n) #REQUIRED>
- <!ELEMENT configuration (unitListRef+ | layerRef+ | task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task ( unitListRef* , (buildLayer | specialInstructions))>
- <!ELEMENT unitListRef EMPTY>
- <!ATTLIST unitListRef unitList IDREF #REQUIRED>
- <!ELEMENT layerRef EMPTY>
- <!ATTLIST layerRef layerName CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y | N | y | n) #REQUIRED
-  targetParallel (Y | N | y | n) #IMPLIED>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  command CDATA #REQUIRED>  
--- a/tsrc/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +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:  Project specification for mmenhs projects.
-*
-*/
-
-
-#include <platform_paths.hrh>
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_TESTEXPORTS
-
-PRJ_EXPORTS
-
-PRJ_TESTMMPFILES
-#include "../../voicerec_plat/new_file_service_api/tsrc/group/bld.inf"
-
-PRJ_MMPFILES
-
-//  End of File
--- a/voicerec_plat/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +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:  Includes all the Domain API specific bld.inf files, which 
-*                export files.
-*
-*/
-
-
-
-#include "../new_file_service_api/group/bld.inf"
-#include "../voicerecorder_public_constants_api/group/bld.inf"
--- a/voicerec_plat/new_file_service_api/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +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:  File that exports the files belonging to 
-:                New File Service API
-*
-*/
-
-
-#include <platform_paths.hrh>
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_EXPORTS
-
-../inc/NewFileServiceClient.h     APP_LAYER_PLATFORM_EXPORT_PATH(NewFileServiceClient.h)
-../inc/CNewFileServiceBase.h     APP_LAYER_PLATFORM_EXPORT_PATH(CNewFileServiceBase.h)
-../inc/NewFileServiceDefs.h     APP_LAYER_PLATFORM_EXPORT_PATH(NewFileServiceDefs.h)
-../inc/NewFileService.hrh     APP_LAYER_PLATFORM_EXPORT_PATH(NewFileService.hrh)
--- a/voicerec_plat/new_file_service_api/inc/CNewFileServiceBase.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,156 +0,0 @@
-/*
-* Copyright (c) 2002-2004 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:  Interface for recording new media files using platform
-                 applications
-*
-*/
-
-
-
-#ifndef CNEWFILESERVICEBASE_H
-#define CNEWFILESERVICEBASE_H
-
-//  INCLUDES
-#include <AknServerApp.h>
-#include <badesca.h>
-#include <f32file.h>
-#include <NewFileService.hrh>
-
-// FORWARD DECLARATIONS
-class CAiwGenericParamList;
-
-
-// CLASS DECLARATION
-
-/**
-*  Observer interface to get notification from server application
-*
-*  @lib NewService.lib
-*  @since Series 60 3.0
-*/
-class MNewFileServiceObserver
-	{
-	public:
-		virtual void HandleCompletedNewServiceL( TBool aReturnValue ) = 0;
-	};
-
-/**
-*  Base class for server applications
-*
-*  @lib NewService.lib
-*  @since Series 60 3.0
-*/
-class CNewFileServiceBase : public CAknAppServiceBase, public MNewFileServiceObserver
-    {
-    public:  // Constructors and destructor
-
-        /**
-        * Destructor.
-        */
-        IMPORT_C virtual ~CNewFileServiceBase();
-
-        /**
-        * return iErrorCode.
-        */
-        IMPORT_C TInt GetErrorCode();
-        
-        /**
-        * set iErrorCode.
-        */        
-        IMPORT_C void SetErrorCode(TInt);
-
-
-    protected:  // New functions
-
-        /**
-        * From CAknAppServiceBase
-        * @since Series 60 3.0
-        * @param aMessage The client message
-        */
-        IMPORT_C void ServiceL( const RMessage2& aMessage );
-
-        /**
-        * From MNewFileServiceObserver
-        * @since Series 60 3.0
-        * @param aReturnValue ETrue if the media file was succesfully created
-        */
-		IMPORT_C void HandleCompletedNewServiceL( TBool aReturnValue );
-
-        /**
-        * Getter for member variable
-        * @since Series 60 3.0
-        * @return Pointer to iGenericParams
-        */        
-		IMPORT_C CAiwGenericParamList* GenericParams();
-
-        /**
-        * Create a new media file
-        * @since Series 60 3.0
-        * @param aObserver Object that is notified when recording is ready
-        * @param aFilenameArray Array for the filename(s) of the recorded files
-        * @param aType Required media type
-        * @param aMultiplefiles ETrue if multiples files can be recorded
-        */
-        virtual void HandleNewFileL( MNewFileServiceObserver* aObserver,
-        							  CDesCArray& aFilenameArray,
-        							  TNewServiceFileType aType,
-        							  TBool aMultipleFiles ) = 0;
-        /**
-        * Create a new media file
-        * @since Series 60 3.0
-        * @param aObserver Object that is notified when recording is ready
-        * @param aFile File handle that the media file is to be recorded
-        * @param aType Required media type
-        */
-        virtual void HandleNewFileL( MNewFileServiceObserver* aObserver,
-        							  RFile& aFile,
-        							  TNewServiceFileType aType ) = 0;
-
-        /**
-        * Notifies the server application that service is complete
-        * and it may safely close
-        * @since Series 60 3.0
-        */
-		virtual void ServiceCompleteL() = 0;
-
-	private:
-
-		void DeserializeGenericParamsL( const RMessage2& aMessage );
-
-
-    protected:
-
-        /**
-        * C++ default constructor.
-        */
-        IMPORT_C CNewFileServiceBase();
-
-    private:    // Data
-        // Array for the filenames
-        CDesCArrayFlat* iFilenameArray;
-
-        // Last received message
-        RMessage2 iPendingMessage;
-
-        // Generic parameter array
-        CAiwGenericParamList* iGenericParams;
-        
-        // Error code that send back to client
-        TInt iError;
-
-    };
-
-#endif      // CNewFileServiceBase_H
-
-// End of File
--- a/voicerec_plat/new_file_service_api/inc/NewFileService.hrh	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2002-2004 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:  Definitions for the API
-*
-*/
-
-
-#ifndef NEWFILESERVICE_HRH
-#define NEWFILESERVICE_HRH
-
-// DATA TYPES
-enum TNewServiceFileType
-	{
-	ENewFileServiceImage,
-	ENewFileServiceVideo,
-	ENewFileServiceAudio
-	};
-
-#endif
-
-// End of File
--- a/voicerec_plat/new_file_service_api/inc/NewFileServiceClient.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-/*
-* Copyright (c) 2002-2004 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:  Client side API
-*
-*/
-
-
-
-#ifndef NEWFILESERVICECLIENT_H
-#define NEWFILESERVICECLIENT_H
-
-//  INCLUDES
-#include <NewFileService.hrh>
-#include <e32std.h>
-#include <badesca.h>
-#include <AknServerApp.h>
-
-// FORWARD DECLARATIONS
-class RFile;
-class CApaServerAppExitMonitor;
-class CNewFileServiceClient;
-class CAiwGenericParamList;
-
-// CLASS DECLARATION
-
-
-class NewFileServiceFactory
-	{
-	public:
-		IMPORT_C static CNewFileServiceClient* NewClientL();
-	};
-
-/**
-*  Client side API for New File Service
-*
-*  @lib NewService.lib
-*  @since Series 60 3.0
-*/
-class CNewFileServiceClient : public CBase
-    {
-
-    public: // New functions
-
-        /**
-        * Create new media file
-        * @since Series 60 3.0
-        * @param aApplicationUid Uid for the server application
-        * @param aFileNames Array for the created media files
-        * @param aParams Parameters for the operation
-        * @param aFileType Type of media file requested
-        * @param aMultipleFiles Multiple files can be created
-        * @return ETrue if new file was succesfully created
-        */        
-		virtual TBool NewFileL( CDesCArray& aFileNames,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType,
-							   TBool aMultipleFiles ) = 0;
-		virtual TBool NewFileL( TUid aApplicationUid,
-							   CDesCArray& aFileNames,
-							   	CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType,
-							   TBool aMultipleFiles ) = 0;
-
-
-		/**
-        * NOTE: When you pass file handles to new file service,
-        * the handle should be opened using ShareProtected()
-        * file session, otherwise handles can't be transfered through
-        * client-server interface.
-        */
-        
-        /**
-        * Create new media file
-        * @since Series 60 3.0
-        * @param aApplicationUid Uid for the server application
-        * @param aFile File handle for the media file
-        * @param aParams Parameters for the operation        
-        * @param aFileType Type of media file requested
-        * @return ETrue if new file was succesfully created
-        */                
-		virtual TBool NewFileL( RFile& aFileHandle,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType ) = 0;
-
-		virtual TBool NewFileL( TUid aApplicationUid,
-							   RFile& aFileHandle,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType ) = 0;
-
-
-
-    };
-
-#endif      // NEWFILESERVICECLIENT_H
-
-// End of File
--- a/voicerec_plat/new_file_service_api/inc/NewFileServiceDefs.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Definitions for the API
-*
-*/
-
-
-
-#ifndef NEWSERVICEDEFS_H
-#define NEWSERVICEDEFS_H
-
-//  INCLUDES
-#include <apaserverapp.h>
-
-#define NEWSERVICEUID 0x101F8861
-
-// DATA TYPES
-enum TIpcMessageIds
-	{
-	ECreateNewFile = RApaAppServiceBase::KServiceCmdBase,
-	ENewFileToHandle,
-	EGetFilenameArrayLength,
-	EGetFilenameArray
-	};
-
-enum TIpcNewFileArgumentIndices
-    {
-    ENewServiceIndexParams = 0,
-    ENewServiceIndexFsHandle,
-    ENewServiceIndexFileHandle,
-    ENewServiceIndexFileName
-    };
-
-/**
-*  Parameter class transferred through client-server interface.
-*
-*  @since Series 60 3.0
-*/
-class TNewServiceParamPack
-	{
-	public:
-		TNewServiceFileType iType;
-		TBool iMultipleFiles;
-		TBool iReturnValue;
-	};
-
-
-#endif      // NEWSERVICEDEFS_H
-
-// End of File
--- a/voicerec_plat/new_file_service_api/new_file_service_api.metaxml	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-<?xml version="1.0" ?>
-<api id="ecb6096534db5e9b24c61774ad144cd4" dataversion="2.0">
-  <name>New File Service API</name>
-  <description>New File Service API</description>
-  <type>c++</type>
-  <collection>voicerecorder</collection>
-  <libs>
-    <lib name="NewService.lib" />
-  </libs>
-  <release category="platform"/>
-  <attributes>
-     <!-- This indicates wether the api provedes separate html documentation -->
-     <!-- or is the additional documentation generated from headers. -->
-     <!-- If you are unsuere then the value is "no" -->
-     <htmldocprovided>no</htmldocprovided>
-     <adaptation>no</adaptation>
-  </attributes>
-</api>
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/Bmarm/UI_NewFileServiceTestU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	LibEntryL__FR13CTestModuleIf @ 1 NONAME R3UNUSED ; LibEntryL(CTestModuleIf &)
-
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/Bwins/UI_NewFileServiceTestU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	?LibEntryL@@YAPAVCScriptBase@@AAVCTestModuleIf@@@Z @ 1 NONAME ; class CScriptBase * __cdecl LibEntryL(class CTestModuleIf &)
-
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/EABI/UI_NewFileServiceTestU.def	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5 +0,0 @@
-EXPORTS
-	_Z9LibEntryLR13CTestModuleIf @ 1 NONAME
-	_ZTI24CDummyNewFileServiceBase @ 2 NONAME ; #<TI>#
-	_ZTV24CDummyNewFileServiceBase @ 3 NONAME ; #<VT>#
-
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/group/UI_NewFileServiceTest.mmp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: API test automation file for project UI_NewFileServiceTest
-*
-*/
-
-
-#if defined(__S60_)
-        // To get the OS_LAYER_SYSTEMINCLUDE-definition
-        #include <platform_paths.hrh>
-#endif
-
-TARGET          UI_NewFileServiceTest.dll
-TARGETTYPE      dll
-UID             0x1000008D 0x101FB3E3
-
-CAPABILITY      ALL -TCB
-/* Remove comments and replace 0x00000000 with correct vendor id */
-// VENDORID     0x00000000
-/* Remove comments and replace 0x00000000 with correct secure id */
-// SECUREID     0x00000000
-
-//TARGETPATH      ?target_path
-DEFFILE         UI_NewFileServiceTest.def
-
-APP_LAYER_SYSTEMINCLUDE
-
-SOURCEPATH      ../src
-SOURCE          UI_NewFileServiceTest.cpp
-SOURCE          UI_NewFileServiceTestBlocks.cpp
-SOURCE          CDummyNewFileServiceBase.cpp
-
-USERINCLUDE     ../inc 
-
-LIBRARY         euser.lib
-LIBRARY         stiftestinterface.lib
-LIBRARY         stiftestengine.lib
-LIBRARY         NewService.lib bafl.lib ServiceHandler.lib
-LIBRARY         cone.lib ws32.lib avkon.lib eikcoctl.lib eikctl.lib apgrfx.lib aknskins.lib aknskinsrv.lib aknswallpaperutils.lib eikcore.lib mpxviewutility.lib efsrv.lib
-
-LANG            SC
-
-/*
-START WINS      
-?wins_specific_information
-END
-
-START MARM
-?marm_specific_information
-END
-*/
-// Other possible keywords:
- 
-// DOCUMENT     ?file, that is not compiled, but added to MSVC project workspace (i.e. release notes)
-/*
-START BITMAP ?target
-TARGETPATH   ?emulated_path_on_target_machine
-HEADER
-SOURCE       ?color_depth ?source_bitmap
-END
-*/
-// DEFFILE ?filename
-// AIF ?filename
-
-// End of File
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/group/UI_NewFileServiceTest.pkg	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +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: pakage file for make installation file for STIF
-;
-;
-; Installation file for STIF
-;
-
-; Languages
-&EN
-
-; Provide value for uid
-#{"STIF UI_NewFileServiceTest Application"},(0x10005942),1,1,0,TYPE=SA
-
-; Series60 product id for S60 3.0
-[0x101F7961], 0, 0, 0, {"Series60ProductID"}
-
-; Localised Vendor name
-%{"Nokia"}
-
-; Unique Vendor name
-:"Nokia"
-
-; Logo
-; None
-
-; Package signature - Optional
-; None
-
-; Start of Package body
-
-; Condition blocks
-; None
-
-; Options list
-; None
-
-; Install files
-"\epoc32\release\armv5\urel\UI_NewFileServiceTest.dll"   -   "c:\Sys\Bin\UI_NewFileServiceTest.dll"
-"..\..\init\TestFramework.ini"   -   "c:\testframework\TestFramework.ini" 
-"..\..\conf\UI_NewFileServiceTest.cfg"   -   "c:\testframework\UI_NewFileServiceTest.cfg"
-"..\..\conf\tcNewFileServiceTest.cfg"   -   "c:\testframework\tcNewFileServiceTest.cfg"
-  
-; Embedded SIS 
-; None
-
-; End of Package body
-
-; PKG dependencies
-; None
-
-; PKG capabilities
-; None
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2002 - 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:  build information file for project UI_NewFileServiceTest.
-*
-*/
-
-
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_EXPORTS
-
-PRJ_TESTMMPFILES
-UI_NewFileServiceTest.mmp
-// NOTE: If using ARS requirements .mmp file operation should be done under this.
-// 'abld test build'
-
-//  End of File
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/inc/CDummyNewFileServiceBase.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2002 - 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:    Sample file of  newfile server
-*
-*/
-
-
-
-
-
-
-#ifndef CDUMMYNEWFILESERVICEBASE_H_
-#define CDUMMYNEWFILESERVICEBASE_H_
-#include <CNewfileServiceBase.h>
-
-class CDummyNewFileServiceBase : public CNewFileServiceBase 
-    {
-public:  // Constructors and destructor
-	CDummyNewFileServiceBase();  
-    ~CDummyNewFileServiceBase();
-    void HandleNewFileL( MNewFileServiceObserver* aObserver,
-           							  CDesCArray& aFilenameArray,
-           							  TNewServiceFileType aType,
-           							  TBool aMultipleFiles );
-    CPolicyServer::TCustomResult SecurityCheckL(const RMessage2& aMsg, TInt& aAction, TSecurityInfo& aMissing);
-    TInt CountResources();  
-    void Disconnect(const RMessage2& aMessage);
-    void ExtensionInterface(TUid aInterfaceId, TAny*& aImplementaion);
-    void CApaAppServiceBase_Reserved1();
-    void CApaAppServiceBase_Reserved2();
-    void HandleNewFileL( MNewFileServiceObserver* aObserver,
-           							  RFile& aFile,
-           				  TNewServiceFileType aType );
-   	void ServiceCompleteL();
-   	void ServiceLtest(const RMessage2& aMessage);
-   	void HandleCompletedNewServiceLtest(TBool aBool);
-   	CAiwGenericParamList* GenericParamstest();
-
-    };
-#endif /*CDUMMYNEWFILESERVICEBASE_H_*/
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/inc/UI_NewFileServiceTest.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-/*
-* Copyright (c) 2002 - 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:    UI_NewFileServiceTest test class for STIF Test Framework TestScripter.
-*
-*/
-
-
-
-
-
-
-#ifndef UI_NewFileServiceTest_H
-#define UI_NewFileServiceTest_H
-
-//  INCLUDES
-#include <StifLogger.h>
-#include <TestScripterInternal.h>
-#include <StifTestModule.h>
-
-#include <CNewFileServiceBase.h>
-#include <NewFileServiceClient.h>
-#include <AiwGenericParam.h>
-#include <coeaui.h>
-#include "CDummyNewFileServiceBase.h"
-// CONSTANTS
-//const ?type ?constant_var = ?constant;
-
-// MACROS
-//#define ?macro ?macro_def
-// Logging path
-_LIT( KUI_NewFileServiceTestLogPath, "\\logs\\testframework\\UI_NewFileServiceTest\\" );
-//Data path
-_LIT( KNewFileServiceTestDataPath, "c:\\testing\\data\\" ); 
-// Log file
-_LIT( KUI_NewFileServiceTestLogFile, "UI_NewFileServiceTest.txt" ); 
-_LIT( KUI_NewFileServiceTestLogFileWithTitle, "UI_NewFileServiceTest_[%S].txt" );
-
-// FUNCTION PROTOTYPES
-//?type ?function_name(?arg_list);
-
-// FORWARD DECLARATIONS
-//class ?FORWARD_CLASSNAME;
-class CUI_NewFileServiceTest;
-class CCoeControl;
-class CNewFileServiceClient;
-class NewFileServiceFactory;
-class CNewFileServiceBase;
-class CEdwinTestControl;
-class CListBoxTestControl;
-
-// DATA TYPES
-//enum ?declaration
-//typedef ?declaration
-//extern ?data_type;
-
-// CLASS DECLARATION
-
-/**
-*  CUI_NewFileServiceTest test class for STIF Test Framework TestScripter.
-*  ?other_description_lines
-*
-*  @lib ?library
-*  @since ?Series60_version
-*/
-NONSHARABLE_CLASS(CUI_NewFileServiceTest) : public CScriptBase
-    {
-    public:  // Constructors and destructor
-
-    	enum TIpcNewFileArgumentIndices
-    	    {
-    	    ENewServiceIndexParams = 0,
-    	    ENewServiceIndexFsHandle,
-    	    ENewServiceIndexFileHandle,
-    	    ENewServiceIndexFileName
-    	    };
-        /**
-        * Two-phased constructor.
-        */
-        static CUI_NewFileServiceTest* NewL( CTestModuleIf& aTestModuleIf );
-
-        /**
-        * Destructor.
-        */
-        virtual ~CUI_NewFileServiceTest();
-
-    public: // New functions
-
-        /**
-        * ?member_description.
-        * @since ?Series60_version
-        * @param ?arg1 ?description
-        * @return ?description
-        */
-        //?type ?member_function( ?type ?arg1 );
-
-    public: // Functions from base classes
-
-        /**
-        * From CScriptBase Runs a script line.
-        * @since ?Series60_version
-        * @param aItem Script line containing method name and parameters
-        * @return Symbian OS error code
-        */
-        virtual TInt RunMethodL( CStifItemParser& aItem );
-
-
-
-    private:
-
-        /**
-        * C++ default constructor.
-        */
-        CUI_NewFileServiceTest( CTestModuleIf& aTestModuleIf );
-
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-        void ConstructL();
-
-        // Prohibit copy constructor if not deriving from CBase.
-        // ?classname( const ?classname& );
-        // Prohibit assigment operator if not deriving from CBase.
-        // ?classname& operator=( const ?classname& );
-
-        /**
-        * Frees all resources allocated from test methods.
-        * @since ?Series60_version
-        */
-        void Delete();
-
-        /**
-        * Test methods are listed below. 
-        */
-
-        /**
-        * Example test method.
-        * @since ?Series60_version
-        * @param aItem Script line containing parameters.
-        * @return Symbian OS error code.
-        */
-     
-        TInt CNewFileServiceClientCreate( CStifItemParser& aItem );
-        TInt NewFileL( CStifItemParser& aItem );
-        TInt NewFileByUid( CStifItemParser& aItem );
-        TInt NewFileByRFile( CStifItemParser& aItem );
-        TInt NewFileByRFileAndUid( CStifItemParser& aItem );
-        
-        TInt CreateCDummyNewFileServiceBase( CStifItemParser& /*aItem*/ );
-        TInt DestroyCDummyNewFileServiceBase( CStifItemParser& /*aItem*/ );
-        TInt CDummyNewFileServiceBaseGetErrorCode( CStifItemParser& /*aItem*/ );
-        TInt CDummyNewFileServiceBaseSetErrorCode( CStifItemParser& aItem );
-        TInt CDummyNewFileServiceBaseServiceL( CStifItemParser& /*aItem*/ );
-        TInt CDummyNewFileServiceBaseHandleCompletedNewServiceL( CStifItemParser& /*aItem*/ );
-        TInt CDummyNewFileServiceBaseGenericParams( CStifItemParser& /*aItem*/ );
-        
-        //ADD NEW METHOD DEC HERE
-        //[TestMethods] - Do not remove
-
-    
-    private:    // Friend classes
-        //?friend_class_declaration;
-    	
-    	CNewFileServiceClient* iNewFileServiceClient;
-    	CNewFileServiceBase* iNewFileServiceBase;
-    	CDummyNewFileServiceBase* iDummyNewFileServiceBase;
-    };
-
-#endif      // UI_NewFileServiceTest_H
-
-// End of File
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/src/CDummyNewFileServiceBase.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-/*
-* Copyright (c) 2002 - 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:    sample file of Newfile server
-*
-*/
-
-
-
-
-
-
-#include "CDummyNewFileServiceBase.h"
-
-CDummyNewFileServiceBase::CDummyNewFileServiceBase():CNewFileServiceBase()
-	{
-	}
-CDummyNewFileServiceBase::~CDummyNewFileServiceBase()
-	{
-	}
-void CDummyNewFileServiceBase::HandleNewFileL( MNewFileServiceObserver* /*aObserver*/,
-          							  CDesCArray& /*aFilenameArray*/,
-          							  TNewServiceFileType /*aType*/,
-          							  TBool /*aMultipleFiles*/ )
-	{}
-         
-void CDummyNewFileServiceBase::HandleNewFileL( MNewFileServiceObserver* /*aObserver*/,
-          							  RFile& /*aFile*/,
-          				  TNewServiceFileType /*aType*/ )
-	{}
-
-void CDummyNewFileServiceBase::ServiceCompleteL()
-	{
-	GenericParams();
-	}
-CPolicyServer::TCustomResult CDummyNewFileServiceBase::SecurityCheckL(const RMessage2& /*aMsg*/, TInt& /*aAction*/, TSecurityInfo& /*aMissing*/)
-	{return CPolicyServer::EPass;}
-TInt CDummyNewFileServiceBase::CountResources()
-	{return 0;}
-void CDummyNewFileServiceBase::Disconnect(const RMessage2& /*aMessage*/)
-	{}
-void CDummyNewFileServiceBase::ExtensionInterface(TUid /*aInterfaceId*/, TAny*& /*aImplementaion*/)
-	{}
-void CDummyNewFileServiceBase::CApaAppServiceBase_Reserved1()
-	{}
-void CDummyNewFileServiceBase::CApaAppServiceBase_Reserved2()
-	{}
-
-void CDummyNewFileServiceBase::ServiceLtest(const RMessage2& aMessage)
-	{
-	ServiceL( aMessage );
-	}
-
-void CDummyNewFileServiceBase::HandleCompletedNewServiceLtest(TBool aBool)
-	{
-	HandleCompletedNewServiceL( aBool);
-	}
-
-CAiwGenericParamList* CDummyNewFileServiceBase::GenericParamstest()
-	{
-	return GenericParams();
-	}
-
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/src/UI_NewFileServiceTest.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,143 +0,0 @@
-/*
-* Copyright (c) 2002 - 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:     UI_NewFileServiceTest test class for STIF Test Framework TestScripter.
-*
-*/
-
-
-
-
-
-
-// INCLUDE FILES
-#include <Stiftestinterface.h>
-#include "UI_NewFileServiceTest.h"
-#include <SettingServerClient.h>
-
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CUI_NewFileServiceTest
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CUI_NewFileServiceTest::CUI_NewFileServiceTest( 
-    CTestModuleIf& aTestModuleIf ):
-        CScriptBase( aTestModuleIf )
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CUI_NewFileServiceTest::ConstructL()
-    {
-    //Read logger settings to check whether test case name is to be
-    //appended to log file name.
-    RSettingServer settingServer;
-    TInt ret = settingServer.Connect();
-    if(ret != KErrNone)
-        {
-        User::Leave(ret);
-        }
-    // Struct to StifLogger settigs.
-    TLoggerSettings loggerSettings; 
-    // Parse StifLogger defaults from STIF initialization file.
-    ret = settingServer.GetLoggerSettings(loggerSettings);
-    if(ret != KErrNone)
-        {
-        User::Leave(ret);
-        } 
-    // Close Setting server session
-    settingServer.Close();
-
-    TFileName logFileName;
-    
-    if(loggerSettings.iAddTestCaseTitle)
-        {
-        TName title;
-        TestModuleIf().GetTestCaseTitleL(title);
-        logFileName.Format(KUI_NewFileServiceTestLogFileWithTitle, &title);
-        }
-    else
-        {
-        logFileName.Copy(KUI_NewFileServiceTestLogFile);
-        }
-
-    iLog = CStifLogger::NewL( KUI_NewFileServiceTestLogPath, 
-                          logFileName,
-                          CStifLogger::ETxt,
-                          CStifLogger::EFile,
-                          EFalse );
-
-    }
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CUI_NewFileServiceTest* CUI_NewFileServiceTest::NewL( 
-    CTestModuleIf& aTestModuleIf )
-    {
-    CUI_NewFileServiceTest* self = new (ELeave) CUI_NewFileServiceTest( aTestModuleIf );
-
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop();
-
-    return self;
-
-    }
-
-// Destructor
-CUI_NewFileServiceTest::~CUI_NewFileServiceTest()
-    { 
-
-    // Delete resources allocated from test methods
-    Delete();
-    
-    if ( iNewFileServiceClient != NULL )
-    	{
-    	delete iNewFileServiceClient;
-    	iNewFileServiceClient=NULL;
-    	}
-    
-    // Delete logger
-    delete iLog; 
-
-    }
-
-// ========================== OTHER EXPORTED FUNCTIONS =========================
-
-// -----------------------------------------------------------------------------
-// LibEntryL is a polymorphic Dll entry point.
-// Returns: CScriptBase: New CScriptBase derived object
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CScriptBase* LibEntryL( 
-    CTestModuleIf& aTestModuleIf ) // Backpointer to STIF Test Framework
-    {
-
-    return ( CScriptBase* ) CUI_NewFileServiceTest::NewL( aTestModuleIf );
-
-    }
-
-
-//  End of File
--- a/voicerec_plat/new_file_service_api/tsrc/UI_NewFileServiceTest/src/UI_NewFileServiceTestBlocks.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,414 +0,0 @@
-/*
-* Copyright (c) 2002 - 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:    UI_NewFileServiceTest test class for STIF Test Framework TestScripter.
-*
-*/
-
-
-
-
-
-
-// [INCLUDE FILES] - do not remove
-#include <e32svr.h>
-#include <StifParser.h>
-#include <Stiftestinterface.h>
-#include "UI_NewFileServiceTest.h"
-
-#include <coeaui.h>
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::Delete
-// Delete here all resources allocated and opened from test methods. 
-// Called from destructor. 
-// -----------------------------------------------------------------------------
-//
-void CUI_NewFileServiceTest::Delete() 
-    {
-
-    }
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::RunMethodL
-// Run specified method. Contains also table of test mothods and their names.
-// -----------------------------------------------------------------------------
-//
-TInt CUI_NewFileServiceTest::RunMethodL( 
-    CStifItemParser& aItem ) 
-    {
-
-    static TStifFunctionInfo const KFunctions[] =
-        {  
-        // Copy this line for every implemented function.
-        // First string is the function name used in TestScripter script file.
-        // Second is the actual implementation member function. 
-      
-        // test cases for the header "NewFileServiceClient.h"
-        ENTRY( "CNewFileServiceClientCreate", CUI_NewFileServiceTest::CNewFileServiceClientCreate ),
-        ENTRY( "NewFileL", CUI_NewFileServiceTest::NewFileL ),
-        ENTRY( "NewFileByUid", CUI_NewFileServiceTest::NewFileByUid ),
-        ENTRY( "NewFileByRFile", CUI_NewFileServiceTest::NewFileByRFile ),
-        ENTRY( "NewFileByRFileAndUid", CUI_NewFileServiceTest::NewFileByRFileAndUid ),
-        // test cases for the header "CNewFileServiceBase.h"
-     
-        ENTRY( "CreateCDummyNewFileServiceBase", CUI_NewFileServiceTest::CreateCDummyNewFileServiceBase ),
-        ENTRY( "DestroyCDummyNewFileServiceBase", CUI_NewFileServiceTest::DestroyCDummyNewFileServiceBase ),
-        ENTRY( "CDummyNewFileServiceBaseGetErrorCode", CUI_NewFileServiceTest::CDummyNewFileServiceBaseGetErrorCode ),
-        ENTRY( "CDummyNewFileServiceBaseSetErrorCode", CUI_NewFileServiceTest::CDummyNewFileServiceBaseSetErrorCode ),
-        ENTRY( "CDummyNewFileServiceBaseServiceL", CUI_NewFileServiceTest::CDummyNewFileServiceBaseServiceL ),
-        ENTRY( "CDummyNewFileServiceBaseHandleCompletedNewServiceL", CUI_NewFileServiceTest::CDummyNewFileServiceBaseHandleCompletedNewServiceL ),
-        ENTRY( "CDummyNewFileServiceBaseGenericParams", CUI_NewFileServiceTest::CDummyNewFileServiceBaseGenericParams )
-  
-        //ADD NEW ENTRY HERE
-        // [test cases entries] - Do not remove
-        };
-
-    const TInt count = sizeof( KFunctions ) / 
-                        sizeof( TStifFunctionInfo );
-
-    return RunInternalL( KFunctions, count, aItem );
-
-    }
-
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CNewFileServiceClientCreate
-// NewClientL
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CUI_NewFileServiceTest::CNewFileServiceClientCreate( CStifItemParser& /*aItem*/ )
-    {
-    TInt err = KErrNone;
-    iLog->Log(_L("CUI_NewFileServiceTest::CNewFileServiceClientCreate begin:"));
-    
-    TRAP(err,iNewFileServiceClient=NewFileServiceFactory::NewClientL());
-   
-    iLog->Log(_L("CUI_NewFileServiceTest::CNewFileServiceClientCreate returned: %d"), err);
-    return err;
-
-    }
-	
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::NewFileL
-// ?implementation_description
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::NewFileL( CStifItemParser& aItem )
-    {
-    TInt err = KErrNone;
-    TPtrC string;
-    iLog->Log(_L("CUI_NewFileServiceTest::NewFileL begin:"));
-    
-    CDesCArray* files = new (ELeave)CDesCArrayFlat(1);
-    
-    CleanupStack::PushL(files);
-    CAiwGenericParamList* iCAiwGenericParamList=CAiwGenericParamList::NewL();
-    
-   
-    while ( aItem.GetNextString( string ) == KErrNone )
-    	{
-		TBuf<120> KFrom;
-		KFrom.Append(KNewFileServiceTestDataPath);
-		KFrom.Append(string);
-	    files->AppendL(KFrom);
-	    iNewFileServiceClient=NewFileServiceFactory::NewClientL();
-	    
-	    TRAP(err,iNewFileServiceClient->NewFileL(*files,iCAiwGenericParamList,ENewFileServiceAudio,ETrue));
-	    
-	    
-    	}
-    CleanupStack::PopAndDestroy(files);
- 
-    iLog->Log(_L("CUI_NewFileServiceTest::NewFileL returned: %d"), err);
-    return err;
-
-    }
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::NewFileByUid
-// ?implementation_description
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::NewFileByUid( CStifItemParser& aItem )
-    {
-    TInt err = KErrNone;
-    TPtrC string;
-    iLog->Log(_L("CUI_NewFileServiceTest::NewFileByUid begin:"));
-    TUid uid = TUid::Uid(0x100058CA);//0x101F87A3 0x101F87A4  0x100058CA 
-    CDesCArray* files = new (ELeave)CDesCArrayFlat(1);
-    CleanupStack::PushL(files);
-    CAiwGenericParamList* iCAiwGenericParamList=CAiwGenericParamList::NewL();
-    
-   
-    while ( aItem.GetNextString( string ) == KErrNone )
-    	{
-		TBuf<120> KFrom;
-		KFrom.Append(KNewFileServiceTestDataPath);
-		KFrom.Append(string);
-	    files->AppendL(KFrom);
-	    iNewFileServiceClient=NewFileServiceFactory::NewClientL();
-	    
-	    TRAP(err,iNewFileServiceClient->NewFileL(uid,*files,iCAiwGenericParamList,ENewFileServiceAudio,ETrue));
-	    
-    
-    	}
-    CleanupStack::PopAndDestroy(files);
- 
-    iLog->Log(_L("CUI_NewFileServiceTest::NewFileByUid returned: %d"), err);
-    return err;
-
-    }
-
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::NewFileByRFile
-// ?implementation_description
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::NewFileByRFile( CStifItemParser& aItem )
-    {
-    TInt err = KErrNone;
-    TPtrC string;
-    iLog->Log(_L("CUI_NewFileServiceTest::NewFileByRFile begin:"));
-    
-    CAiwGenericParamList* iCAiwGenericParamList=CAiwGenericParamList::NewL();
-      
-    while ( aItem.GetNextString( string ) == KErrNone )
-    	{
-		TBuf<120> KFrom;
-		KFrom.Append(KNewFileServiceTestDataPath);
-		KFrom.Append(string);
-	   
-	    RFile file;
-	    RFs fs;
-	    fs.Connect();
-	    file.Open(fs,KFrom,EFileShareAny|EFileWrite);
-	    iNewFileServiceClient=NewFileServiceFactory::NewClientL();
-	    
-	    TRAP(err,iNewFileServiceClient->NewFileL(file,iCAiwGenericParamList,ENewFileServiceAudio));
-	    file.Close();
-	    fs.Close();
-    
-    	}
-    
-    iLog->Log(_L("CUI_NewFileServiceTest::NewFileByRFile returned: %d"), err);
-     return err;
-
-    }
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::NewFileByRFileAndUid
-// ?implementation_description
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::NewFileByRFileAndUid( CStifItemParser& aItem )
-    {
-    TInt err = KErrNone;
-    TPtrC string;
-    iLog->Log(_L("CUI_NewFileServiceTest::NewFileByRFileAndUid begin:"));
-    TUid uid = TUid::Uid(0x100058CA); 
-  
-    CAiwGenericParamList* iCAiwGenericParamList=CAiwGenericParamList::NewL();
-    
-   
-    while ( aItem.GetNextString( string ) == KErrNone )
-    	{
-		TBuf<120> KFrom;
-		KFrom.Append(KNewFileServiceTestDataPath);
-		KFrom.Append(string);
-	   
-	    RFile file;
-	    RFs fs;
-	    fs.Connect();
-	    file.Open(fs,KFrom,EFileShareAny|EFileWrite);
-	    iNewFileServiceClient=NewFileServiceFactory::NewClientL();
-	    
-	    TRAP(err,iNewFileServiceClient->NewFileL(uid,file,iCAiwGenericParamList,ENewFileServiceAudio));
-	    file.Close();
-	    fs.Close();
-    
-    	}
-  
- 
-     iLog->Log(_L("CUI_NewFileServiceTest::NewFileByRFileAndUid returned: %d"), err);
-     return err;
-
-    }
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CreateCDummyNewFileServiceBase
-// Create CDummyNewFileServiceBase
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::CreateCDummyNewFileServiceBase( CStifItemParser& /*aItem*/ )
-    {
-    TInt err = KErrNone;
-    iLog->Log(_L("CUI_NewFileServiceTest::CreateCDummyNewFileServiceBase begin:"));
-    
-	iDummyNewFileServiceBase = new (ELeave)CDummyNewFileServiceBase();
-    
-	if ( iDummyNewFileServiceBase == NULL )
-		
-    	{
-    	  err = KErrNotFound;
-    	  iLog->Log(_L("CUI_NewFileServiceTest::CreateCDummyNewFileServiceBase returned: %d"), err);
-    	}
-	
-    return err;
-    
-    }
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::DestroyCDummyNewFileServiceBase
-// Destroy CDummyNewFileServiceBase
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::DestroyCDummyNewFileServiceBase( CStifItemParser& /*aItem*/ )
-    {
-    TInt err = KErrNone;
-    iLog->Log(_L("CUI_NewFileServiceTest::DestroyCDummyNewFileServiceBase begin:"));
-    if ( iDummyNewFileServiceBase != NULL )
-    	{
-	    delete iDummyNewFileServiceBase;
-	    iDummyNewFileServiceBase = NULL;
-    	}
-    iLog->Log(_L("CUI_NewFileServiceTest::DestroyCDummyNewFileServiceBase returned: %d"), err);
-    return err;
-    }
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CDummyNewFileServiceBaseGetErrorCode
-// CDummyNewFileServiceBase GetErrorCode
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::CDummyNewFileServiceBaseGetErrorCode( CStifItemParser& /*aItem*/ )
-    {
-    TInt err = KErrNone;
-    TInt errcode = 0;
-    iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseGetErrorCode begin:"));
-    
-	errcode = iDummyNewFileServiceBase->GetErrorCode();
-	if ( errcode > 0 )
-    	{
-    	  err = KErrNotFound;
-    	  iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseGetErrorCode returned: %d"), err);
-    	}
-	
-    return err;
-    }
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CDummyNewFileServiceBaseSetErrorCode
-// CDummyNewFileServiceBase SetErrorCode 
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-TInt CUI_NewFileServiceTest::CDummyNewFileServiceBaseSetErrorCode( CStifItemParser& aItem )
-    {
-    TInt err = KErrNone;
-    TInt errcode;
-    TInt compare;
-    iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseSetErrorCode begin:"));
-	 while ( aItem.GetNextInt(errcode) == KErrNone )
-	        {
-	        iDummyNewFileServiceBase->SetErrorCode(errcode);
-	        }
-	 
-	 compare = iDummyNewFileServiceBase->GetErrorCode();
-	 
-	if ( compare != errcode )
-		{
-		err = KErrNotFound;
-		iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseSetErrorCode returned: %d"), err);
-		}
-	
-    return err;
-    }
-
- 
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CDummyNewFileServiceBaseServiceL
-// CDummyNewFileServiceBase ServiceL
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::CDummyNewFileServiceBaseServiceL( CStifItemParser& /*aItem*/ )
-    {
-	    TInt err = KErrNone;
-	    iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseServiceL begin:"));
-//	    RMessage2* msg = new(ELeave)RMessage2();
-//		HBufC* buf = HBufC::NewLC(100);
-//		 buf->Des().Append(_L("aa"));
-//	    TPtr ptr = buf->Des();
-//	    ptr.Copy(_L("aa"));
-//	    message->ReadL(0,ptr);
-	    RMessage2* msg = new(ELeave)RMessage2();
-	    HBufC* msg1 = HBufC::New( 20 );
-	    TUint16 msgContent = ENewServiceIndexFileName; //(TUint8)3;
-	    msg1->Des().Copy( &msgContent );
-	    TPtr msgPtr1 = msg1->Des();
-	    msg->ReadL( msgContent,msgPtr1 );
-	    
-		iDummyNewFileServiceBase->ServiceLtest(*msg);
-		CleanupStack::PopAndDestroy();   // msg1
-		//delete 	message;
-		//delete buf;
-	    iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseServiceL returned: %d"), err);
-    	
-	
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CDummyNewFileServiceBaseHandleCompletedNewServiceL
-// CDummyNewFileServiceBase HandleCompletedNewServiceL
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::CDummyNewFileServiceBaseHandleCompletedNewServiceL( CStifItemParser& /*aItem*/ )
-    {
-     TInt err = KErrNone;
-	 TBool tbool = ETrue;
-	 iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseHandleCompletedNewServiceL begin:"));
-	
-	 iDummyNewFileServiceBase->HandleCompletedNewServiceLtest(tbool);
-	
-	 iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseHandleCompletedNewServiceL returned: %d"), err);
-    	
-     return err;
-    }
-
-// -----------------------------------------------------------------------------
-// CUI_NewFileServiceTest::CDummyNewFileServiceBaseGenericParams
-// CDummyNewFileServiceBase GenericParams
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-
-TInt CUI_NewFileServiceTest::CDummyNewFileServiceBaseGenericParams( CStifItemParser& /*aItem*/ )
-    {
-    TInt err = KErrNone;
-    iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseGenericParams begin:"));
-    
-    iDummyNewFileServiceBase->GenericParamstest();
-	 
-    iLog->Log(_L("CUI_NewFileServiceTest::CDummyNewFileServiceBaseGenericParams  returned: %d"), err);
-	
-    return err;
-    }
--- a/voicerec_plat/new_file_service_api/tsrc/conf/UI_NewFileServiceTest.cfg	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-[Test]
-title 1: CNewFileServiceClientCreate
-create UI_NewFileServiceTest client
-client CNewFileServiceClientCreate
-delete client
-[Endtest] 
-
-[Test]
-title 2: CreateCDummyNewFileServiceBase
-create UI_NewFileServiceTest client
-client CreateCDummyNewFileServiceBase
-client DestroyCDummyNewFileServiceBase
-delete client
-[Endtest] 
-
-[Test]
-title 3: DestroyCDummyNewFileServiceBase
-create UI_NewFileServiceTest client
-client CreateCDummyNewFileServiceBase
-client DestroyCDummyNewFileServiceBase
-delete client
-[Endtest] 
-
-[Test]
-title 4: CDummyNewFileServiceBaseGetErrorCode
-create UI_NewFileServiceTest client
-client CreateCDummyNewFileServiceBase
-client CDummyNewFileServiceBaseSetErrorCode -12
-client CDummyNewFileServiceBaseGetErrorCode
-client DestroyCDummyNewFileServiceBase
-delete client
-[Endtest] 
-
-[Test]
-title 5: CDummyNewFileServiceBaseSetErrorCode
-create UI_NewFileServiceTest client
-client CreateCDummyNewFileServiceBase
-client CDummyNewFileServiceBaseSetErrorCode -12
-client DestroyCDummyNewFileServiceBase
-delete client
-[Endtest]
-
-
-[Test]
-title 6: CDummyNewFileServiceBaseHandleCompletedNewServiceL
-create UI_NewFileServiceTest client
-client CreateCDummyNewFileServiceBase
-client CDummyNewFileServiceBaseHandleCompletedNewServiceL
-client DestroyCDummyNewFileServiceBase
-delete client
-[Endtest]
-
-[Test]
-title 7: CDummyNewFileServiceBaseGenericParams
-create UI_NewFileServiceTest client
-client CreateCDummyNewFileServiceBase
-client CDummyNewFileServiceBaseGenericParams
-client DestroyCDummyNewFileServiceBase
-delete client
-[Endtest]
-
-[Test]
-title 8: CDummyNewFileServiceBaseServiceL
-create UI_NewFileServiceTest client
-client CreateCDummyNewFileServiceBase
-client CDummyNewFileServiceBaseServiceL
-pause 1000
-client DestroyCDummyNewFileServiceBase
-delete client
-[Endtest]
--- a/voicerec_plat/new_file_service_api/tsrc/conf/tcNewFileServiceTest.cfg	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-[Test]
-title 1: CNewFileServiceClientCreate
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 1
-[Endtest] 
-
-[Test]
-title 2: CreateCDummyNewFileServiceBase
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 2
-[Endtest] 
-
-[Test]
-title 3: DestroyCDummyNewFileServiceBase
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 3
-[Endtest] 
-
-[Test]
-title 4: CDummyNewFileServiceBaseGetErrorCode
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 4
-[Endtest] 
-
-[Test]
-title 5: CDummyNewFileServiceBaseSetErrorCode
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 5
-[Endtest]
-
-
-[Test]
-title 6: CDummyNewFileServiceBaseHandleCompletedNewServiceL
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 6
-[Endtest]
-
-[Test]
-title 7: CDummyNewFileServiceBaseGenericParams
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 7
-[Endtest]
-
-[Test]
-title 8: CDummyNewFileServiceBaseServiceL
-run testscripter c:\testframework\UI_NewFileServiceTest.cfg 8
-[Endtest]
--- a/voicerec_plat/new_file_service_api/tsrc/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +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:     Build information file for project UI_NewFileServiceTest
-*
-*/
-
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_EXPORTS
-
-PRJ_TESTEXPORTS
-// Test sound file
-
-
-PRJ_MMPFILES
-
-PRJ_TESTMMPFILES
-#include "../UI_NewFileServiceTest/group/bld.inf"
-
-//  End of File  
--- a/voicerec_plat/new_file_service_api/tsrc/init/TestFramework.ini	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,197 +0,0 @@
-#
-# This is STIF initialization file
-# Comment lines start with '#'-character.
-# See STIF TestFramework users guide.doc for instructions
-
-# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-# Set following test engine settings:
-#	- Set Test Reporting mode. TestReportMode's possible values are:
-#		+ 'Summary': Summary of the tested test cases.
-#		+ 'Environment': Hardware and software info.
-#		+ 'TestCases': Test case report.
-#		+ 'FullReport': Set of all above ones.
-#		+ Example 'TestReportMode= Summary TestCases'
-#
-# 	- CreateTestReport setting controls report creation mode
-#		+ YES, Test report will created.
-#		+ NO, No Test report.
-#
-# 	- File path indicates the base path of the test report.
-# 	- File name indicates the name of the test report.
-#
-# 	- File format indicates the type of the test report.
-#		+ TXT, Test report file will be txt type, for example 'TestReport.txt'.
-#		+ HTML, Test report will be html type, for example 'TestReport.html'.
-#
-# 	- File output indicates output source of the test report.
-#		+ FILE, Test report logging to file.
-#		+ RDEBUG, Test report logging to using rdebug.
-#
-# 	- File Creation Mode indicates test report overwriting if file exist.
-#		+ OVERWRITE, Overwrites if the Test report file exist.
-#		+ APPEND, Continue logging after the old Test report information if
-#                 report exist.
-# 	- Sets a device reset module's dll name(Reboot).
-#		+ If Nokia specific reset module is not available or it is not correct one
-#		  StifHWResetStub module may use as a template for user specific reset
-#		  module.
-# 	- Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation
-#		DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02
-#
-
-[Engine_Defaults]
-
-TestReportMode= FullReport		# Possible values are: 'Empty', 'Summary', 'Environment',
-                                                               'TestCases' or 'FullReport'
-
-CreateTestReport= YES			# Possible values: YES or NO
-
-TestReportFilePath= C:\LOGS\TestFramework\
-TestReportFileName= TestReport_UI_NewFileServiceTest
-
-TestReportFormat= TXT			# Possible values: TXT or HTML
-TestReportOutput= FILE			# Possible values: FILE or RDEBUG
-TestReportFileCreationMode= OVERWRITE	# Possible values: OVERWRITE or APPEND
-
-DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting
-
-DisableMeasurement= stifmeasurementdisablenone	# Possible values are:
-						# 'stifmeasurementdisablenone', 'stifmeasurementdisableall'
-					  	# 'stifmeasurementplugin01', 'stifmeasurementplugin02',
-					  	# 'stifmeasurementplugin03', 'stifmeasurementplugin04',
-					  	# 'stifmeasurementplugin05' or 'stifbappeaprofiler'
-
-Timeout= 0                              # Default timeout value for each test case. In milliseconds
-UITestingSupport= YES
-[End_Defaults]
-# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-
-
-
-# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-# Module configurations start
-# Modules are added between module tags
-# tags. Module name is specified after ModuleName= tag, like
-# ModuleName= XXXXXXXXX
-# Modules might have initialisation file, specified as
-# IniFile= c:\testframework\YYYYYY
-# Modules might have several configuration files, like
-# TestCaseFile= c:\testframework\NormalCases.txt
-# TestCaseFile= c:\testframework\SmokeCases.txt
-# TestCaseFile= c:\testframework\ManualCases.txt
-
-# (TestCaseFile is synonym for old term ConfigFile)
-
-# Following case specifies demo module settings. Demo module
-# does not read any settings from file, so tags 
-# IniFile and TestCaseFile are not used.
-# In the simplest case it is enough to specify only the
-# name of the test module when adding new test module
-
-[New_Module]
-ModuleName= testcombiner
-TestCaseFile= c:\testframework\tcNewFileServiceTest.cfg
-[End_Module]
-
-
-# Load testmoduleXXX, optionally with initialization file and/or test case files
-#[New_Module]
-#ModuleName= testmodulexxx
-
-#TestModuleXXX used initialization file
-#IniFile= c:\testframework\init.txt
-
-#TestModuleXXX used configuration file(s)
-#TestCaseFile= c:\testframework\testcases1.cfg
-#TestCaseFile= c:\testframework\testcases2.cfg
-#TestCaseFile= c:\testframework\manualtestcases.cfg
-
-#[End_Module]
-# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-
-
-
-# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-# Set STIF logging overwrite parameters for Logger.
-# 	Hardware and emulator environment logging path and styles can
-# 	be configured from here to overwrite the Logger's implemented values.
-#	
-#	Settings description:
-#	- Indicates option for creation log directory/directories. If log directory/directories
-#         is/are not created by user they will make by software.
-#		+ YES, Create log directory/directories if not allready exist.
-#		+ NO, Log directory/directories not created. Only created one is used.
-#
-#	- Overwrite emulator path setting.
-#		+ Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined 
-#		           Logger's path 'D:\\LOGS\\Module\\' with those definition the path
-#		           will be 'C:\LOGS\TestFramework\LOGS\Module\'
-#
-#	- Overwrite emulator's logging format.
-#		+ TXT, Log file(s) will be txt type(s), for example 'Module.txt'.
-#		+ HTML, Log file(s) will be html type(s), for example 'Module.html'.
-#
-#	- Overwrited emulator logging output source.
-#		+ FILE, Logging to file(s).
-#		+ RDEBUG, Logging to using rdebug(s).
-#
-#	- Overwrite hardware path setting (Same description as above in emulator path).
-#	- Overwrite hardware's logging format(Same description as above in emulator format).
-#	- Overwrite hardware's logging output source(Same description as above in emulator output).
-#
-#	- File Creation Mode indicates file overwriting if file exist.
-#		+ OVERWRITE, Overwrites if file(s) exist.
-#		+ APPEND, Continue logging after the old logging information if file(s) exist.
-#
-#	- Will thread id include to the log filename.
-#		+ YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'.
-#		+ NO, No thread id to log file(s), Example filename 'Module.txt'.
-#
-#	- Will time stamps include the to log file.
-#		+ YES, Time stamp added to each line in log file(s). Time stamp is 
-#                 for example'12.Nov.2003 115958    LOGGING INFO'
-#		+ NO, No time stamp(s).
-#
-#	- Will line breaks include to the log file.
-#		+ YES, Each logging event includes line break and next log event is in own line.
-#		+ NO, No line break(s).
-#
-#	- Will event ranking include to the log file.
-#		+ YES, Event ranking number added to each line in log file(s). Ranking number
-#                 depends on environment's tics, for example(includes time stamp also)
-#                 '012   12.Nov.2003 115958    LOGGING INFO'
-#		+ NO, No event ranking.
-#
-#	- Will write log file in unicode format.
-#		+ YES, Log file will be written in unicode format
-#		+ NO, Log will be written as normal, not unicode, file.
-#
-
-[Logger_Defaults]
-
-#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#'
-#NOTE: TestEngine and TestServer logging settings cannot change here
-
-#CreateLogDirectories= YES    # Possible values: YES or NO
-
-#EmulatorBasePath= C:\LOGS\TestFramework\
-#EmulatorFormat= HTML         # Possible values: TXT or HTML
-#EmulatorOutput= FILE         # Possible values: FILE or RDEBUG
-
-#HardwareBasePath= D:\LOGS\TestFramework\
-#HardwareFormat= HTML         # Possible values: TXT or HTML
-#HardwareOutput= FILE         # Possible values: FILE or RDEBUG
-
-#FileCreationMode= OVERWRITE  # Possible values: OVERWRITE or APPEND
-
-#ThreadIdToLogFile= YES       # Possible values: YES or NO
-#WithTimeStamp= YES           # Possible values: YES or NO
-#WithLineBreak= YES           # Possible values: YES or NO
-#WithEventRanking= YES        # Possible values: YES or NO
-
-#FileUnicode= YES             # Possible values: YES or NO
-#AddTestCaseTitle= YES        # Possible values: YES or NO
-[End_Logger_Defaults]
-# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-
-# End of file
--- a/voicerec_plat/voicerecorder_public_constants_api/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +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:  File that exports the files belonging to 
-:                VoiceRecorder Public Constants API
-*
-*/
-
-
-#include <platform_paths.hrh>
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_EXPORTS
-
-../inc/VoiceRecorderUID.h     APP_LAYER_PLATFORM_EXPORT_PATH(VoiceRecorderUID.h)
-../inc/VoiceRecorderContexts.h     APP_LAYER_PLATFORM_EXPORT_PATH(VoiceRecorderContexts.h)
--- a/voicerec_plat/voicerecorder_public_constants_api/inc/VoiceRecorderContexts.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     Defines commands and control identifiers.
-*     The file can be included in C++ or resource file.
-*
-*/
-
-
-#ifndef __VOICERECORDERCONTEXTS_H_
-#define __VOICERECORDERCONTEXTS_H_
-
-// Recorder View context IDs
-enum TVRRecViewContexts
-	{
-	EContextNormal = 0,
-	EContextEmptyNormal,
-	EContextRecordNewNormal,
-	EContextRecordNewForRemote,
-	EContextViewer,
-	EContextNokiaRingTone,
-	ENumContexts	// this must be the last line
-	};
-
-#endif // __VOICERECORDERCONTEXTS_H_
-
--- a/voicerec_plat/voicerecorder_public_constants_api/inc/VoiceRecorderUID.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-/*
-* Copyright (c) 2002 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 the UIDs for Voice Recorder application modules and views
-*
-*/
-
-
-#ifndef __VOICERECORDERUID_H__
-#define __VOICERECORDERUID_H__
-
-// CONSTANTS
-#define KVoiceRecorderAppUID3 0x100058CA
-#define KEPOCAppUID2 0x100039ce		// Symbian defined
-#define KEPOCDLLUID2 0x1000008d		// Symbian defined
-
-// View UIDs
-#define KVRRecorderViewUID 1
-
-#endif // __VOICERECORDERUID_H__
--- a/voicerec_plat/voicerecorder_public_constants_api/voicerecorder_public_constants_api.metaxml	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-<?xml version="1.0" ?>
-<api id="204b6973385e929760f05fa66812f2ce" dataversion="2.0">
-  <name>VoiceRecorder Public Constants API</name>
-  <description>VoiceRecorder Public Constants API</description>
-  <type>c++</type>
-  <collection>voicerecorder</collection>
-  <libs>
-  </libs>
-  <release category="platform"/>
-  <attributes>
-     <!-- This indicates wether the api provedes separate html documentation -->
-     <!-- or is the additional documentation generated from headers. -->
-     <!-- If you are unsuere then the value is "no" -->
-     <htmldocprovided>no</htmldocprovided>
-     <adaptation>no</adaptation>
-  </attributes>
-</api>
--- a/voicerecorder/Aif/VoiceRecorderAif.rss	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     Application Information resource file for Voice Recorder
-*
-*
-*/
-
-
-#include <aiftool.rh>
-#include <bldvariant.hrh>
-
-RESOURCE AIF_DATA
-    {
-    app_uid       = 0x100058CA;
-    num_icons     = 2;
-    hidden        = KAppNotHidden;
-    embeddability = KAppEmbeddable;
-    }
--- a/voicerecorder/AppSrc/CVRAppServer.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is part of new file service framework.
-*
-*/
-
-
-#include	<NewFileService.hrh>
-#include    <NewFileServiceDefs.h>
-#include	"CVRNewFileService.h"
-#include	"CVRAppServer.h"
-
-CApaAppServiceBase* CVRAppServer::CreateServiceL( TUid aServiceType ) const
-	{
-	if ( aServiceType == TUid::Uid( NEWSERVICEUID ) )
-		{
-		CVRNewFileService* service = CVRNewFileService::NewL();
-		iNewFileServiceObserver = service;
-		return service;
-		}
-	else
-		{
-		return CAknAppServer::CreateServiceL(aServiceType);
-		}
-	}
-
-MNewFileServiceObserver* CVRAppServer::NewFileServiceObserver() const
-	{
-	return iNewFileServiceObserver;
-	}
-
-// End of File
--- a/voicerecorder/AppSrc/CVRAppServer.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is part of application framework.
-*
-*/
-
-
-#ifndef __CVRAPPSERVER_H__
-#define __CVRAPPSERVER_H__
-
-// INCLUDES
-#include <AknServerApp.h>
-#include <CNewFileServiceBase.h>
-
-// CONSTANTS
-
-// CLASS DECLARATION
-/**
-* This class is part of new file service framework.
-*/
-class CVRAppServer
-	: public CAknAppServer
-	{
-
-	public: // from CAknAppServer
-		CApaAppServiceBase* CreateServiceL( TUid aServiceType ) const;
-		
-	public:
-		MNewFileServiceObserver* NewFileServiceObserver() const;
-
-	private:
-		mutable MNewFileServiceObserver* iNewFileServiceObserver;
-	};
-
-#endif // __CVNEWFILESERVICE_H__
-
--- a/voicerecorder/AppSrc/CVRAppUI.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,436 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
- *     This class is a part of the standard application framework.
- *     It instantiates the application views.
- *     It also acts as the default command handler for the application.
- *
-*/
-
-
-
-#include <ErrorUI.h>
-#include <coeutils.h>
-
-#include <AknDef.h> // For layout change event definitions
-
-#include "CVRRecView.h"
-#include "MVRSelectionProvider.h"
-#include "CVRAppUi.h"
-#include <sysutil.h>
-#include <StringLoader.h>
-#include "CVRDocument.h"
-#include <featmgr.h>
-#include "VRConsts.h"
-
-#include <VoiceRecorderUID.h>
-#include <voicerecorder.rsg>
-#include "voicerecorder.hrh"
-#include "VRUtils.h"
-#include "CVRSettingsDialog.h"
-#include <hlplch.h>
-#include <AknsConstants.h>
-#include <aknnotewrappers.h>
-#include <csxhelp/vorec.hlp.hrh>
-#include <aknradiobuttonsettingpage.h>
-#include <CNewFileServiceBase.h>
-#include <e32property.h> 
-#include <UsbWatcherInternalPSKeys.h>
-#include <usbpersonalityids.h>
-#ifdef RD_MULTIPLE_DRIVE
-#include <driveinfo.h>
-#endif
-#include <AknWaitDialog.h>
-_LIT( KVRCommandRecord, "record" );
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::CVRAppUi
-// 
-// ---------------------------------------------------------------------------
-//
-CVRAppUi::CVRAppUi()
-	{
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::~CVRAppUi
-// 
-// ---------------------------------------------------------------------------
-//
-CVRAppUi::~CVRAppUi()
-    {
-    if (iActiveWait.IsStarted())
-        {
-        iActiveWait.AsyncStop();
-        }
-
-    if (iDoorObserver)
-        {
-        iDoorObserver->NotifyExit(MApaEmbeddedDocObserver::EEmpty);
-        }
-
-	delete iErrorUI;
-	FeatureManager::UnInitializeLib();
-	}
-
-// ---------------------------------------------------------------------------
-//CVRAppUi::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRAppUi::ConstructL()
-    {
-    BaseConstructL( EAknEnableSkin | EAknEnableMSK 
-#ifdef SINGLE_CLICK_INCLUDED
-    | EAknSingleClickCompatible
-#endif
-	);
-
-	iErrorUI = CErrorUI::NewL();
-
-	// Exit if video or voip call is ongoing
-	if ( VRUtils::UnsupportedCallTypeOngoing( ETrue ) )
-		{
-		Exit();
-		}
-
-	FeatureManager::InitializeLibL();
-
-	if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-		{
-
-#ifndef RD_MULTIPLE_DRIVE
-		TVRDriveInfo mmcInfo;
-		VRUtils::GetMMCInfo( mmcInfo );
-		TVRMemoStore memoStore = VRUtils::MemoStoreL();
-
-		if ( memoStore == EMemoStoreMMC )
-			{
-            // check if USB is connected, if so, then need to switch to phone memory
-            if (CVRUSBStateHanlder::IsUsbActive())
-                {
-                HBufC* noteText = iCoeEnv->AllocReadResourceLC(
-                        R_QTN_MEMC_VOREC_NOTE1 );
-                CAknInformationNote* infoNote =
-                new( ELeave ) CAknInformationNote( ETrue );
-                infoNote->ExecuteLD( *noteText );
-                CleanupStack::PopAndDestroy( noteText );
-                VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-                }
-
-			// MMC not available or locked
-			else if ( memoStore && ( mmcInfo.iDriveLocked || !mmcInfo.iDrivePresent ) )
-				{
-				HBufC* noteText = iCoeEnv->AllocReadResourceLC(
-														 R_QTN_MEMC_VOREC_NOTE1 );
-				CAknInformationNote* infoNote =
-									   new( ELeave ) CAknInformationNote( ETrue );
-				infoNote->ExecuteLD( *noteText );
-				CleanupStack::PopAndDestroy( noteText );
-				VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-				}
-			else if ( mmcInfo.iDriveReadOnly )
-				{
-				HBufC* noteText = iCoeEnv->AllocReadResourceLC(
-														 R_QTN_MEMC_VOREC_NOTE2 );
-				CAknInformationNote* infoNote =
-									   new( ELeave ) CAknInformationNote( ETrue );
-				infoNote->ExecuteLD( *noteText );
-				CleanupStack::PopAndDestroy( noteText );				
-				VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-				}
-			else if ( mmcInfo.iDriveCorrupted )
-				{
-				// MMC corrupted -> use phone memory
-				VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-				}
-			
-			}
-// for multiple drives
-#else
-
-
-#endif
-		}
-
-    CVRRecView* view = CVRRecView::NewLC(R_VR_RECORDER_VIEW,
-            R_VR_RECVIEW_STATES);
-
-	AddViewL( view );
-	iLayoutChangeObserver = view;
-	CleanupStack::Pop( view );
-
-	SetDefaultViewL( *view );
-
-    // Activate view straight away, if started through new file service	
-    if (iEikonEnv->StartedAsServerApp())
-        {
-        ActivateLocalViewL(TUid::Uid(KVRRecorderViewUID), TUid::Uid(
-                EContextRecordNewForRemote), KNullDesC8);
-        }
-
-	}
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::HandleCommandL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRAppUi::HandleCommandL( TInt aCommand )
-    {
-	switch ( aCommand )
-        {
-		case EAknSoftkeyExit:	// Fall through
-			{
-			if ( iView )
-				{
-				iView->HandleCommandL( ECmdCancelNote );				
-				}
-            Exit();
-			break;
-			}
-        case EEikCmdExit:
-		   	{
-			if ( iView )
-				{
-				iView->HandleCommandL( ECmdCancelNote );				
-				}
-
-            // The file service needs to abort if it's still going on
-            if (iEmbeddedObserver)
-                {
-                CNewFileServiceBase * iNewFileService = NULL;
-                iNewFileService
-                        = dynamic_cast<CNewFileServiceBase*> (iEmbeddedObserver);
-                if (iNewFileService != NULL)
-                    {
-                    iNewFileService->SetErrorCode(KErrAbort);
-                    }
-                iEmbeddedObserver->AbortL();
-                }
-
-            Exit();
-			break;
-            }
-		case EAknCmdExit:
-			{
-			if ( iView )
-				{
-				iView->HandleCommandL( ECmdCancelNote );				
-				}
-
-            // The file service needs to abort if it's still going on
-            if (iEmbeddedObserver)
-                {
-                CNewFileServiceBase * iNewFileService = NULL;
-                iNewFileService
-                        = dynamic_cast<CNewFileServiceBase*> (iEmbeddedObserver);
-                if (iNewFileService != NULL)
-                    {
-                    iNewFileService->SetErrorCode(KErrAbort);
-                    }
-                iEmbeddedObserver->AbortL();
-                }
-
-            Exit();
-            break;
-            }
-        case ECmdHelp:
-            {
-            if (FeatureManager::FeatureSupported(KFeatureIdHelp))
-                {
-                if (iIsSettingsOpen)
-                    {
-                    CArrayFix<TCoeHelpContext>* contexts = AppHelpContextL();
-                    contexts->At(0).iContext = KVOREC_HLP_SETTINGS;
-                    HlpLauncher::LaunchHelpApplicationL(
-                            iEikonEnv->WsSession(), contexts);
-                    }
-                else
-                    {
-                    HlpLauncher::LaunchHelpApplicationL(
-                            iEikonEnv->WsSession(), AppHelpContextL());
-                    }
-                }
-            break;
-            }
-        case ECmdSettings:
-            {
-            if (FeatureManager::FeatureSupported(KFeatureIdMmc)
-                    || VRUtils::FeatureEnabled(EVRFeatureShowQualitySetting))
-                {
-                iIsSettingsOpen = ETrue;
-                CVRSettingsDialog* settingsDlg = CVRSettingsDialog::NewL();
-                settingsDlg->ExecuteLD(R_VR_SETTINGS_DIALOG);
-                iIsSettingsOpen = EFalse;
-                }
-            break;
-            }
-        case ECmdNewFileServiceNotify:
-            {
-            if (iActiveWait.IsStarted())
-                {
-                iActiveWait.AsyncStop();
-                }
-            break;
-            }
-        case ECmdEmbeddedRecordingReady:
-            {
-            if (iEmbeddedObserver)
-                {
-                TBool canExit(ETrue);
-
-                TVRSelectionStyle selStyle;
-                TPtrC memoFile(SelectionProviderL()-> GetSelectedFilesLC(
-                        selStyle)-> MdcaPoint(0));
-                if (memoFile.Length() > 0)
-                    {
-                    TFileName myFilename(memoFile);
-                    canExit = iEmbeddedObserver->FileCompleteL(myFilename);
-                    }
-
-				// destroy array from GetSelectedFilesLC()
-				CleanupStack::PopAndDestroy();
-
-				if ( canExit )
-					{
-					HandleCommandL( EEikCmdExit );
-					}
-				else
-					{
-					// Wait until file service has completed
-					// transfering filename array back to client
-					if( !iActiveWait.IsStarted() )
-					    {
-					    iActiveWait.Start(); // CSI: 10 #
-					    }
-					}
-   				}
-			break;
-  			}
-       	
-        default:
-			{
-			break;
-			}
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::SelectionProviderL
-// 
-// ---------------------------------------------------------------------------
-//
-MVRSelectionProvider* CVRAppUi::SelectionProviderL()
-	{
-    return reinterpret_cast< CVRRecView* >( iView );
-	}
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::HandleResourceChangeL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRAppUi::HandleResourceChangeL( TInt aType )
-	{
-	CAknViewAppUi::HandleResourceChangeL( aType );
-
-    if (iLayoutChangeObserver != NULL && (aType == KEikDynamicLayoutVariantSwitch || aType
-            == KAknsMessageSkinChange))
-        {
-        iLayoutChangeObserver->LayoutChangedL(aType);
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::RecordNewFileL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRAppUi::RecordNewFileL( RFile& aFile, MVREmbeddedObserver* aObserver )
-	{
-	if ( aObserver )
-		{
-		iEmbeddedObserver = aObserver;
-
-		if ( aFile.SubSessionHandle() != 0)
-			{
-			// Pass file handle to recview
-			SelectionProviderL()->SetFileHandle( aFile );
-			}				
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::ProcessCommandParametersL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRAppUi::ProcessCommandParametersL( TApaCommand /*aCommand*/,
-    TFileName& aDocumentName, const TDesC8& aTail )
-    {
-
-    // Check if we got "-record" as command line parameter
-    // convert 8-bit descriptor to a 16-bit one without altering data.
-    const TUint16* ptr16 = reinterpret_cast<const TUint16*> (aTail.Ptr());
-    TPtrC16 tail(ptr16, aTail.Size() >> 1);
-
-    if (aDocumentName.Compare(KVRCommandRecord) == 0 || tail.Compare(
-            KVRCommandRecord) == 0)
-        {
-        // Enter recording context
-        ActivateLocalViewL(TUid::Uid(KVRRecorderViewUID), TUid::Uid(
-                EContextRecordNewNormal), KNullDesC8);
-        return EFalse;
-        }
-    else // No record parameter, start normally
-        {
-        ActivateLocalViewL(TUid::Uid(KVRRecorderViewUID), TUid::Uid(
-                EContextEmptyNormal), KNullDesC8);
-        }
-        
-	if ( !ConeUtils::FileExists( aDocumentName ) )
-		{
-		aDocumentName.Copy( aTail );
-		}		
-	return ConeUtils::FileExists( aDocumentName );
-    }
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::HandleApplicationSpecificEventL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRAppUi::HandleApplicationSpecificEventL(TInt aType,
-        const TWsEvent& aEvent)
-    {
-    if( aType == EAknSoftkeyExit || aType == KAknShutOrHideApp)
-    	{
-    	Exit();
-    	}
-    	CEikAppUi::HandleApplicationSpecificEventL(aType, aEvent);
-    }
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::SetEmbeddedObserver
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRAppUi::SetEmbeddedObserver( MVREmbeddedObserver* aObserver )
-    {
-    iEmbeddedObserver = aObserver;
-    }
-
-// End of file
--- a/voicerecorder/AppSrc/CVRAppUi.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,153 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is a part of the standard application framework.
-*     It instantiates the application views.
-*     It also acts as the default command handler for the application.
-*
-*/
-
-
-#ifndef __CVRAPPUI_H__
-#define __CVRAPPUI_H__
-
-// INCLUDES
-#include <aknViewAppUi.h>
-#include <apparc.h>			// MApaEmbeddedDocObserver
-
-#include "MVREmbeddedObserver.h"
-#include "VRUSBStateHanlder.h"
-// FORWARD DECLARATIONS
-class MVRSelectionProvider;
-class CErrorUI;
-class MVRLayoutChangeObserver;
-class CAknWaitDialog;
-
-// CLASS DECLARATION
-/**
-* This class is a part of the standard application framework.
-* It instantiates the application views.
-* It also acts as the default command handler for the application.
-*/
-class CVRAppUi
-	: public CAknViewAppUi
-	{
-	public: // Constructors and destructor
-
-		/**
-        * Default constructor.
-        */
-		CVRAppUi();
-
-		/**
-		* Destructor.
-		*/
-		~CVRAppUi();
-
-		/**
-        * 2nd phase constructor.
-        */
-		void ConstructL();
-
-		/**
-		* Receive file handle and observer for recording
-		* for file new service
-		* @param aFile File handle
-		* @param aObserver Observer for handing events back to file service
-		*/
-		void RecordNewFileL( RFile& aFile, MVREmbeddedObserver* aObserver );
-
-		/**
-		* Method for setting observer for file new service
-		* @param aObserver Observer for handing events back to file service
-		*/
-		void SetEmbeddedObserver( MVREmbeddedObserver* aObserver );
-
-	private: // from CEikAppUi
-
-		/**
-		* Takes care of command handling.
-		* @param aCommand Command to be handled
-		*/
-		void HandleCommandL( TInt aCommand );
-
-		/**
-		* Handles a change to the application's resources
-		* @param aType The type of changed resource
-		*/
-		void HandleResourceChangeL( TInt aType );
-
-		/**
-		* CEikAppUi::ProcessCommandParametersL() is overwritten here, because
-		* otherwise it messes with the document name.
-		* @param aCommand The shell command sent to the application
-		* @param aDocumentName The document name that will be given to OpenFileL()
-		* @param aTail The rest of the command line
-		* @return Whether the final document name represents an existing file
-		*/
-		TBool ProcessCommandParametersL( TApaCommand aCommand,
-		    TFileName& aDocumentName, const TDesC8& aTail );
-
-		/**
-		* Handles events from window group  
-		* @param aType The type of event
-		*/
-		
-		void HandleApplicationSpecificEventL(TInt aType, const TWsEvent& aEvent);
-
-	private: // from MVRUSBEventObserver
-		void HandleUSBEventL();
-	
-	private: // new methods
-
-		/**
-		* Provides access to the current view's MVRSelectionProvider
-		* interface.
-		* @return pointer to the active view as MVRSelectionProvider.
-		*/
-		MVRSelectionProvider* SelectionProviderL();
-
-	private: // data
-		/**
-		* CActiveScheduler wrapper object. Owned.
-		*/
-		CActiveSchedulerWait iActiveWait;
-
-		/**
-		* Owned: CErrorUI object used to display notes when errors occur
-		* in embedded activation
-		*/
-		CErrorUI* iErrorUI;
-
-		/**
-		* Pointer to object that observers layout changes and forwards
-		* notification to all UI controls
-		*/
-		MVRLayoutChangeObserver* iLayoutChangeObserver;
-		
-		/**
-		* Pointer to embedded observer which is notified (if not null) when
-		* embedded recording is ready
-		*/
-		MVREmbeddedObserver* iEmbeddedObserver;
-
-		/*
-		* For help context, whether settings page is active.
-		*/
-		TBool iIsSettingsOpen;		
-
-
-	};
-
-#endif // __CVRAPPUI_H__
--- a/voicerecorder/AppSrc/CVRApplication.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is a part of the standard application framework.
-*     The application gets instantiated starting from this class.
-*     Provides a factory method for instantiating the document object.
-*
-*/
-
-
-#include <eikstart.h>
-#include "CVRApplication.h"
-#include "CVRAppServer.h"
-#include "CVRDocument.h"
-
-TUid CVRApplication::AppDllUid() const
-    {
-    return KVRAppUID;
-    }
-
-CApaDocument* CVRApplication::CreateDocumentL()
-    {
-    return CVRDocument::NewL( *this );
-    }
-
-LOCAL_C CApaApplication* NewApplication()
-	{
-	return new CVRApplication;
-	}
-
-void CVRApplication::NewAppServerL( CApaAppServer*& aAppServer )
-	{
-	aAppServer = new( ELeave ) CVRAppServer;
-	}
-
-GLDEF_C TInt E32Main()
-	{
-	return EikStart::RunApplication( NewApplication );
-	}
-
--- a/voicerecorder/AppSrc/CVRApplication.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class is a part of the standard application framework.
-*     The application gets instantiated starting from this class.
-*     Provides a factory method for instantiating the document object.
-*
-*/
-
-
-#ifndef CVRAPPLICATION_H
-#define CVRAPPLICATION_H
-
-// INCLUDES
-#include <aknapp.h>
-#include <VoiceRecorderUID.h>
-
-// CONSTANTS
-const TUid KVRAppUID = { KVoiceRecorderAppUID3 };
-
-// CLASS DECLARATION
-/**
-* This class is a part of the standard application framework.
-* The application gets instantiated starting from this class.
-* Provides a factory method for instantiating the document object.
-*/
-class CVRApplication
-	: public CAknApplication
-	{
-
-	private: // from CApaApplication
-
-		/**
-		* Creates a CVRDocument instance.
-		* @return A pointer to the created document object.
-		*/
-		CApaDocument* CreateDocumentL();
-
-		/**
-		* Returns application's UID value.
-		* @return KVRAppUID.
-		*/
-		TUid AppDllUid() const;
-		
-		/**
-		* Returns a pointer to first-stage constructed server
-		* @ return A pointer to AppServer object
-		*/
-		void NewAppServerL( CApaAppServer*& aAppServer );		
-	};
-
-#endif // CVRAPPLICATION_H
-
--- a/voicerecorder/AppSrc/CVRDocument.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is a part of the standard application framework.
-*     Declares the document class for this application.
-*
-*/
-
-
-#include "CVRDocument.h"
-#include "CVRAppUi.h"
-
-CVRDocument::~CVRDocument()
-    {
-    }
-
-CVRDocument* CVRDocument::NewL( CEikApplication& aApp )
-    {
-    CVRDocument* self = new( ELeave ) CVRDocument( aApp );
-    return self;
-    }
-
-CEikAppUi* CVRDocument::CreateAppUiL()
-    {
-    return new( ELeave ) CVRAppUi;
-    }
--- a/voicerecorder/AppSrc/CVRDocument.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is a part of the standard application framework.
-*     Declares the document class for this application.
-*
-*/
-
-
-#ifndef __CVRDOCUMENT_H__
-#define __CVRDOCUMENT_H__
-
-// INCLUDES
-#include <MediaSharedDocument.h>
-
-// FORWARD DECLARATIONS
-class CEikAppUi;
-
-// CLASS DECLARATION
-/**
-* This class is a part of the standard application framework.
-* Declares the document class for this application.
-*/
-class CVRDocument
-	: public CMediaSharedDocument
-	{
-	public: // Constructors and destructor
-
-		/**
-		* Destructor.
-		*/
-		~CVRDocument();
-
-		/**
-        * Static two-phased constructor.
-		* @param aApp Reference to the application object.
-        */
-		static CVRDocument* NewL( CEikApplication& aApp );
-
-	 private:
-
-		/**
-		* Default constructor. Private, not implemented.
-		*/
-		CVRDocument();
-
-		/**
-        * Constructor. Inlined to save a few bytes.
-		* @param aApp Reference to the application object.
-        */
-		inline CVRDocument( CEikApplication& aApp )
-							: CMediaSharedDocument( aApp ) {}
-
-	private: // from CEikDocument
-
-		/**
-        * Instantiates the application UI class.
-		* @return CCnvAppUi object instance.
-        */
-		CEikAppUi* CreateAppUiL();
-
-	};
-
-#endif // __CVRDOCUMENT_H__
-
--- a/voicerecorder/AppSrc/CVRNewFileService.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,150 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is part of new file service framework.
-*
-*/
-
-
-#include "CVRNewFileService.h"
-#include "CVRAppUi.h"
-#include <f32file.h>
-#include <eikenv.h>
-#include <eikappui.h>
-#include <eikapp.h>
-
-#include "voicerecorder.hrh"
-
-CVRNewFileService* CVRNewFileService::NewL()
-	{
-	return new( ELeave ) CVRNewFileService;
-	}
-
-CVRNewFileService::CVRNewFileService()
-: iCompleted( EFalse ), iFileHandleUsed( EFalse )
-	{
-		
-	}
-
-CVRNewFileService::~CVRNewFileService()
-	{
-	// Make sure that appui wont use this deleted class
-	CVRAppUi* appUi( static_cast<CVRAppUi*> (CEikonEnv::Static()
-	                ->EikAppUi() ) );
-    if ( appUi )
-        {
-        appUi->SetEmbeddedObserver( NULL );
-        }
-          
-	if ( !iCompleted)
-		{
-		if ( iObserver )
-			{
-			// Can't leave in destructor
-			TRAP_IGNORE( iObserver->HandleCompletedNewServiceL( EFalse ) );				
-			iCompleted = ETrue;
-			}
-		}
-	}
-	
-void CVRNewFileService::HandleNewFileL( MNewFileServiceObserver* aObserver,
-							  CDesCArray& aFilenameArray,
-							  TNewServiceFileType aType,
-							  TBool /*aMultipleFiles*/ )
-	{
-	RFile dummyFile;
-
-	iFilenameArray = &aFilenameArray;
-	iObserver = aObserver;
-
-	if ( aType != ENewFileServiceAudio )
-		{
-		iCompleted = ETrue;
-		aObserver->HandleCompletedNewServiceL( EFalse );
-
-		// Send NULL to AppUi as observer, AppUi exits
-
-		( static_cast<CVRAppUi*> (CEikonEnv::Static()->EikAppUi() ) )
-			->RecordNewFileL( dummyFile, NULL );		
-		return;
-		}
-
-	// Send message to AppUi to fully construct application
-	( static_cast<CVRAppUi*> (CEikonEnv::Static()->EikAppUi() ) )
-		->RecordNewFileL( dummyFile, this );
-
-	}
-
-void CVRNewFileService::HandleNewFileL( MNewFileServiceObserver* aObserver,
-							  RFile& aFile,
-							  TNewServiceFileType aType )
-	{
-	iObserver = aObserver;
-
-	if ( aType != ENewFileServiceAudio )
-		{
-		iCompleted = ETrue;
-		aObserver->HandleCompletedNewServiceL( EFalse );
-
-		// Send NULL to AppUi as observer, AppUi exits
-		RFile dummyFile;
-		( static_cast<CVRAppUi*> (CEikonEnv::Static()->EikAppUi() ) )
-			->RecordNewFileL( dummyFile, NULL );		
-		return;
-		}
-
-	iFileHandleUsed = ETrue;
-
-	// Send the file handle to application and finish ui construction
-	( static_cast<CVRAppUi*> (CEikonEnv::Static()->EikAppUi() ) )
-	                        ->RecordNewFileL( aFile, this );
-	}
-
-TBool CVRNewFileService::FileCompleteL( const TDesC& aName )
-	{
-	if ( iFilenameArray )
-		{
-		iFilenameArray->AppendL( aName );
-		}
-
-	iCompleted = ETrue;
-	iObserver->HandleCompletedNewServiceL( ETrue );	
-
-	// Notify the appui
-	if ( iFileHandleUsed )
-		{
-		// Application can be closed immediately
-		return ETrue;
-		}
-	
-	// Application waits for ECmdNewFileServiceNotify before it quits
-	// File service needs to transfer filenames back to client first
-	return EFalse;
-	}
-
-void CVRNewFileService::ServiceCompleteL()
-	{
-	CEikonEnv::Static()->EikAppUi()->HandleCommandL( ECmdNewFileServiceNotify );	
-	}
-
-void CVRNewFileService::AbortL()
-	{
-	if ( !iCompleted )
-		{
-		iCompleted = ETrue;
-		iObserver->HandleCompletedNewServiceL( EFalse );
-		}
-	}
-
-// End of File
--- a/voicerecorder/AppSrc/CVRNewFileService.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,106 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class is part of new file service framework.
-*
-*/
-
-
-#ifndef __CVRNEWFILESERVICE_H__
-#define __CVRNEWFILESERVICE_H__
-
-// INCLUDES
-#include <CNewFileServiceBase.h>
-#include "MVREmbeddedObserver.h"
-
-// CONSTANTS
-
-// CLASS DECLARATION
-/**
-* This class is part of new file service framework.
-*/
-class CVRNewFileService
-	: public CNewFileServiceBase, public MVREmbeddedObserver
-	{
-
-	public:
-		static CVRNewFileService* NewL();
-		~CVRNewFileService();
-
-		/*
-		* Receive message from service to record new files
-		*/
-        void HandleNewFileL( MNewFileServiceObserver* aObserver,
-        							  CDesCArray& aFilenameArray,
-        							  TNewServiceFileType aType,
-        							  TBool aMultipleFiles );
-		/*
-		* Receive message from service to record new file into file handle
-		*/
-        void HandleNewFileL( MNewFileServiceObserver* aObserver,
-        							  RFile& aFile,
-        							  TNewServiceFileType aType );
-
-		/*
-		* Receive message from service that file service has completed
-		* and can be closed
-		*/
-		void ServiceCompleteL();
-		
-	public: // MVREmbeddedObserver        							  
-		/*
-		* Receive comand from application that file named aName has been recorded
-		* @param aName The name of the recorded file
-		* @return Can the application be closed or should we wait
-		*/
-		virtual TBool FileCompleteL( const TDesC& aName );
-		
-		/*
-		* Receive command from application that file service must be aborted
-		*/
-		void AbortL();		
-
-	private:
-		CVRNewFileService();
-		
-	private: // data
-		/*
-		* Pointer to file service observer
-		*/
-		MNewFileServiceObserver* iObserver;
-		
-		/*
-		* If file service has already completed
-		*/
-		TBool iCompleted;
-
-        /*
-        * Are we recording to file handle or filenamearray
-        */		
-		TBool iFileHandleUsed;
-	
-	    /*
-	    * Contains name of the target file. Not owned.
-	    */
-		CDesCArray* iFilenameArray;
-		
-		/*
-		* Used for asynchronic operations
-		*/
-		CActiveSchedulerWait iActiveWait;
-		
-	};
-
-#endif // __CVNEWFILESERVICE_H__
-
--- a/voicerecorder/AppSrc/CVRSettingItem.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-/*
-* Copyright (c) 2003, 2004 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:  Setting item for default image/video name
-*
-*/
-
-
-// INCLUDE FILES
-#include "CVRSettingItem.h"
-#include <aknViewAppUi.h>
-
-// ========================= MEMBER FUNCTIONS ================================
-
-// ---------------------------------------------------------------------------
-// CCVRSettingItem::CCVRSettingItem
-// C++ constructor
-// ---------------------------------------------------------------------------
-//
-CCVRSettingItem::CCVRSettingItem( TInt aIdentifier,TDes& aText )
-: CAknTextSettingItem( aIdentifier, aText )
-    {
-    }
-
-
-// Destructor
-CCVRSettingItem::~CCVRSettingItem()
-    {
-    }
-
-
-// ---------------------------------------------------------------------------
-// CCVRSettingItem::EditItemL
-// This launches the setting page for text editing. Overridden here
-// to use CCVRSettingPage instead of CAknTextSettingPage.
-// ---------------------------------------------------------------------------
-//
-void CCVRSettingItem::EditItemL( TBool /* aCalledFromMenu */ )
-    {
-    }
-
-
-	/**
-	*  Access for re-implementors to the internal text 
-	*
-	* @return	reference to a TPtr holding the internal text
-	*/
-	 TPtr& CCVRSettingItem::InternalTextPtr()
-	 	{
-	 	  return CAknTextSettingItem::InternalTextPtr();
-	 	}
-
-	/**
-	*  Access for re-implementors to the external text
-	*
-	* @return	TPtrC pointing to the external text
-	*/
-	TPtrC CCVRSettingItem::ExternalText()
-		{
-			return CAknTextSettingItem::ExternalText();
-		}
-
-	/**
-	* Allows re-implementors to set the external text
-	* No change of ownership is implied.
-	*
-	* @param	 a reference to the external text
-	*
-	*/
-	void CCVRSettingItem:: SetExternalText( TDesC& aNewExternalText )
-		{
-			CAknTextSettingItem::SetExternalText(aNewExternalText);
-		}
-
-
-
-// End of File
--- a/voicerecorder/AppSrc/CVRSettingItem.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-/*
-* Copyright (c) 2003, 2004 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:  Setting item for memory settings
-*
-*/
-
-
-#ifndef CCVRSETTINGITEM_H
-#define CCVRSETTINGITEM_H
-
-// INCLUDES
-#include <akntextsettingpage.h>
-#include <aknsettingitemlist.h>
-
-// CLASS DECLARATION
-
-/**
-* Setting item for name base setting
-*/
-class CCVRSettingItem : public CAknTextSettingItem
-    {
-    public: // Constructors and destructor
-        /**
-        * C++ constructor
-        * @param aIdentifier identifier ID
-        * @param aText text related to identifier
-        * @since 3.1
-        */
-        CCVRSettingItem( TInt aIdentifier, TDes& aText );
-        
-	/**
-	*  Access for re-implementors to the internal text 
-	*
-	* @return	reference to a TPtr holding the internal text
-	*/
-	TPtr& InternalTextPtr();
-
-	/**
-	*  Access for re-implementors to the external text
-	*
-	* @return	TPtrC pointing to the external text
-	*/
-	TPtrC ExternalText();
-
-	/**
-	* Allows re-implementors to set the external text
-	* No change of ownership is implied.
-	*
-	* @param	 a reference to the external text
-	*
-	*/
-	void SetExternalText( TDesC& aNewExternalText );
-        /**
-        * Destructor
-        */
-        virtual ~CCVRSettingItem();
-
-    private: // Functions from base classes
-        /**
-        * From CAknTextSettingItem.
-        * This launches the setting page for text editing. Overridden here
-        * to use CCVRSettingPage instead of CAknTextSettingPage.
-        *
-        * @param        aCalledFromMenu - ignored in this class
-        */
-        void EditItemL( TBool aCalledFromMenu );
-
-    };
-
-
-#endif
--- a/voicerecorder/AppSrc/CVRSettingsDialog.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,179 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class defines a settings dialog for the Voice Recorder application.
-*
-*/
-
-
-#include <bldvariant.hrh>
-
-#include <AknLists.h>
-#include <aknform.h>
-#include <featmgr.h>
-#include "CVRSettingsDialog.h"
-#include "VoiceRecorder.hrh"
-#include <VoiceRecorder.rsg>
-#include "VRConsts.h"
-#include "VRUtils.h"
-
-CVRSettingsDialog::~CVRSettingsDialog()
-    {
-	iSettingItemArray.ResetAndDestroy();
-    }
-
-CVRSettingsDialog* CVRSettingsDialog::NewL()
-    {
-    CVRSettingsDialog* self = new( ELeave ) CVRSettingsDialog;
-	CleanupStack::PushL( self );
-	self->ConstructL( R_VR_SETTINGS_MENUBAR );
-	CleanupStack::Pop();
-    return self;
-    }
-
-TBool CVRSettingsDialog::OkToExitL( TInt aButtonId )
-	{
-	if ( aButtonId == EAknSoftkeyOptions )
-        {
-        DisplayMenuL();
-        return EFalse;
-        }
-
-	TInt settingItemCount( iSettingItemArray.Count() );
-
-	for ( TInt i( 0 ); i < settingItemCount; i++ )
-		{
-		iSettingItemArray.At( i )->StoreL();
-		}
-
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-        // Save the quality setting	
-	    VRUtils::SetQualityL( iQuality );
-        }
-
-	return ETrue;
-	}
-
-void CVRSettingsDialog::PreLayoutDynInitL()
-	{
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-	    iQuality = VRUtils::QualityL();
-        }
-
-	CAknSettingStyleListBox* listBox = static_cast< CAknSettingStyleListBox* >
-										( Control( EVRSettingsListboxId ) );
-	User::LeaveIfNull( listBox );
-
-	CAknSettingItem* settingItem;
-	HBufC* itemTitle = NULL;
-	TInt id( 0 );
-
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-    	// Add quality setting
-    	settingItem = new( ELeave ) CAknBinaryPopupSettingItem( 0, ( TInt& ) iQuality );
-    	CleanupStack::PushL( settingItem );
-
-    	itemTitle = iCoeEnv->AllocReadResourceLC( R_QTN_VOREC_SET_QUALITY );
-    	settingItem->ConstructL( EFalse, id, *itemTitle, NULL,
-    	                     R_VR_SETTINGS_DEFAULT_SPEAKER_PAGE, EAknCtPopupField, NULL,
-    						 R_VR_SETTINGS_QUALITY_TEXTS );
-    	CleanupStack::PopAndDestroy();		// itemTitle
-
-    	// Add quality item to the settings array
-    	iSettingItemArray.AppendL( settingItem );
-    	CleanupStack::Pop();	// settingItem
-    	id++;
-        }
-        
-	CTextListBoxModel* model = listBox->Model();
-	model->SetItemTextArray( &iSettingItemArray );
-	// Ownership retained by us
-	model->SetOwnershipType( ELbmDoesNotOwnItemArray );
-
-	iSettingItemArray.RecalculateVisibleIndicesL();
-	listBox->CreateScrollBarFrameL( ETrue );
-	listBox->ScrollBarFrame()->SetScrollBarVisibilityL(
-						CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto );
-	listBox->HandleItemAdditionL();
-	listBox->SetListBoxObserver( this );
-	listBox->UpdateScrollBarsL();
-
-	}
-
-void CVRSettingsDialog::HandleListBoxEventL( CEikListBox* aListBox,
-											 TListBoxEvent aEventType )
-	{
-	TInt index( aListBox->CurrentItemIndex() );
-		if ( index >=0 )	// index is -1 if there are no items in the list
-			{
-			iSettingItemArray.At( index )->EditItemL(
-				aEventType == EEventEditingStarted );
-			aListBox->DrawItem( index );
-			}
-	}
-
-void CVRSettingsDialog::ProcessCommandL( TInt aCommandId )
-	{
-	HideMenu();
-	switch ( aCommandId )
-		{
-		case ECmdChange:
-			{
-			CEikListBox* listBox = static_cast< CEikListBox* >( Control( EVRSettingsListboxId ) );
-			HandleListBoxEventL( listBox, EEventEditingStarted );
-			break;
-			}
-		case EEikCmdExit:
-			{
-			TryExitL( EAknSoftkeyBack );
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( aCommandId );
-			break;
-			}
-		default:
-			{
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( aCommandId );
-			break;
-			}
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::DynInitMenuPaneL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSettingsDialog::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
-	{
-
-	switch ( aResourceId )
-		{
-		case R_VR_SETTINGS_MENUPANE:
-			{
-			// Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-			if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-				{
-				aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-				}
-            break; 
-			}
-		default:
-			{
-			break;
-			}
-		}
-	}
-	
--- a/voicerecorder/AppSrc/CVRSettingsDialog.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class defines a settings dialog for the Voice Recorder application.
-*
-*/
-
-
-#ifndef __CVRSETTINGSDIALOG_H__
-#define __CVRSETTINGSDIALOG_H__
-
-//	INCLUDES
-#include <AknDialog.h>
-#include <eiklbo.h>
-#include "VRUtils.h"
-
-#include <aknsettingitemlist.h>
-
-// CLASS DECLARATION
-
-/**
-* This class defines a settings dialog for the Voice Recorder application.
-*/
-class CVRSettingsDialog
-	: public CAknDialog,
-	  public MEikListBoxObserver
-	{
-
-	public:  // Constructors and destructor
-		
-		/**
-		* Destructor.
-		*/
-		~CVRSettingsDialog();
-
-		/**
-		* Two-phased constructor.
-		*/
-		static CVRSettingsDialog* NewL();
-		
-	private: // Constructors
-
-		/**
-        * Default constructor. Inlined to save a few bytes.
-		* Parameters to array: granularity, isnumered, 1st ordinal
-        */
-		inline CVRSettingsDialog() : iSettingItemArray( 1, EFalse, 1 ) {}
-	
-	protected: // from CEikDialog
-
-		/**
-		* Tests if it is OK to exit the dialog.
-		* @param aButtonId The ID of the button that was activated.
-		* @return ETrue to validate and exit the dialog,
-		*         EFalse to keep the dialog active. 
-		*/
-		TBool OkToExitL( TInt aButtonId );
-
-		/**
-		* Pre-layout dialog initialisation.
-		*/
-		void PreLayoutDynInitL();
-
-		void ProcessCommandL( TInt aCommandId );
-		
-        void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
-
-	public: // From MEikListBoxObserver
-
-		/**
-		* Handles list box events.
-		* This is invoked by CEikListBox to notify the observer of
-		* list box events.
-		* @param aListBox The originating list box.
-		* @param aEventType A code for the event.
-		*/
-		void HandleListBoxEventL( CEikListBox* aListBox,
-								  TListBoxEvent aEventType );
-
-   private:    // data
-
-		/**
-		* Array of setting items contained in the listbox. Owned.
-		*/
-		CAknSettingItemArray iSettingItemArray;
-		
-		TVRQuality iQuality;
-	};
-
-#endif	// __CVRSETTINGSDIALOG_H__
--- a/voicerecorder/AppSrc/CVRSettingsDialogMMCSupported.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,387 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class defines a settings dialog for the Voice Recorder application.
-*
-*/
-
-#include <bldvariant.hrh>
-
-#include <aknlists.h>
-#include <featmgr.h>
-#include "CVRSettingsDialogMMCSupported.h"
-#include "voicerecorder.hrh"
-#include <voicerecorder.rsg>
-#include "VRConsts.h"
-#include "VRUtils.h"
-#include <hlplch.h>
-
-#include <CAknMemorySelectionSettingItem.h>
-#include <aknnotewrappers.h>
-#include <StringLoader.h>
-#include <AknCommonDialogsDynMem.h>
-
-#ifdef RD_MULTIPLE_DRIVE
-#include <AknCommonDialogsDynMem.h>
-#include <driveinfo.h>
-#include <CAknMemorySelectionDialogMultiDrive.h>
-#include <CAknMemorySelectionSettingItemMultiDrive.h>
-#endif
-
-// ListBox item index
-enum TListItemIndex
-    {
-    EListItemQualityIndex = 0,
-    ElistItemMemoStoreIndex,
-    };
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::~CVRSettingsDialog
-// 
-// ---------------------------------------------------------------------------
-//
-CVRSettingsDialog::~CVRSettingsDialog()
-    {
-	iSettingItemArray.ResetAndDestroy();
-    }
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::CVRSettingsDialog
-// 
-// ---------------------------------------------------------------------------
-//
-CVRSettingsDialog* CVRSettingsDialog::NewL()
-    {
-    CVRSettingsDialog* self = new( ELeave ) CVRSettingsDialog;
-	CleanupStack::PushL( self );
-	self->ConstructL( R_VR_SETTINGS_MENUBAR );
-	CleanupStack::Pop();
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::OkToExitL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRSettingsDialog::OkToExitL( TInt aButtonId )
-	{
-	if ( aButtonId == EAknSoftkeyOptions )
-        {
-        DisplayMenuL();
-        return EFalse;
-        }
-	
-	// If want to exit settings afterwards
-	TBool exitAfter( ETrue );
-	
-	// MSK button pressed in settings view
-	if ( aButtonId == ECmdMSK )
-		{
-		// A new key event is simulated
-		TKeyEvent key;
-        key.iRepeats = 0;
-        key.iCode = EKeyEnter;
-        key.iModifiers = 0;
-        CEikonEnv::Static()->SimulateKeyEventL( key, EEventKey );
-		
-
-		exitAfter = EFalse;	// No Exit
-		}
-	// Do not store settings anymore when exit
-	return exitAfter;
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::PreLayoutDynInitL
-// Intialize layout
-// ---------------------------------------------------------------------------
-//
-void CVRSettingsDialog::PreLayoutDynInitL()
-	{
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-	    iQuality = VRUtils::QualityL();
-        }
-    // Convert the internal memory enumeration to CFD enumeration
-#ifndef RD_MULTIPLE_DRIVE 
-	if ( VRUtils::MemoStoreL() == EMemoStorePhoneMemory )
-		{
-		iMemoStore = CAknMemorySelectionSettingPage::EPhoneMemory;
-		}
-	else
-		{
-		iMemoStore = CAknMemorySelectionSettingPage::EMemoryCard;
-		}
-    
-    // for multiple drives
-#else
-    iDrive = (TDriveNumber)VRUtils::MemoDriveL();
-    
-#endif
-
-	CAknSettingStyleListBox* listBox = static_cast< CAknSettingStyleListBox* >
-										( Control( EVRSettingsListboxId ) );
-	User::LeaveIfNull( listBox );
-    CAknSettingItem* settingItem;
-  
-    HBufC* itemTitle;
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-    	// Add quality setting
-#ifdef  __AAC_ENCODER_PLUGIN    	
-    	settingItem = new( ELeave ) CAknEnumeratedTextPopupSettingItem ( 0, ( TInt& ) iQuality );
-
-#else
-        settingItem = new( ELeave ) CAknBinaryPopupSettingItem ( 0, ( TInt& ) iQuality );
-#endif
-
-    	CleanupStack::PushL( settingItem );
-
-    	itemTitle = iCoeEnv->AllocReadResourceLC( R_QTN_VOREC_SET_QUALITY );
-    	settingItem->ConstructL( EFalse, EListItemQualityIndex, *itemTitle, NULL,
-    	                     R_VR_SETTINGS_DEFAULT_SPEAKER_PAGE, EAknCtPopupField, NULL,
-    						 R_VR_SETTINGS_QUALITY_TEXTS );
-    	CleanupStack::PopAndDestroy();		// itemTitle
-
-    	// Add quality item to the settings array
-    	iSettingItemArray.AppendL( settingItem ); 
-    	CleanupStack::Pop();	// settingItem
-        }
-
-    if ( VRUtils::MultipleMassStorageAvailable() )
-    	{
-    	// Create the memo store item
-    	// Set memo store item's title
-
-    	itemTitle = iCoeEnv->AllocReadResourceLC( R_QTN_VOREC_SET_STORE );
-#ifndef RD_MULTIPLE_DRIVE
-	settingItem = new( ELeave ) CAknMemorySelectionSettingItem( 0, iMemoStore );
-	CleanupStack::PushL( settingItem ); 
-    settingItem->ConstructL( EFalse, id, *itemTitle, NULL,
-       R_VOREC_MEMORY_SELECTION_DIALOG, EAknCtPopupSettingList );
-	// Add memo store item to the settings array
-	iSettingItemArray.AppendL( settingItem );
-	id++;
-	CleanupStack::Pop();	// settingItem
-
-#else    //multiple drives
-        settingItem = new( ELeave ) CAknMemorySelectionSettingItemMultiDrive(0, iDrive );
-        CleanupStack::PushL( settingItem );
-        TInt includedMedias = AknCommonDialogsDynMem::EMemoryTypeInternalMassStorage |
-                                 AknCommonDialogsDynMem::EMemoryTypeMMCExternal;
-        static_cast< CAknMemorySelectionSettingItemMultiDrive *> ( settingItem )->SetIncludedMediasL( includedMedias );
-        // Set memo store item's title
-        settingItem->ConstructL( EFalse, ElistItemMemoStoreIndex, *itemTitle, NULL, 0, EAknSetListBox );
-        // Add memo store item to the settings array
-        iSettingItemArray.AppendL( settingItem );
-        CleanupStack::Pop();	// settingItem
- 
-#endif
-
-		CleanupStack::PopAndDestroy();	// itemTitle
-	}
-	CTextListBoxModel* model = listBox->Model();
-	model->SetItemTextArray( &iSettingItemArray );
-	// Ownership retained by us
-	model->SetOwnershipType( ELbmDoesNotOwnItemArray );
-
-	iSettingItemArray.RecalculateVisibleIndicesL();
-	listBox->CreateScrollBarFrameL( ETrue );
-	listBox->ScrollBarFrame()->SetScrollBarVisibilityL(
-						CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto );
-	listBox->HandleItemAdditionL();
-	listBox->SetListBoxObserver( this );
-	listBox->UpdateScrollBarsL();
-
-	}
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::HandleListBoxEventL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSettingsDialog::HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType)
-	{
-
-	switch ( aEventType )
-		{
-#ifdef SINGLE_CLICK_INCLUDED
-        case EEventItemSingleClicked:
-#endif
-		case EEventItemDoubleClicked: // Pointer events (highlighted item before pressing) 
-		case EEventEnterKeyPressed:	// Normal button presses
-		case EEventEditingStarted: // From ProcessCommand->ECmdChange
-			{
-			TInt index( aListBox->CurrentItemIndex() );
-			TInt driveDefaultMassStorage = VRUtils::DefaultMemoDriveL();
-			TInt driveRemovableMassStorage = VRUtils::GetRemovableMassStorageL();
-			
-			if ( index >=0 )	// index is -1 if there are no items in the list
-				{
-			    if(index == ElistItemMemoStoreIndex && 
-			        !VRUtils::DriveValid(driveDefaultMassStorage) && 
-			            !VRUtils::DriveValid(driveRemovableMassStorage) )
-			        {
-			        break;
-			        }
-			    iSettingItemArray.At( index )->EditItemL( 
-				aEventType == EEventEditingStarted );
-			    aListBox->DrawItem( index );
-				}
-			StoreAllSettingsL();	
-			break;
-			}
-		default:
-			{
-			break;	
-			}
-		}
-
-	}
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::ProcessCommandL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSettingsDialog::ProcessCommandL( TInt aCommandId )
-	{
-	HideMenu();
-	switch ( aCommandId )
-		{
-		case ECmdChange:
-			{
-			CEikListBox* listBox = static_cast< CEikListBox* >( Control( EVRSettingsListboxId ) );
-			HandleListBoxEventL( listBox, EEventEditingStarted );
-			StoreAllSettingsL();
-			break;
-			}
-		case EEikCmdExit:
-			{
-			TryExitL( EEikCmdExit );
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( aCommandId );
-			break;
-			}
-		default:
-			{
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( aCommandId );
-			break;
-			}
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::StoreAllSettingsL
-// Stores values in settings list to permanent storage
-// ---------------------------------------------------------------------------
-//
-void CVRSettingsDialog::StoreAllSettingsL()
-    {
-
-    TInt settingItemCount( iSettingItemArray.Count() );
-
-	for ( TInt i( 0 ); i < settingItemCount; i++ )
-		{
-		iSettingItemArray.At( i )->StoreL();
-		}
-
-#ifndef RD_MULTIPLE_DRIVE    
-	if ( iMemoStore == CAknMemorySelectionSettingPage::EPhoneMemory )
-		{
-		VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-		}
-	else
-		{
-		// check if MMC is read-only
-		TVRDriveInfo mmcInfo;
-		VRUtils::GetMMCInfo( mmcInfo );
-
-		if ( mmcInfo.iDriveReadOnly )
-			{
-			HBufC* noteText = iCoeEnv->AllocReadResourceLC(
-													 R_QTN_MEMC_READONLY );
-			CAknInformationNote* infoNote =
-								new( ELeave ) CAknInformationNote( ETrue );
-			infoNote->ExecuteLD( *noteText );
-			CleanupStack::PopAndDestroy();	// noteText
-			VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-			}
-		else
-			{
-			VRUtils::SetMemoStoreL( EMemoStoreMMC );
-			}
-		}
-
-    // for multiple drives
-#else
-     TUint status( 0 );
-	 TInt defaultDrive = VRUtils::DefaultMemoDriveL();
-	 if (VRUtils::MemoDriveL() != defaultDrive)
-	 	{
- 	    VRUtils::GetDriveInfo(iDrive, status);
-     	// check if drive status is ok 
-	 	if ( status & DriveInfo::EDriveReadOnly )
-			{
-			HBufC* noteText = iCoeEnv->AllocReadResourceLC(R_QTN_MEMC_READONLY );
-			CAknInformationNote* infoNote =	new( ELeave ) CAknInformationNote( ETrue );
-			infoNote->ExecuteLD( *noteText );
-			CleanupStack::PopAndDestroy();	// noteText
-        
-        	// use default device drive to save files
-        	iDrive = (TDriveNumber)defaultDrive;
-  			}
-	 	}
-    if(iDrive == defaultDrive || iDrive == VRUtils::GetRemovableMassStorageL())
-        {
-        VRUtils::SetMemoDriveL( iDrive );
-        }
-#endif 
-     
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-        // Save the quality setting	
-	    VRUtils::SetQualityL( iQuality );
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::DynInitMenuPaneL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSettingsDialog::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
-	{
-
-	switch ( aResourceId )
-		{
-		case R_VR_SETTINGS_MENUPANE:
-			{
-			// Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-			if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-				{
-				aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-				}
-            break; 
-			}
-		default:
-			{
-			break;
-			}
-		}
-	}
-
-
-// End of file    
--- a/voicerecorder/AppSrc/CVRSettingsDialogMMCSupported.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,130 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This class defines a settings dialog for the Voice Recorder application.
-*
-*/
-
-
-#ifndef __CVRSETTINGSDIALOG_H__
-#define __CVRSETTINGSDIALOG_H__
-
-//	INCLUDES
-
-#include <AknDialog.h>
-#include <eiklbo.h>
-#include "VRUtils.h"
-#include "CVRSettingItem.h"
-
-
-#include <CAknMemorySelectionDialog.h>
-#include <aknsettingitemlist.h>
-
-// CLASS DECLARATION
-
-/**
-* This class defines a settings dialog for the Voice Recorder application.
-*/
-class CVRSettingsDialog
-	: public CAknDialog,
-	  public MEikListBoxObserver
-	{
-
-	public:  // Constructors and destructor
-		
-		/**
-		* Destructor.
-		*/
-		~CVRSettingsDialog();
-
-		/**
-		* Two-phased constructor.
-		*/
-		static CVRSettingsDialog* NewL();
-		
-	private: // Constructors
-
-		/**
-        * Default constructor. Inlined to save a few bytes.
-		* Parameters to array: granularity, isnumered, 1st ordinal
-        */
-
-		inline CVRSettingsDialog() : iSettingItemArray( 1, EFalse, 1 ){}
-	
-	protected: // from CEikDialog
-
-		/**
-		* Tests if it is OK to exit the dialog.
-		* @param aButtonId The ID of the button that was activated.
-		* @return ETrue to validate and exit the dialog,
-		*         EFalse to keep the dialog active. 
-		*/
-		TBool OkToExitL( TInt aButtonId );
-
-		/**
-		* Pre-layout dialog initialisation.
-		*/
-		void PreLayoutDynInitL();
-
-		void ProcessCommandL( TInt aCommandId );
-		
-        void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
-
-	public: // From MEikListBoxObserver
-
-
-		/**
-		* Handles list box events.
-		* This is invoked by CEikListBox to notify the observer of
-		* list box events.
-		* @param aListBox The originating list box.
-		* @param aEventType A code for the event.
-		*/
-		void HandleListBoxEventL( CEikListBox* aListBox,
-								  TListBoxEvent aEventType );
-								         
-	private: //new methods		
-		
-		/**
-		* Stores all settings to Central Repository when called
-		*/
-		void StoreAllSettingsL();
-    
-   	private:    // data
-
-		/**
-		* Array of setting items contained in the listbox. Owned.
-		*/
-
-		CAknSettingItemArray iSettingItemArray;
-
- 		/**
-		* Selected memo store
-		*/
-		CAknMemorySelectionDialog::TMemory iMemoStore;
-
-        /**
-        * Selected memo quality
-        */		
-		TVRQuality iQuality;
-		
-        /**
-        * Multiple drives
-        */		
-        TDriveNumber iDrive;		
-
-
-	};
-
-#endif	// __CVRSETTINGSDIALOG_H__
--- a/voicerecorder/AppSrc/MVREmbeddedObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     An observer class used to notify objects that embedded recording
-*	  was completed
-*
-*/
-
-
-#ifndef MVREMBEDDEDOBSERVER_H
-#define MVREMBEDDEDOBSERVER_H
-
-// INCLUDES
-#include <w32std.h>
-
-// CLASS DECLARATION
-/**
-* An observer class used to notify objects that embedded recording
-* was completed
-*/
-class MVREmbeddedObserver 
-    {
-
-    public: // new methods
-
-		/**
-		* This function is called when application wants to notify
-		* the observer that embedded clip was recorded
-		* @param aName The name of the file that was recorded
-		*              or EEventKeyDown
-		* @return Can we close the application
-		*/
-		virtual TBool FileCompleteL( const TDesC& aName ) = 0;
-		
-		/**
-		* This function may be used to inform server to abort transfer.
-		* If operation already has completed, nothing is done.
-		*/
-		virtual void AbortL() = 0;
-    };
-
-#endif // MVREMBEDDEDOBSERVER_H
--- a/voicerecorder/AppSrc/MVRUSBEventObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-* This class can be used to observe changes that has been happened in
-* CVRUSBEventHandler class 
-*
-*/
-
-
-#ifndef __MVRUSBEVENTOBSERVER_H
-#define __MVRUSBEVENTOBSERVER_H
-
-// INCLUDES
-#include <e32def.h>
-#include <bldvariant.hrh>
-
-// CLASS DECLARATION
-/**
-*  MVRUSBEventObserver
-*/
-class MVRUSBEventObserver
-    {
-    public:  // Constructors and destructor		
-    
-    virtual void HandleUSBEventL() = 0;
-
-	};
-
-#endif      // __MVRUSBEVENTOBSERVER_H
-
-// End of File
--- a/voicerecorder/BMARM/VOICERECORDERRECVIEWU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	NewLC__10CVRRecViewii @ 1 NONAME R3UNUSED ; CVRRecView::NewLC(int, int)
-
--- a/voicerecorder/BMARM/VOICERECORDERUTILSU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-EXPORTS
-	__9TVRRenameR3RFs @ 1 NONAME R3UNUSED ; TVRRename::TVRRename(RFs &)
-	GetMMCInfo__7VRUtilsR12TVRDriveInfo @ 2 NONAME R3UNUSED ; VRUtils::GetMMCInfo(TVRDriveInfo &)
-	GetNewNameL__9TVRRenameRC7TDesC16R6TDes16i @ 3 NONAME ; TVRRename::GetNewNameL(TDesC16 const &, TDes16 &, int)
-	MemoStoreDirectoryL__7VRUtils @ 4 NONAME R3UNUSED ; VRUtils::MemoStoreDirectoryL(void)
-	MemoStoreL__7VRUtils @ 5 NONAME R3UNUSED ; VRUtils::MemoStoreL(void)
-	NewL__17CVRFileRecognizer @ 6 NONAME R3UNUSED ; CVRFileRecognizer::NewL(void)
-	RecognizeL__17CVRFileRecognizerRC7TDesC16 @ 7 NONAME R3UNUSED ; CVRFileRecognizer::RecognizeL(TDesC16 const &)
-	RenameL__9TVRRenameR6TDes16i @ 8 NONAME R3UNUSED ; TVRRename::RenameL(TDes16 &, int)
-	SetDefaultSpeakerL__7VRUtils10TVRSpeaker @ 9 NONAME R3UNUSED ; VRUtils::SetDefaultSpeakerL(TVRSpeaker)
-	SetMemoStoreL__7VRUtils12TVRMemoStore @ 10 NONAME R3UNUSED ; VRUtils::SetMemoStoreL(TVRMemoStore)
-	"_._17CVRFileRecognizer" @ 11 NONAME R3UNUSED ; CVRFileRecognizer::~CVRFileRecognizer(void)
-	"_._9TVRRename" @ 12 NONAME R3UNUSED ; TVRRename::~TVRRename(void)
-	DefaultSpeakerL__7VRUtils @ 13 NONAME R3UNUSED ; VRUtils::DefaultSpeakerL(void)
-
--- a/voicerecorder/BWINS/NewServiceU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
-EXPORTS
-	??0CNewFileServiceBase@@IAE@XZ @ 1 NONAME ; CNewFileServiceBase::CNewFileServiceBase(void)
-	??1CNewFileServiceBase@@UAE@XZ @ 2 NONAME ; CNewFileServiceBase::~CNewFileServiceBase(void)
-	?GenericParams@CNewFileServiceBase@@IAEPAVCAiwGenericParamList@@XZ @ 3 NONAME ; class CAiwGenericParamList * CNewFileServiceBase::GenericParams(void)
-	?HandleCompletedNewServiceL@CNewFileServiceBase@@MAEXH@Z @ 4 NONAME ; void CNewFileServiceBase::HandleCompletedNewServiceL(int)
-	?NewClientL@NewFileServiceFactory@@SAPAVCNewFileServiceClient@@XZ @ 5 NONAME ; class CNewFileServiceClient * NewFileServiceFactory::NewClientL(void)
-	?ServiceL@CNewFileServiceBase@@MAEXABVRMessage2@@@Z @ 6 NONAME ; void CNewFileServiceBase::ServiceL(class RMessage2 const &)
-	?GetErrorCode@CNewFileServiceBase@@QAEHXZ @ 7 NONAME ; int CNewFileServiceBase::GetErrorCode(void)
-	?SetErrorCode@CNewFileServiceBase@@QAEXH@Z @ 8 NONAME ; void CNewFileServiceBase::SetErrorCode(int)
-
--- a/voicerecorder/BWINS/VOICERECORDERRECVIEWU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-EXPORTS
-	?MrccatoCommand@CVRRemConObserver@@MAEXW4TRemConCoreApiOperationId@@W4TRemConCoreApiButtonAction@@@Z @ 1 NONAME ; void CVRRemConObserver::MrccatoCommand(enum TRemConCoreApiOperationId, enum TRemConCoreApiButtonAction)
-	?NewLC@CVRRecView@@SAPAV1@HH@Z @ 2 NONAME ; class CVRRecView * CVRRecView::NewLC(int, int)
-
--- a/voicerecorder/BWINS/VoiceRecorderUtilsU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-EXPORTS
-	??0TVRRename@@QAE@AAVRFs@@@Z @ 1 NONAME ; TVRRename::TVRRename(class RFs &)
-	?AACAudioModeL@VRUtils@@SAHXZ @ 2 NONAME ; int VRUtils::AACAudioModeL(void)
-	?AACBitrateL@VRUtils@@SAIXZ @ 3 NONAME ; unsigned int VRUtils::AACBitrateL(void)
-	?AACSamplerateL@VRUtils@@SAHXZ @ 4 NONAME ; int VRUtils::AACSamplerateL(void)
-	?AMRBitrateL@VRUtils@@SAIXZ @ 5 NONAME ; unsigned int VRUtils::AMRBitrateL(void)
-	?DefaultSpeakerL@VRUtils@@SA?AW4TVRSpeaker@@XZ @ 6 NONAME ; enum TVRSpeaker VRUtils::DefaultSpeakerL(void)
-	?DefaultVolumeL@VRUtils@@SAHW4TVRSpeaker@@@Z @ 7 NONAME ; int VRUtils::DefaultVolumeL(enum TVRSpeaker)
-	?FeatureEnabled@VRUtils@@SAHW4TVRFeature@@@Z @ 8 NONAME ; int VRUtils::FeatureEnabled(enum TVRFeature)
-	?GenerateUniqueFilenameL@VRUtils@@SAXAAVRFs@@AAV?$TBuf@$0BAA@@@W4TVRFiletype@@@Z @ 9 NONAME ; void VRUtils::GenerateUniqueFilenameL(class RFs &, class TBuf<256> &, enum TVRFiletype)
-	?GetMMCInfo@VRUtils@@SAXAAVTVRDriveInfo@@@Z @ 10 NONAME ; void VRUtils::GetMMCInfo(class TVRDriveInfo &)
-	?GetNewNameL@TVRRename@@QAEHABVTDesC16@@AAVTDes16@@H@Z @ 11 NONAME ; int TVRRename::GetNewNameL(class TDesC16 const &, class TDes16 &, int)
-	?MaxLengthL@VRUtils@@SAHXZ @ 12 NONAME ; int VRUtils::MaxLengthL(void)
-	?MemoCount@VRUtils@@SAHXZ @ 13 NONAME ; int VRUtils::MemoCount(void)
-	?MemoStoreDirectoryL@VRUtils@@SAXAAVTDes16@@@Z @ 14 NONAME ; void VRUtils::MemoStoreDirectoryL(class TDes16 &)
-	?MemoStoreL@VRUtils@@SA?AW4TVRMemoStore@@XZ @ 15 NONAME ; enum TVRMemoStore VRUtils::MemoStoreL(void)
-	?QualityL@VRUtils@@SA?AW4TVRQuality@@XZ @ 16 NONAME ; enum TVRQuality VRUtils::QualityL(void)
-	?RenameL@TVRRename@@QAEHAAVRFile@@H@Z @ 17 NONAME ; int TVRRename::RenameL(class RFile &, int)
-	?RenameL@TVRRename@@QAEHAAVTDes16@@H@Z @ 18 NONAME ; int TVRRename::RenameL(class TDes16 &, int)
-	?SetDefaultSpeakerL@VRUtils@@SAXW4TVRSpeaker@@@Z @ 19 NONAME ; void VRUtils::SetDefaultSpeakerL(enum TVRSpeaker)
-	?SetDefaultVolumeL@VRUtils@@SAXW4TVRSpeaker@@H@Z @ 20 NONAME ; void VRUtils::SetDefaultVolumeL(enum TVRSpeaker, int)
-	?SetMemoCount@VRUtils@@SAXH@Z @ 21 NONAME ; void VRUtils::SetMemoCount(int)
-	?SetMemoStoreL@VRUtils@@SAXW4TVRMemoStore@@@Z @ 22 NONAME ; void VRUtils::SetMemoStoreL(enum TVRMemoStore)
-	?SetQualityL@VRUtils@@SAXW4TVRQuality@@@Z @ 23 NONAME ; void VRUtils::SetQualityL(enum TVRQuality)
-	?ShowMemoryFullConfirmationQuery@VRUtils@@SAXH@Z @ 24 NONAME ; void VRUtils::ShowMemoryFullConfirmationQuery(int)
-	?UnsupportedCallTypeOngoing@VRUtils@@SAHH@Z @ 25 NONAME ; int VRUtils::UnsupportedCallTypeOngoing(int)
-
--- a/voicerecorder/BWINS/VoiceRecorderUtilsUU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-EXPORTS
-	??0TVRRename@@QAE@AAVRFs@@@Z @ 1 NONAME ; TVRRename::TVRRename(class RFs &)
-	?AACAudioModeL@VRUtils@@SAHXZ @ 2 NONAME ; int VRUtils::AACAudioModeL(void)
-	?AACBitrateL@VRUtils@@SAIXZ @ 3 NONAME ; unsigned int VRUtils::AACBitrateL(void)
-	?AACSamplerateL@VRUtils@@SAHXZ @ 4 NONAME ; int VRUtils::AACSamplerateL(void)
-	?AMRBitrateL@VRUtils@@SAIXZ @ 5 NONAME ; unsigned int VRUtils::AMRBitrateL(void)
-	?DefaultMemoDriveL@VRUtils@@SAHXZ @ 6 NONAME ; int VRUtils::DefaultMemoDriveL(void)
-	?DefaultSpeakerL@VRUtils@@SA?AW4TVRSpeaker@@XZ @ 7 NONAME ; enum TVRSpeaker VRUtils::DefaultSpeakerL(void)
-	?DefaultVolumeL@VRUtils@@SAHW4TVRSpeaker@@@Z @ 8 NONAME ; int VRUtils::DefaultVolumeL(enum TVRSpeaker)
-	?FeatureEnabled@VRUtils@@SAHW4TVRFeature@@@Z @ 9 NONAME ; int VRUtils::FeatureEnabled(enum TVRFeature)
-	?GenerateUniqueFilenameL@VRUtils@@SAXAAVRFs@@AAV?$TBuf@$0BAA@@@W4TVRFiletype@@@Z @ 10 NONAME ; void VRUtils::GenerateUniqueFilenameL(class RFs &, class TBuf<256> &, enum TVRFiletype)
-	?GetMMCInfo@VRUtils@@SAXAAVTVRDriveInfo@@@Z @ 11 NONAME ; void VRUtils::GetMMCInfo(class TVRDriveInfo &)
-	?GetNewNameL@TVRRename@@QAEHABVTDesC16@@AAVTDes16@@H@Z @ 12 NONAME ; int TVRRename::GetNewNameL(class TDesC16 const &, class TDes16 &, int)
-	?MaxLengthL@VRUtils@@SAHXZ @ 13 NONAME ; int VRUtils::MaxLengthL(void)
-	?MemoCount@VRUtils@@SAHXZ @ 14 NONAME ; int VRUtils::MemoCount(void)
-	?MemoDriveL@VRUtils@@SAHXZ @ 15 NONAME ; int VRUtils::MemoDriveL(void)
-	?MemoStoreDirectoryL@VRUtils@@SAXAAVTDes16@@@Z @ 16 NONAME ; void VRUtils::MemoStoreDirectoryL(class TDes16 &)
-	?MemoStoreL@VRUtils@@SA?AW4TVRMemoStore@@XZ @ 17 NONAME ; enum TVRMemoStore VRUtils::MemoStoreL(void)
-	?QualityL@VRUtils@@SA?AW4TVRQuality@@XZ @ 18 NONAME ; enum TVRQuality VRUtils::QualityL(void)
-	?RenameL@TVRRename@@QAEHAAVRFile@@H@Z @ 19 NONAME ; int TVRRename::RenameL(class RFile &, int)
-	?RenameL@TVRRename@@QAEHAAVTDes16@@H@Z @ 20 NONAME ; int TVRRename::RenameL(class TDes16 &, int)
-	?SetDefaultSpeakerL@VRUtils@@SAXW4TVRSpeaker@@@Z @ 21 NONAME ; void VRUtils::SetDefaultSpeakerL(enum TVRSpeaker)
-	?SetDefaultVolumeL@VRUtils@@SAXW4TVRSpeaker@@H@Z @ 22 NONAME ; void VRUtils::SetDefaultVolumeL(enum TVRSpeaker, int)
-	?SetMemoCount@VRUtils@@SAXH@Z @ 23 NONAME ; void VRUtils::SetMemoCount(int)
-	?SetMemoDriveL@VRUtils@@SAXW4TDriveNumber@@@Z @ 24 NONAME ; void VRUtils::SetMemoDriveL(enum TDriveNumber)
-	?SetMemoStoreL@VRUtils@@SAXW4TVRMemoStore@@@Z @ 25 NONAME ; void VRUtils::SetMemoStoreL(enum TVRMemoStore)
-	?SetQualityL@VRUtils@@SAXW4TVRQuality@@@Z @ 26 NONAME ; void VRUtils::SetQualityL(enum TVRQuality)
-	?ShowMemoryFullConfirmationQuery@VRUtils@@SAXH@Z @ 27 NONAME ; void VRUtils::ShowMemoryFullConfirmationQuery(int)
-	?UnsupportedCallTypeOngoing@VRUtils@@SAHH@Z @ 28 NONAME ; int VRUtils::UnsupportedCallTypeOngoing(int)
-	?GetDriveInfo@VRUtils@@SAHHAAI@Z @ 29 NONAME ; int VRUtils::GetDriveInfo(int, unsigned int &)
-	?IsUsbActive@CVRUSBStateHanlder@@SAHXZ @ 30 NONAME ; int CVRUSBStateHanlder::IsUsbActive(void)
-	?NewL@CVRUSBStateHanlder@@SAPAV1@PAVMVRUSBStateObserver@@@Z @ 31 NONAME ; class CVRUSBStateHanlder * CVRUSBStateHanlder::NewL(class MVRUSBStateObserver *)
-	?DriveValid@VRUtils@@SAHH@Z @ 32 NONAME ; int VRUtils::DriveValid(int)
-	?MultipleMassStorageAvailable@VRUtils@@SAHXZ @ 33 NONAME ; int VRUtils::MultipleMassStorageAvailable(void)
-	?GetRemovableMassStorageL@VRUtils@@SAHXZ @ 34 NONAME ; int VRUtils::GetRemovableMassStorageL(void)
-
Binary file voicerecorder/Conf/voicerecorder.confml has changed
Binary file voicerecorder/Conf/voicerecorder_101F87A3.crml has changed
--- a/voicerecorder/EABI/NewServiceU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-EXPORTS
-	_ZN19CNewFileServiceBase13GenericParamsEv @ 1 NONAME
-	_ZN19CNewFileServiceBase26HandleCompletedNewServiceLEi @ 2 NONAME
-	_ZN19CNewFileServiceBase8ServiceLERK9RMessage2 @ 3 NONAME
-	_ZN19CNewFileServiceBaseC2Ev @ 4 NONAME
-	_ZN19CNewFileServiceBaseD0Ev @ 5 NONAME
-	_ZN19CNewFileServiceBaseD1Ev @ 6 NONAME
-	_ZN19CNewFileServiceBaseD2Ev @ 7 NONAME
-	_ZN21NewFileServiceFactory10NewClientLEv @ 8 NONAME
-	_ZTI19CNewFileServiceBase @ 9 NONAME ; #<TI>#
-	_ZTI21RNewFileServiceClient @ 10 NONAME ; #<TI>#
-	_ZTI24CNewFileServiceDiscovery @ 11 NONAME ; #<TI>#
-	_ZTI25CNewFileServiceClientImpl @ 12 NONAME ; #<TI>#
-	_ZTV19CNewFileServiceBase @ 13 NONAME ; #<VT>#
-	_ZTV21RNewFileServiceClient @ 14 NONAME ; #<VT>#
-	_ZTV24CNewFileServiceDiscovery @ 15 NONAME ; #<VT>#
-	_ZTV25CNewFileServiceClientImpl @ 16 NONAME ; #<VT>#
-	_ZThn36_N19CNewFileServiceBase26HandleCompletedNewServiceLEi @ 17 NONAME ; #<thunk>#
-	_ZN19CNewFileServiceBase12GetErrorCodeEv @ 18 NONAME
-	_ZN19CNewFileServiceBase12SetErrorCodeEi @ 19 NONAME
-
--- a/voicerecorder/EABI/VoiceRecorderRecViewU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-EXPORTS
-	_ZN10CVRRecView5NewLCEii @ 1 NONAME
-	_ZTI10CVRRecView @ 2 NONAME ; #<TI>#
-	_ZTV10CVRRecView @ 3 NONAME ; #<VT>#
-	_ZN17CVRRemConObserver14MrccatoCommandE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 4 NONAME
-	_ZThn4_N17CVRRemConObserver14MrccatoCommandE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 5 NONAME ; #<thunk>#
-
--- a/voicerecorder/EABI/VoiceRecorderUtilsU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-EXPORTS
-	_ZN7VRUtils10GetMMCInfoER12TVRDriveInfo @ 1 NONAME
-	_ZN7VRUtils10MaxLengthLEv @ 2 NONAME
-	_ZN7VRUtils10MemoStoreLEv @ 3 NONAME
-	_ZN7VRUtils11AACBitrateLEv @ 4 NONAME
-	_ZN7VRUtils11AMRBitrateLEv @ 5 NONAME
-	_ZN7VRUtils11SetQualityLE10TVRQuality @ 6 NONAME
-	_ZN7VRUtils12SetMemoCountEi @ 7 NONAME
-	_ZN7VRUtils13AACAudioModeLEv @ 8 NONAME
-	_ZN7VRUtils13SetMemoStoreLE12TVRMemoStore @ 9 NONAME
-	_ZN7VRUtils14AACSamplerateLEv @ 10 NONAME
-	_ZN7VRUtils14DefaultVolumeLE10TVRSpeaker @ 11 NONAME
-	_ZN7VRUtils14FeatureEnabledE10TVRFeature @ 12 NONAME
-	_ZN7VRUtils15DefaultSpeakerLEv @ 13 NONAME
-	_ZN7VRUtils17SetDefaultVolumeLE10TVRSpeakeri @ 14 NONAME
-	_ZN7VRUtils18SetDefaultSpeakerLE10TVRSpeaker @ 15 NONAME
-	_ZN7VRUtils19MemoStoreDirectoryLER6TDes16 @ 16 NONAME
-	_ZN7VRUtils23GenerateUniqueFilenameLER3RFsR4TBufILi256EE11TVRFiletype @ 17 NONAME
-	_ZN7VRUtils26UnsupportedCallTypeOngoingEi @ 18 NONAME
-	_ZN7VRUtils31ShowMemoryFullConfirmationQueryEi @ 19 NONAME
-	_ZN7VRUtils8QualityLEv @ 20 NONAME
-	_ZN7VRUtils9MemoCountEv @ 21 NONAME
-	_ZN9TVRRename11GetNewNameLERK7TDesC16R6TDes16i @ 22 NONAME
-	_ZN9TVRRename7RenameLER5RFilei @ 23 NONAME
-	_ZN9TVRRename7RenameLER6TDes16i @ 24 NONAME
-	_ZN9TVRRenameC1ER3RFs @ 25 NONAME
-	_ZN9TVRRenameC2ER3RFs @ 26 NONAME
-
--- a/voicerecorder/EABI/VoiceRecorderUtilsUU.DEF	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-EXPORTS
-	_ZN7VRUtils10GetMMCInfoER12TVRDriveInfo @ 1 NONAME
-	_ZN7VRUtils10MaxLengthLEv @ 2 NONAME
-	_ZN7VRUtils10MemoStoreLEv @ 3 NONAME
-	_ZN7VRUtils11AACBitrateLEv @ 4 NONAME
-	_ZN7VRUtils11AMRBitrateLEv @ 5 NONAME
-	_ZN7VRUtils11SetQualityLE10TVRQuality @ 6 NONAME
-	_ZN7VRUtils12SetMemoCountEi @ 7 NONAME
-	_ZN7VRUtils13AACAudioModeLEv @ 8 NONAME
-	_ZN7VRUtils13SetMemoStoreLE12TVRMemoStore @ 9 NONAME
-	_ZN7VRUtils14AACSamplerateLEv @ 10 NONAME
-	_ZN7VRUtils14DefaultVolumeLE10TVRSpeaker @ 11 NONAME
-	_ZN7VRUtils14FeatureEnabledE10TVRFeature @ 12 NONAME
-	_ZN7VRUtils15DefaultSpeakerLEv @ 13 NONAME
-	_ZN7VRUtils17SetDefaultVolumeLE10TVRSpeakeri @ 14 NONAME
-	_ZN7VRUtils18SetDefaultSpeakerLE10TVRSpeaker @ 15 NONAME
-	_ZN7VRUtils19MemoStoreDirectoryLER6TDes16 @ 16 NONAME
-	_ZN7VRUtils23GenerateUniqueFilenameLER3RFsR4TBufILi256EE11TVRFiletype @ 17 NONAME
-	_ZN7VRUtils26UnsupportedCallTypeOngoingEi @ 18 NONAME
-	_ZN7VRUtils31ShowMemoryFullConfirmationQueryEi @ 19 NONAME
-	_ZN7VRUtils8QualityLEv @ 20 NONAME
-	_ZN7VRUtils9MemoCountEv @ 21 NONAME
-	_ZN9TVRRename11GetNewNameLERK7TDesC16R6TDes16i @ 22 NONAME
-	_ZN9TVRRename7RenameLER5RFilei @ 23 NONAME
-	_ZN9TVRRename7RenameLER6TDes16i @ 24 NONAME
-	_ZN9TVRRenameC1ER3RFs @ 25 NONAME
-	_ZN9TVRRenameC2ER3RFs @ 26 NONAME
-	_ZN7VRUtils10MemoDriveLEv @ 27 NONAME
-	_ZN7VRUtils12GetDriveInfoEiRj @ 28 NONAME
-	_ZN7VRUtils13SetMemoDriveLE12TDriveNumber @ 29 NONAME
-	_ZN7VRUtils17DefaultMemoDriveLEv @ 30 NONAME
-	_ZN18CVRUSBStateHanlder11IsUsbActiveEv @ 31 NONAME
-	_ZN18CVRUSBStateHanlder4NewLEP19MVRUSBStateObserver @ 32 NONAME
-	_ZN7VRUtils10DriveValidEi @ 33 NONAME
-	_ZTI18CVRUSBStateHanlder @ 34 NONAME
-	_ZTV18CVRUSBStateHanlder @ 35 NONAME
-	_ZN7VRUtils28MultipleMassStorageAvailableEv @ 36 NONAME
-	_ZN7VRUtils24GetRemovableMassStorageLEv @ 37 NONAME
-
--- a/voicerecorder/NewServiceInc/CNewFileServiceDiscovery.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Class implementing the discovery of New file Service servers
-*
-*/
-
-
-
-#ifndef CNEWFILESERVICEDISCOVERY_H
-#define CNEWFILESERVICEDISCOVERY_H
-
-//  INCLUDES
-#include <e32base.h>
-
-/**
-*  Discovery is not supported
-*
-*  @lib NewService.dll
-*  @since Series 60 3.0
-*/
-class CNewFileServiceDiscovery : public CBase
-    {
-    public:  // Constructors and destructor
-
-        /**
-        * Two-phased constructor.
-        */
-        static CNewFileServiceDiscovery* NewL();
-
-        /**
-        * Destructor.
-        */
-        virtual ~CNewFileServiceDiscovery();
-
-    public: // New functions
-
-    private:
-
-        /**
-        * C++ default constructor.
-        */
-        CNewFileServiceDiscovery();
-
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-        void ConstructL();
-
-    };
-
-#endif      // CNEWFILESERVICEDISCOVERY_H
-
-// End of File
--- a/voicerecorder/NewServiceInc/NewFileService.rh	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-/*
-* Copyright (c) 2002-2004 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:  Definitions for the API
-*
-*/
-
-
-#ifndef NEWFILESERVICE_RH
-#define NEWFILESERVICE_RH
-
-
-#endif // NEWFILESERVICE_RH
-            
-// End of File
--- a/voicerecorder/NewServiceInc/NewFileServiceUID.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-/*
-* Copyright (c) 2005 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 the UID for New file service
-*
-*/
-
-
-#ifndef __NEWSERVICEUID_H__
-#define __NEWSERVICEUID_H__
-
-// CONSTANTS
-#define NEWSERVICEUID 0x101F8861
-
-#endif // __NEWSERVICEUID_H__
--- a/voicerecorder/NewServiceSrc/CNewFileServiceBase.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,284 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Base class for app servers
-*
-*/
-
-
-
-// INCLUDE FILES
-#include <badesca.h>
-#include <s32mem.h>
-#include <AiwGenericParam.h>
-
-#include "CNewFileServiceBase.h"
-#include "NewFileServiceDefs.h"
-
-// CONSTANTS
-const TInt KFilenameArrayGranularity( 2 );
-
-
-// ============================ MEMBER FUNCTIONS =============================
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::CNewFileServiceBase
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CNewFileServiceBase::CNewFileServiceBase():iError(0)
-    {
-    }
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::~CNewFileServiceBase
-//
-// ---------------------------------------------------------------------------
-//
-// Destructor
-EXPORT_C CNewFileServiceBase::~CNewFileServiceBase()
-    {
-	delete iFilenameArray;
-	delete iGenericParams;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::DeserializeGenericParamsL
-//
-// ---------------------------------------------------------------------------
-//
-void CNewFileServiceBase::DeserializeGenericParamsL( const RMessage2& aMessage )
-	{
-	if ( !iGenericParams )
-		{
-		iGenericParams = CAiwGenericParamList::NewL();
-		}
-	else
-		{
-		iGenericParams->Reset();
-		}
-
-	TInt dataLength( aMessage.GetDesLengthL( ENewServiceIndexFileName ) );
-	if ( dataLength == 0 )
-		{
-		return;
-		}
-
-	HBufC8* buffer = HBufC8::NewLC( dataLength );
-	TPtr8 ptr( buffer->Des() );
-	aMessage.ReadL( ENewServiceIndexFileName, ptr );
-
-	RDesReadStream stream( ptr );
-	iGenericParams->InternalizeL( stream );
-	CleanupStack::PopAndDestroy();   // buffer
-	}
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::ServiceL
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CNewFileServiceBase::ServiceL( const RMessage2& aMessage )
-	{
-#ifdef _DEBUG
-	RDebug::Print( _L("CNewFileServiceBase::ServiceL %d"), 
-			aMessage.Function() );
-#endif
-	switch ( aMessage.Function() )
-		{
-			case ECreateNewFile:
-				{
-				TPckgBuf< TNewServiceParamPack > paramPack;
-				aMessage.ReadL( ENewServiceIndexParams, paramPack );
-
-				if ( !iFilenameArray )
-					{
-					iFilenameArray = new ( ELeave )
-						CDesCArrayFlat( KFilenameArrayGranularity );
-					}
-				iFilenameArray->Reset();
-
-				DeserializeGenericParamsL( aMessage );
-
-				// Copy the message handle so we can reply to the message when
-				// the service observer gets called
-				iPendingMessage = aMessage;
-
-				HandleNewFileL( this, *iFilenameArray, paramPack().iType, 
-								paramPack().iMultipleFiles );
-
-    			break;
-				}
-
-			case ENewFileToHandle:
-				{
-				TPckgBuf< TNewServiceParamPack > paramPack;
-				aMessage.ReadL( ENewServiceIndexParams, paramPack );
-
-				DeserializeGenericParamsL( aMessage );
-
-				// Adopt file handle from client
-				RFile file;
-				TInt err = file.AdoptFromClient( aMessage, 
-												 ENewServiceIndexFsHandle, 
-												 ENewServiceIndexFileHandle );
-#ifdef _DEBUG
-				RDebug::Print( _L("adopt error: %d" ), err );
-#endif
-				// Copy the message handle so we can reply to the message when
-				// the service observer gets called
-				iPendingMessage = aMessage;
-
-				HandleNewFileL( this, file, paramPack().iType );
-
-				break;
-				}
-
-			case EGetFilenameArrayLength:
-				{
-				// Calculate the size of the buffer needed to transfer the 
-				//filenames to the client side
-				TPckgBuf< TInt > lengthBuf;
-				TInt count( iFilenameArray->MdcaCount() );
-#ifdef _DEBUG
-				RDebug::Print( _L("Filename array count: %d"), count );
-#endif
-				TInt length = sizeof( TInt ) + count * sizeof( TUint16 );
-				for ( TInt i( 0 ); i < count; i++ )
-					{
-					length += iFilenameArray->MdcaPoint( i ).Size();
-					}
-
-				lengthBuf = length;
-				aMessage.WriteL( ENewServiceIndexParams, lengthBuf );
-				aMessage.Complete( KErrNone );
-				break;
-				}
-
-			case EGetFilenameArray:
-				{
-				// Allocate a buffer with the same size as in the client side
-				TInt length( aMessage.GetDesMaxLengthL( ENewServiceIndexParams ) );
-				HBufC8* buffer = HBufC8::NewLC( length );
-
-				TPtr8 ptr = buffer->Des();
-				RDesWriteStream stream( ptr );
-
-				// Stream the filename array to the buffer
-				TInt count( iFilenameArray->MdcaCount() );
-				stream.WriteInt32L( count );
-				for ( TInt i( 0 ); i < count; i++ )
-					{
-					TPtrC filename = iFilenameArray->MdcaPoint( i );
-					stream.WriteUint16L( filename.Length() );
-					stream.WriteL( filename );
-					}
-
-				stream.CommitL();
-
-				// Return the buffer to the client side
-				aMessage.WriteL( ENewServiceIndexParams, ptr );
-				aMessage.Complete( KErrNone );
-				CleanupStack::PopAndDestroy();	// buffer
-
-				// notify the application that the transfer is complete and
-				// it's ok to quit / whatever
-				ServiceCompleteL();
-
-				break;
-				}
-			default:
-			    {
-			    // Complete old message if still open
-                if ( !iPendingMessage.IsNull() )
-                    {
-                    iPendingMessage.Complete( KErrCancel );	
-                    }
-
-				CApaAppServiceBase::ServiceL(aMessage);
-				break;
-			    }
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::HandleCompletedNewServiceL
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CNewFileServiceBase::HandleCompletedNewServiceL( 
-														TBool aReturnValue )
-	{
-	// Message was already completed in ServiceL
-	if ( iPendingMessage.IsNull() )
-	    {
-	    return;
-	    }
-
-	TNewServiceParamPack pack;
-	TPckgBuf< TNewServiceParamPack > paramPack;
-	pack.iReturnValue = aReturnValue;
-	paramPack = pack;
-
-	iPendingMessage.WriteL( ENewServiceIndexParams, paramPack );
-    if(iError != KErrAbort)
-    	{
-  	    iPendingMessage.Complete( KErrNone );
-    	}
-    else
-    	{
-  	    iPendingMessage.Complete( KErrAbort );
-  	    iError = 0;    		
-    	}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::GenericParams
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CAiwGenericParamList* CNewFileServiceBase::GenericParams()
-	{
-	return iGenericParams;
-	}
-	
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::GenericParams
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CNewFileServiceBase::GetErrorCode()
-	{
-	return iError;
-	}
-	
-	
-// ---------------------------------------------------------------------------
-// CNewFileServiceBase::GenericParams
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CNewFileServiceBase::SetErrorCode(TInt aError)
-	{
-    iError = aError;
-	}	
-
-
-//  End of File
--- a/voicerecorder/NewServiceSrc/CNewFileServiceClientImpl.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,255 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Implementation for Client side API
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <s32mem.h>
-#include <e32cmn.h>
-#include <AiwGenericParam.h>
-
-#include "NewFileServiceClient.h"
-#include "RNewFileServiceClient.h"
-#include "CNewFileServiceClientImpl.h"
-
-#include <VoiceRecorderUID.h>
-#include <CcorUiConstants.h>
-#include <avkon.hrh>
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// ----------------------------------------------------------------------------
-// NewFileServiceFactory::NewClientL
-//
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CNewFileServiceClient* NewFileServiceFactory::NewClientL()
-	{
-	return CNewFileServiceClientImpl::NewL();
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::NewL
-//
-// ----------------------------------------------------------------------------
-//
-CNewFileServiceClientImpl* CNewFileServiceClientImpl::NewL()
-	{
-	CNewFileServiceClientImpl* self =
-					new( ELeave )CNewFileServiceClientImpl;
-	CleanupStack::PushL( self );
-	self->ConstructL();
-	CleanupStack::Pop();
-	return self;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::~CNewFileServiceClientImpl
-//
-// ----------------------------------------------------------------------------
-//
-CNewFileServiceClientImpl::~CNewFileServiceClientImpl()
-	{
-	delete iServerAppMonitor;
-	iClient.Close();
-	if(iClient.iError == KErrAbort)
-		{
-		iClient.iError = 0;
-		MAknServerAppExitObserver::HandleServerAppExit(EAknCmdExit);	
-		}
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::ConstructL
-//
-// ----------------------------------------------------------------------------
-//
-void CNewFileServiceClientImpl::ConstructL()
-	{
-	iClient.SetFileServiceClient(this);
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::NewFileL
-//
-// ----------------------------------------------------------------------------
-//
-TBool CNewFileServiceClientImpl::NewFileL( CDesCArray& aFileNames,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType,
-							   TBool aMultipleFiles )
-	{
-	TUid uid( KNullUid );
-
-	switch ( aFileType )
-		{
-		case ENewFileServiceAudio:
-			{
-			uid = TUid::Uid( KVoiceRecorderAppUID3 );
-			break;
-			}
-
-		case ENewFileServiceVideo:
-		case ENewFileServiceImage:
-			{
-			uid = KUidCamcorder;
-			break;
-			}
-		default:
-		    {
-			User::Leave( KErrNotSupported );
-		    }
-		};
-
-	return NewFileL( uid, aFileNames, aParams, aFileType, aMultipleFiles );
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::HandleServerAppExit
-//
-// ----------------------------------------------------------------------------
-//
-void CNewFileServiceClientImpl::HandleServerAppExit(TInt aReason)
-    {
-#ifdef _DEBUG    
-    RDebug::Print( _L("CNewFileServiceClientImpl::HandleServerAppExit") );
-#endif
-    iClient.Close();
-    MAknServerAppExitObserver::HandleServerAppExit(aReason);
-    }
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::NewFileL
-//
-// ----------------------------------------------------------------------------
-//
-TBool CNewFileServiceClientImpl::NewFileL( TUid aApplicationUid,
-							   CDesCArray& aFileNames,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType,
-							   TBool aMultipleFiles )
-	{
-	iClient.ConnectChainedAppL( aApplicationUid );
-
-	if ( !iServerAppMonitor )
-		{
-		iServerAppMonitor = CApaServerAppExitMonitor::NewL( iClient, *this,
-												CActive::EPriorityStandard );
-		}
-
-	HBufC8* serializedParams = SerializeGenericParamListLC( aParams );
-	TBool ret = iClient.NewFileL( aFileNames, serializedParams, 
-								  aFileType, aMultipleFiles );
-	CleanupStack::PopAndDestroy();	// serializedParams
-	return ret;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::NewFileL
-//
-// ----------------------------------------------------------------------------
-//
-TBool CNewFileServiceClientImpl::NewFileL( RFile& aFileHandle,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType )
-	{
-	TUid uid( KNullUid );
-
-	switch ( aFileType )
-		{
-		case ENewFileServiceAudio:
-			{
-			uid = TUid::Uid( KVoiceRecorderAppUID3 );
-			break;
-			}
-
-		case ENewFileServiceVideo:
-		case ENewFileServiceImage:
-			{
-			uid = KUidCamcorder;
-			break;
-			}
-		default:
-		    {
-		    User::Leave( KErrNotSupported );
-		    }
-		};
-
-	return NewFileL( uid, aFileHandle, aParams, aFileType );
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::NewFileL
-//
-// ----------------------------------------------------------------------------
-//
-TBool CNewFileServiceClientImpl::NewFileL( TUid aApplicationUid,
-							   RFile& aFileHandle,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType )
-	{
-
-	iClient.ConnectChainedAppL( aApplicationUid );
-
-	if ( !iServerAppMonitor )
-		{
-		iServerAppMonitor = CApaServerAppExitMonitor::NewL( iClient, *this,
-												CActive::EPriorityStandard );
-		}
-
-	HBufC8* serializedParams = SerializeGenericParamListLC( aParams );
-	TBool ret = iClient.NewFileL( aFileHandle, serializedParams, aFileType );
-
-	CleanupStack::PopAndDestroy();	// serializedParams
-
-	return ret;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CNewFileServiceClientImpl::SerializeGenericParamListLC
-//
-// ----------------------------------------------------------------------------
-//
-HBufC8* CNewFileServiceClientImpl::SerializeGenericParamListLC( 
-												CAiwGenericParamList* aParams )
-	{
-	if ( !aParams )
-		{
-		HBufC8* dummy = HBufC8::NewLC( 0 );	// return dummy
-		return dummy;
-		}
-
-	TInt size( aParams->Size() );
-	HBufC8* serialized = HBufC8::NewLC( size );
-	TPtr8 ptr = serialized->Des();
-	RDesWriteStream stream( ptr );
-	aParams->ExternalizeL( stream );
-	stream.Close();
-	return serialized;
-	}
-
-//  End of File
--- a/voicerecorder/NewServiceSrc/CNewFileServiceClientImpl.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,93 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Implementation for client side API
-*
-*/
-
-
-
-#ifndef NEWFILESERVICECLIENTIMPL_H
-#define NEWFILESERVICECLIENTIMPL_H
-
-//  INCLUDES
-#include <NewFileService.hrh>
-#include <e32std.h>
-#include <badesca.h>
-#include <AknServerApp.h>
-#include <NewFileServiceClient.h>
-
-// FORWARD DECLARATIONS
-class RFile;
-class CApaServerAppExitMonitor;
-class CAiwGenericParamList;
-
-// CLASS DECLARATION
-
-/**
-*  Actual implementation class for client side API
-*
-*  @lib NewService.lib
-*  @since Series 60 3.0
-*/
-class CNewFileServiceClientImpl : public CNewFileServiceClient,
-								  public MAknServerAppExitObserver
-    {
-
-    public: // New functions
-
-		static CNewFileServiceClientImpl* NewL();
-
-		~CNewFileServiceClientImpl();
-
-    public: // From CNewFileServiceClient
-		TBool NewFileL( CDesCArray& aFileNames,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType,
-							   TBool aMultipleFiles );
-
-		TBool NewFileL( TUid aApplicationUid,
-							   CDesCArray& aFileNames,
-							   	CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType,
-							   TBool aMultipleFiles );
-
-		TBool NewFileL( RFile& aFileHandle,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType );
-
-		TBool NewFileL( TUid aApplicationUid,
-							   RFile& aFileHandle,
-							   CAiwGenericParamList* aParams,
-							   TNewServiceFileType aFileType );
-
-    public: // from MApaServerAppExitObserver
-		void HandleServerAppExit( TInt aReason );
-
-	private:
-
-		void ConstructL();
-
-		HBufC8* SerializeGenericParamListLC( CAiwGenericParamList* aParams );
-
-	private:
-
-		CApaServerAppExitMonitor* iServerAppMonitor;
-
-		RNewFileServiceClient iClient;
-
-    };
-
-#endif      // NEWFILESERVICECLIENTIMPL_H
-
-// End of File
--- a/voicerecorder/NewServiceSrc/CNewFileServiceDiscovery.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Empty implementation for discovery class
-*
-*/
-
-
-
-// INCLUDE FILES
-#include    "CNewFileServiceDiscovery.h"
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CNewFileServiceDiscovery::CNewFileServiceDiscovery
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CNewFileServiceDiscovery::CNewFileServiceDiscovery()
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// CNewFileServiceDiscovery::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CNewFileServiceDiscovery::ConstructL()
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// CNewFileServiceDiscovery::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CNewFileServiceDiscovery* CNewFileServiceDiscovery::NewL()
-    {
-    CNewFileServiceDiscovery* self = new( ELeave ) CNewFileServiceDiscovery;
-    
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop();
-
-    return self;
-    }
-
-    
-// Destructor
-CNewFileServiceDiscovery::~CNewFileServiceDiscovery()
-    {
-    
-    }
-
-
-//  End of File  
--- a/voicerecorder/NewServiceSrc/DllMain.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*      Dll entry point
-*
-*
-*/
-
-
-#include <e32base.h>
-
--- a/voicerecorder/NewServiceSrc/NewFileServiceDefs.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Definitions for the API
-*
-*/
-
-
-
-#ifndef NEWSERVICEDEFS_H
-#define NEWSERVICEDEFS_H
-
-//  INCLUDES
-#include <apaserverapp.h>
-
-#define NEWSERVICEUID 0x101F8861
-
-// DATA TYPES
-enum TIpcMessageIds
-	{
-	ECreateNewFile = RApaAppServiceBase::KServiceCmdBase,
-	ENewFileToHandle,
-	EGetFilenameArrayLength,
-	EGetFilenameArray
-	};
-
-enum TIpcNewFileArgumentIndices
-    {
-    ENewServiceIndexParams = 0,
-    ENewServiceIndexFsHandle,
-    ENewServiceIndexFileHandle,
-    ENewServiceIndexFileName
-    };
-
-/**
-*  Parameter class transferred through client-server interface.
-*
-*  @since Series 60 3.0
-*/
-class TNewServiceParamPack
-	{
-	public:
-		TNewServiceFileType iType;
-		TBool iMultipleFiles;
-		TBool iReturnValue;
-	};
-
-
-#endif      // NEWSERVICEDEFS_H
-
-// End of File
--- a/voicerecorder/NewServiceSrc/RNewFileServiceClient.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,236 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Service implementation class
-*
-*/
-
-
-
-// INCLUDE FILES
-#include    "RNewFileServiceClient.h"
-#include    "NewFileServiceDefs.h"
-#include    "cnewfileserviceserverobserver.h"
-#include <NewFileServiceClient.h>
-
-#include <s32mem.h>
-
-
-// ============================ MEMBER FUNCTIONS =============================
-
-// ---------------------------------------------------------------------------
-// RNewFileServiceClient::RNewFileServiceClient
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ---------------------------------------------------------------------------
-//
-RNewFileServiceClient::RNewFileServiceClient()
-    {
-    }
-
-
-// ---------------------------------------------------------------------------
-// RNewFileServiceClient::~RNewFileServiceClient
-// Destructor
-// ---------------------------------------------------------------------------
-//
-RNewFileServiceClient::~RNewFileServiceClient()
-    {
-    delete iObserver;
-    
-    if ( iWait.IsStarted() )
-        {
-        iWait.AsyncStop();
-        }
-
-    }
-
-
-// ---------------------------------------------------------------------------
-// RNewFileServiceClient::ServiceUid
-// 
-// ---------------------------------------------------------------------------
-//
-TUid RNewFileServiceClient::ServiceUid() const
-	{
-	return TUid::Uid( NEWSERVICEUID );
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// RNewFileServiceClient::NewFileL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool RNewFileServiceClient::NewFileL( RFile& aFile, TDesC8* aGenericParams,
-													TNewServiceFileType aType )
-	{
-	TIpcArgs args;
-
-	TNewServiceParamPack pack;
-	pack.iType = aType;
-	pack.iMultipleFiles = EFalse;
-
-	TPckgBuf< TNewServiceParamPack > paramPack;
-	paramPack = pack;
-	args.Set( 0, &paramPack );
-
-
-	if ( aGenericParams )
-	{
-		args.Set( ENewServiceIndexFileName, aGenericParams );
-	}
-
-	TInt err = aFile.TransferToServer( args, ENewServiceIndexFsHandle,
-	                                   ENewServiceIndexFileHandle );
-#ifdef _DEBUG	
-	RDebug::Print( _L("transfer to server error: %d"), err );
-#endif	
-
-    iObserver = CNewFileServiceServerObserver::NewL();
-
-  	// Send through IPC, pass iObservers TRequestStatus to server
-	SendReceive( ENewFileToHandle, args, iObserver->IssueWait( this ) );
-
-    // Wait until server notifies iObserver
-    if ( !iWait.IsStarted() )
-        {
-        iWait.Start(); // CSI: 10 #
-        }
-
-	return paramPack().iReturnValue;
-	}
-
-
-// ---------------------------------------------------------------------------
-// RNewFileServiceClient::NewFileL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool RNewFileServiceClient::NewFileL( CDesCArray& aFilenames, 
-									   TDesC8* aGenericParams,
-									   TNewServiceFileType aType, 
-									   TBool aMultipleFiles )
-	{
-#ifdef _DEBUG	
-	RDebug::Print( _L("RNewFileServiceClient::NewFileL") );
-#endif
-
-	TIpcArgs args;
-
-	TNewServiceParamPack pack;
-	pack.iType = aType;
-	pack.iMultipleFiles = aMultipleFiles;
-
-	TPckgBuf< TNewServiceParamPack > paramPack = pack;
-	args.Set( ENewServiceIndexParams, &paramPack );
-
-	if ( aGenericParams )
-	{
-		args.Set( ENewServiceIndexFileName, aGenericParams );
-	}
-	else
-	{
-		args.Set( ENewServiceIndexFileName, &KNullDesC() );
-	}
-
-    iObserver = CNewFileServiceServerObserver::NewL();
-
-	// Send through IPC, pass iObservers TRequestStatus to server
-	SendReceive( ECreateNewFile, args, iObserver->IssueWait( this )  );
-
-    // Wait until server notifies iObserver
-    if ( !iWait.IsStarted() )
-        {
-        iWait.Start(); // CSI: 10 #
-        }
-
-	pack = paramPack();
-
-	if ( !pack.iReturnValue )
-		{
-#ifdef _DEBUG
-		RDebug::Print( _L("RNewFileServiceClient::NewFileL - return value received: False") );
-#endif	
-		// don't bother with filename array if the user canceled	
-		return EFalse;		
-		}
-
-#ifdef _DEBUG
-	RDebug::Print( _L("RNewFileServiceClient::NewFileL - return value received: True") );
-#endif	
-
-	TPckgBuf< TInt > lengthBuf;
-	args.Set( ENewServiceIndexParams, &lengthBuf );
-	User::LeaveIfError( SendReceive( EGetFilenameArrayLength, args ) );
-
-	TInt length( lengthBuf() );
-
-	HBufC8* buffer = HBufC8::NewLC( length );
-	TPtr8 ptr = buffer->Des();
-	args.Set( ENewServiceIndexParams, &ptr );
-	User::LeaveIfError( SendReceive( EGetFilenameArray, args ) );
-
-	// Unpack filename array
-	RDesReadStream stream;
-	stream.Open( ptr );
-
-	TInt count( stream.ReadInt32L() );
-
-	for ( TInt i( 0 ); i < count; i++ )
-		{
-		TInt length( stream.ReadInt16L() );
-		TFileName filename;
-		stream.ReadL( filename, length );
-#ifdef _DEBUG
-		RDebug::Print( filename );
-#endif		
-		aFilenames.AppendL( filename );
-		}
-
-	CleanupStack::PopAndDestroy(); // buffer
-
-
-	return ETrue;
-	}
-
-
-// ----------------------------------------------------------------------------
-// RNewFileServiceClient::ServerRequestReady
-// 
-// ----------------------------------------------------------------------------
-//
-void RNewFileServiceClient::ServerRequestReady( TInt aError )
-    {
-
-    if (aError == KErrAbort)
-    	{
-    		iError = KErrAbort;
-    	}
-    // Server processed command and active object was notified and
-    // client can continue now
-    if ( iWait.IsStarted() )
-        {
-        iWait.AsyncStop();
-        }
-    }
-
-
-void RNewFileServiceClient::SetFileServiceClient(CNewFileServiceClient* aClient)
-	{
-	iNewFileServiceClient = aClient;	
-	}
-
-
-//  End of File
--- a/voicerecorder/NewServiceSrc/RNewFileServiceClient.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Service implementation class
-*
-*/
-
-
-
-#ifndef RNEWFILESERVICECLIENT_H
-#define RNEWFILESERVICECLIENT_H
-
-//  INCLUDES
-#include <AknServerApp.h>
-#include <e32base.h>
-#include <f32file.h>
-#include <badesca.h>
-#include <NewFileService.hrh>
-
-// FORWARD DECLARATIONS
-class CNewFileServiceServerObserver;
-class CNewFileServiceClient;
-
-
-class MNewFileServiceServerObserver
-	{
-	public: // New functions
-
-		/**
-		* This is a callback function which is called when a IHF mode changes.
-		* User must derive his class from MVRIHFObserver
-		* and implement this method if he is to use notify services.
-		*/
-		virtual void ServerRequestReady( TInt aError ) = 0;
-    };
-
-/**
-*  Class that implements the actual client-server communication
-*
-*  @lib NewService.lib
-*  @since Series 60 3.0
-*/
-class RNewFileServiceClient : public RAknAppServiceBase,
-    public MNewFileServiceServerObserver
-    {
-
-   public:  // Constructors and destructor
-
-        /**
-        * C++ default constructor.
-        */
-        RNewFileServiceClient();
-
-        /**
-        * Destructor.
-        */
-        virtual ~RNewFileServiceClient();
-
-    public: // New functions
-
-        /**
-        * Handles the communication between server application.
-        * After this synchronic operation the new file service has completed
-        * and the new file is available for the client
-        * @since Series 60 3.0
-        * @param aFile File handle to media file
-        * @param aGenericParams Parameters passed to server
-        * @param aType Type of the media file
-        * @param aMultipleFiles ETrue if multiple files can be created
-        * @return Was the creation succesful
-        */
-        TBool NewFileL( RFile& aFile, TDesC8* aGenericParams, TNewServiceFileType aType );
-        TBool NewFileL( CDesCArray& aFilenames, TDesC8* aGenericParams, TNewServiceFileType aType, TBool aMultipleFiles );
-
-        void SetFileServiceClient(CNewFileServiceClient*);
-        
-        CNewFileServiceClient* iNewFileServiceClient;
-        
-        TInt iError;
-
-    public: // Functions from base classes
-
-        /**
-        * Returns the Uid of the service
-        * @since Series 60 3.0
-        */
-        TUid ServiceUid() const;
-
-        /**
-        * From MNewFileServiceServerObserver
-        */
-        void ServerRequestReady( TInt aError );
-
-    private:
-		// Wait object used to synchronise asynchronic server request
-        CActiveSchedulerWait iWait;
-
-		// Active object observing server request completion. Owned.
-        CNewFileServiceServerObserver* iObserver;
-     };
-
-#endif      // RNEWFILESERVICECLIENT_H
-
-// End of File
--- a/voicerecorder/NewServiceSrc/cnewfileserviceserverobserver.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,122 +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:  CActive-derived class for synchronizing server commands.
-*
-*/
-
-
-// INCLUDE FILES
-#include "cnewfileserviceserverobserver.h"
-#include "RNewFileServiceClient.h"
-
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceServerObserver::CNewFileServiceServerObserver
-//
-// ---------------------------------------------------------------------------
-//
-CNewFileServiceServerObserver::CNewFileServiceServerObserver()
-    : CActive( EPriorityNormal )
-    {
-    CActiveScheduler::Add( this );    
-    }
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceServerObserver::ConstructL
-//
-// ---------------------------------------------------------------------------
-//
-void CNewFileServiceServerObserver::ConstructL()
-    {
-
-    }
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceServerObserver::NewL
-//
-// ---------------------------------------------------------------------------
-//
-CNewFileServiceServerObserver* CNewFileServiceServerObserver::NewL()
-    {
-    CNewFileServiceServerObserver* self = new( ELeave ) CNewFileServiceServerObserver;
-    CleanupStack::PushL( self );
-    self->ConstructL();    
-    CleanupStack::Pop( self );
-    return self;
-    }
-
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceServerObserver::~CNewFileServiceServerObserver
-//
-// ---------------------------------------------------------------------------
-//
-CNewFileServiceServerObserver::~CNewFileServiceServerObserver()
-    {
-    iObserver = NULL;
-RDebug::Print( _L("VoiceRecorder::delete cnewfileserviceobserver") );	    
-    Cancel();
-    }
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceServerObserver::RunL
-//
-// ---------------------------------------------------------------------------
-//
-void CNewFileServiceServerObserver::RunL()
-    {
-    RDebug::Print( _L("VoiceRecorder CNewFileServiceServerObserver::RunL") );
-    if ( iObserver )
-        {
-        iObserver->ServerRequestReady( iStatus.Int() );
-        }
-    }
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceServerObserver::DoCancel
-//
-// ---------------------------------------------------------------------------
-//
-void CNewFileServiceServerObserver::DoCancel()
-    {
-    RDebug::Print( _L("VoiceRecorder CNewFileServiceServerObserver::DoCancel") );            
-    if ( iObserver )
-        {
-        iObserver->ServerRequestReady( KErrCancel );
-        }
-
-    }
-
-
-// ---------------------------------------------------------------------------
-// CNewFileServiceServerObserver::IssueWait
-//
-// ---------------------------------------------------------------------------
-//
-TRequestStatus& CNewFileServiceServerObserver::IssueWait( 
-									MNewFileServiceServerObserver* aObserver )
-    {
-    iObserver = aObserver;
-    
-    SetActive();
-    RDebug::Print( _L("VoiceRecorder CNewFileServiceServerObserver::IssueWait") );    
-    return iStatus;
-    }
--- a/voicerecorder/NewServiceSrc/cnewfileserviceserverobserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-/*
-* Copyright (c) 2006-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:  CActive-derived class for synchronizing server commands
-*
-*/
-
-#ifndef CNEWFILESERVICESERVEROBSERVER_H
-#define CNEWFILESERVICESERVEROBSERVER_H
-
-//  INCLUDES
-#include <e32base.h>
-
-// FORWARD DECLARATIONS
-class MNewFileServiceServerObserver;
-
-/**
- *  CActive-derived class for synchronizing server commands
- *
- *  @lib newservice.lib
- *  @since S60 v3.0
- */
-NONSHARABLE_CLASS( CNewFileServiceServerObserver )
-    : public CActive
-    {
-public:
-    static CNewFileServiceServerObserver* NewL();
-
-    ~CNewFileServiceServerObserver();
-
-    /**
-     * Wait until RunL is called from server
-     *
-     * @since S60 3.1
-     * @param aObserver The object that is notified when request completes
-     * @return Reference to this objects TRequestStatus so that it can be
-     *         supplied to server
-     */
-    TRequestStatus& IssueWait( MNewFileServiceServerObserver* aObserver );
-
-private: // from base class CActive
-    /**
-     * From CActive
-     */
-    void RunL();
-    void DoCancel();
-
-protected:
-
-
-private:
-    CNewFileServiceServerObserver();
-
-    void ConstructL();
-
-private: // data
-    MNewFileServiceServerObserver* iObserver;
-    };
-
-#endif // CNEWFILESERVICESERVEROBSERVER_H
--- a/voicerecorder/RecViewInc/CVRRecView.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,416 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     CVRRecView is an CAknView inherited view class that implements
-*     the recorder view functionality of Voicer Recorder.
-*     It owns the view container (which, in turn, owns all the ui controls)
-*     and the view model.
-*
-*/
-
-
-#ifndef __CVRRECVIEW_H__
-#define __CVRRECVIEW_H__
-
-// INCLUDES
-#include <aknview.h>
-#include <VoiceRecorderContexts.h>
-#include <voicerecorder.rsg>
-#include <AknWaitDialog.h>
-
-#include "MVRSelectionProvider.h"
-#include "MVRLayoutChangeObserver.h"
-#include "voicerecorder.hrh"
-#include "VRUSBStateHanlder.h"
-
-// FORWARD DECLARATIONS
-class CAknLaunchAppService;
-class CSendUi;
-class CVRRecViewContainer;
-class CVRRecViewActivationContainer;
-class CVRRecViewModel;
-
-enum TDialogTypeID {
-        EDialogForWaitStorageCard = 0,
-        EDialogForWaitUSBPluggingOut
-    };
-
-// CLASS DEFINITION
-/**
- * CVRRecView is an CAknView inherited view class that implements
- * the recorder view functionality of Voicer Recorder.
- * It owns the view container (which, in turn, owns all the ui controls)
- * and the view model.
- */
-class CVRRecView : public CAknView,
-        public MVRSelectionProvider,
-        public MVRLayoutChangeObserver,
-        public MVRUSBStateObserver,
-        public MProgressDialogCallback
-    {
-private:
-    // nested classes
-
-        /*
-        * One shot class for model activation. Receives a pointer to
-        * constructed CVRRecViewModel object and activates it asynchronically
-        * when Activate() is called.
-        */
-        NONSHARABLE_CLASS( CVRRecViewModelActivator ) 
-            : public CAsyncOneShot
-            {
-            public:  // constructor and destructor
-                CVRRecViewModelActivator( CVRRecViewModel* aModel );
-                ~CVRRecViewModelActivator(); 
-
-            public: // New functions:
-
-				/**
-				 * Activate model in given context
-                 */
-                void Activate( TVRRecViewContexts aContext, TCallBack aCallback );
-                
-            private: // Functions from base classes
-
-                /**
-                 * From CActive.
-                 */
-                void RunL();
-                void DoCancel();
-
-            private: // Data:
-
-                /*
-                * State machine model, not owned
-                */
-                CVRRecViewModel* iModel;
-
-				/*
-				* Context that is used to activate model in RunL
-				*/                
-                TVRRecViewContexts iContext;
-                
-                /*
-                * Callback that is called after model is activated
-                */
-                TCallBack iCallback;
-            };
-        
-        /*
-        * One shot class for note pop-up
-        */
-        NONSHARABLE_CLASS( CVRRecViewDialogActivator ) 
-            : public CAsyncOneShot
-            {
-            public:  // constructor and destructor
-                CVRRecViewDialogActivator( CVRRecViewModel* aModel);
-                ~CVRRecViewDialogActivator(); 
-                
-            public: // new method
-                void SetDialogType(TDialogTypeID aType);
-                
-                void SetViewContexts(TVRRecViewContexts aContext);
-                
-            private: // Functions from base classes
-
-                /**
-                 * From CActive.
-                 */
-                void RunL();
-                void DoCancel();
-
-            private: // Data:
-
-                /*
-                * State machine model, not owned
-                */
-                CVRRecViewModel* iModel;
-                
-                /*
-                * The type of dialog
-                */
-                TDialogTypeID iType;
-                
-                /*
-                * Context that is used to activate model
-                */                
-                TVRRecViewContexts iContext;  
-            };
-	
-	
-	public: // Constructors and destructor
-
-		/**
-		* Static constructor.
-		* @param aViewResourceId The resource used in view construction.
-		* @param aModelResourceId The resource used in model construction.
-		*/
-		IMPORT_C static CVRRecView* NewLC( TInt aViewResourceId,
-										   TInt aModelResourceId );
-
-		/**
-		* Destructor
-		*/
-		~CVRRecView();
-
-	private: // Constructors
-
-		/**
-		* Default constructor.
-		* The inline saves a few bytes.
-		*/
-		inline CVRRecView() {};
-
-		/**
-		* 2nd phase constructor.
-		* @param aViewResourceId The resource used in view construction.
-		* @param aModelResourceId The resource used in model construction.
-		*/
-		void ConstructL( TInt aViewResourceId, TInt aModelResourceId );
-
-	public: // from MVRSelectionProvider
-
-		/**
-		* Returns an array of currently selected files.
-		* Ownership is transferred. Caller must destroy the returned array.
-		* @param aStyle Used to return the style of selection
-		*               (empty/focused/marked)
-		* @return An array of selected files (0 or more).
-		*/
-		MDesCArray* GetSelectedFilesLC( TVRSelectionStyle& aStyle ) const;
-
-		/**
-		* Pass the file handle to recview.
-		* Recorded memo is placed there.
-		* @param aFile File handle
-		*/
-		void SetFileHandle( RFile& aFile );
-		
-		/**
-		* Return the recorded open file handle
-		* @param aFile File handle
-		*/
-		RFile& GetFile();		
-
-	public: // from MVRLayoutChangeObserver
-
-		/**
-		* This method gets called by the AppUI when a dynamic layout change
-		* event occurs.
-		*/
-		void LayoutChangedL( TInt aType );
-
-	public: // from CAknView
-		
-		/**
-		* Returns the id of the view.
-		* @return KVRRecViewUID
-		*/
-		TUid Id() const;
-
-		/**
-        * Handles menu commands.
- 		* @param aCommand Command identifier.
-        */
-		void HandleCommandL( TInt aCommandId );
-
-	protected: // from CAknView
-
-		/**
-		* Dynamically initialises a menu pane. The Uikon framework calls this
-		* function, immediately before the menu pane is activated.
-		* @param aResourceId Resource ID identifying a menu pane to initialise
-		* @param aMenuPane The in-memory representation of the menu pane.
-		*/
-		void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
-
-        /** 
-         * Foreground event handling function.
-         *
-         * Called by UI Framework when view switches to and from foreground
-         *  
-         * @param aForeground True if view is switched to foreground else false.
-         */	
-//		void HandleForegroundEventL( TBool aForeground );
-		
-	private: // from CAknView
-		
-        /**
- 		* Is called by the framework when the view is activated.
-		* @param aPrevViewId Id of the previous view that was active
-		* @param aCustomMessageId Id of the custom message passed
-		* @param aCustomMessage Descriptor containing the custom message data
-        */
-		void DoActivateL( const TVwsViewId& aPrevViewId,
-						  TUid aCustomMessageId,
-						  const TDesC8& aCustomMessage );
-
-        /**
- 		* Is called by the framework when the view is deactivated.
-        */
-		void DoDeactivate();
-
-	protected: // from MCoeView
-
-		/**
-		* Is called by the view server when the application goes to background.
-		*/
-		void ViewDeactivated();
-
-		/**
-		* Is called by the view server when the application goes to the foreground.
-		*/
-		void ViewActivatedL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage);
-
-	public: // from CAknView
-
-		/**
-		* Returns a pointer to the CBA container
-		* Calls base class Cba() (which is protected)
-		*/
-		CEikButtonGroupContainer* Cba() const;
-
-    	/**
-		* Returns a the StateId
-		* 
-		*/
-        TUint GetStateId() const;
-
-		/**
-		* Returns embedding status.
-		* @param ETrue if the current context is an embedded one.
-		*/
-		TBool IsEmbedded() const;
-
-        /**
-		* Returns the active quality setting.
-		* @return Quality setting of the active memo
-		*/
-		TVRQuality Quality() const;
-
-	private: // new methods
-
-		/**
-		* Dynamically adds a Send Via menu item plus associated cascade
-		* to the given menu pane.
-		* @param aResourceId Resource ID identifying a menu pane
-		* @param aMenuPane The in-memory representation of the menu pane.
-		*/
-		void AddSendToMenuL( TInt aResourceId, CEikMenuPane* aMenuPane );
-
-		/*
-		* Trappable version of DoActivateL. Activates an empty UI container
-		* and starts asynchronic model activation.
-		* See CAknView::DoActivateL for parameters
-		*/
-		void ReallyDoActivateL( const TVwsViewId& aPrevViewId,
-								  TUid aCustomMessageId,
-								  const TDesC8& aCustomMessage );
-
-    /*
-     * Called by iModelActivator object after model has been
-     * fully activated.
-     * @param aRecView Always a valid pointer to CVRRecView object
-     * @return Return value required by TCallBack, not used.
-     */
-    static TInt ActivationCallBack(TAny* aRecView);
-
-    /*
-     * Non-static method called by ActivationCallBack. Activates
-     * the actual UI container and deletes the empty one.
-     */
-    void ActivateContainerL();    
-    
-    /*
-     * Check the current state of drives
-     */
-    void CheckDriveState();    
-    
-    /**
-    * This method show a dialog to warn user to insert the SD card.
-    * @return if user insert the SD card or not
-    */
-    static TBool ShowDialogForWaitStorageCardL();
-    
-    /**
-     * Make user insert the SD card, and choose SD card as the memo storage
-     */
-    void SetDriveL();
-   
-public:
-    virtual TInt HandleUsbPlugInL();
-    virtual TInt HandleUsbPlugOutL();
-    
-    virtual void DialogDismissedL( TInt aButtonId );
-
-private:
-    // data
-
-    /**
-     * Pointer to the UI control container. Owned.
-     */
-    CVRRecViewContainer* iContainer;
-
-    /**
-     * Pointer to the container that is displayed during
-     * model construction. Owned
-     */
-    CVRRecViewActivationContainer* iActivationContainer;
-
-		/**
-		* Pointer to the view model (statemachine). Owned.
-		*/
-		CVRRecViewModel* iModel;
-
-		/**
-		* SendUi used to implement the Send Via feature. Owned.
-		*/
-		CSendUi* iSendUi;			
-		
-		/**
-		* One shot object that is used to activate model in correct context
-		* asynchronically. Owned.
-		*/
-		CVRRecViewModelActivator* iModelActivator;
-		
-		/**
-        * One shot object that is used to pop up the note
-        */
-		CVRRecViewDialogActivator* iDialogActivator;
-
-    /**
-     * The type of dialog
-     */
-	TDialogTypeID iDialogType;
-		
-    /**
-     * The command that passed to Handlecommand
-     * 
-     */
-    TInt iCommand;
-
-    CAknLaunchAppService* iLaunchService;
-    
-    CAknWaitDialog* iUsbWaitDialog;
-    
-    CVRUSBStateHanlder* iUSBStateHandler;
-    
-    /*
-    * Context that is used to activate model
-    */                
-    TVRRecViewContexts iContext;
-    };
-
-#endif // __CVRRECVIEW_H__
-
--- a/voicerecorder/RecViewInc/RecView.rh	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,94 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     Defines resource structures for defining recording view states (visual).
-*     The file can be included in a resource file only.
-*
-*/
-
-
-#ifndef __RECVIEW_RH__
-#define __RECVIEW_RH__
-
-#include <uikon.rh>
-#include <badef.rh>
-
-#include "voicerecorder.hrh"
-
-STRUCT VR_TRANSITION
-	{
-	BYTE cmd = 0;
-	BYTE next = 0;
-	BYTE function = 0;
-	}
-
-STRUCT VR_CONTEXT
-	{
-	BYTE id;
-	STRUCT transition;
-	STRUCT states[];
-	}
-
-STRUCT VR_STATE
-	{
-	BYTE id;
-	STRUCT transitions[];
-	}
-
-
-STRUCT VR_STATEMACHINE
-	{
-	STRUCT labelsets[];			// a VR_LABELSET array
-	STRUCT labelLayouts[];			// a VR_LABEL array
-	STRUCT states[];			// a VR_VISUAL_STATE array
-	STRUCT contexts[];			// a VR_CONTEXT array
-	}
-
-STRUCT VR_VISUAL_STATE
-	{
-	LLINK menubar;
-	LLINK cba;
-	LTEXT< VRLABELMAXLENGTH > status;
-	BYTE labelSetId = 0;
-	BYTE hasVolumeControl = 0;
-	BYTE hasProgressBar = 1;
-	BYTE focusButton = 0;
-	BYTE stateID = 0;
-	STRUCT buttons[];
-	}
-	
-STRUCT VR_LABELSET
-	{
-	STRUCT labels[];	// an LTEXT array
-	}
-
-STRUCT VR_BUTTON_INFO
-	{
-	WORD commandId = 0;
-	BYTE state = 0;
-	}
-
-STRUCT VR_LABEL_LINK
-	{
-	LLINK euroLabelId;			 
-	LLINK apacLabelId;		
-	LLINK arabicHebrewLabelId;	
-	}
-	
-STRUCT VR_BUTTONS_NEW
-	{
-	STRUCT buttons[];
-	}
-			
-#endif // __RECVIEW_RH__
--- a/voicerecorder/RecViewSrc/CVRButtonPanel.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,857 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     A compound control class. It is responsible for drawing and updating
-*     a set of buttons. Button selections are also handled and forwarded
-*     as commands to the AppUi.
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <avkon.hrh>
-#include <eikenv.h> 
-#include <AknsUtils.h> 
-#include <voicerecorder.rsg> 
-#include <aknbutton.h> 					
-#include <e32base.h> 					
-#include <barsread.h> 					// TResourceReader
-#include <w32std.h>
-#include <aknlayoutscalable_apps.cdl.h> // New button highlight
-#include <e32std.h> 					// Timer
-#include <AknsDrawUtils.h>
-#include <applayout.cdl.h>
-#include <AknsConstants.h> 
-#include <AknIconUtils.h>
-#include <data_caging_path_literals.hrh>
-#include <eikappui.h> 
-#include <aknViewAppUi.h>
-#include <aknview.h>
-
-#include <voicerecorder.mbg>
-#include "CVRButtonPanel.h"
-#include "MVRButtonPanelModel.h"
-#include "voicerecorder.hrh"
-#include "VRConsts.h"
-
-// CONSTANTS
-
-// Timer delays
-const TInt KVRFastForwStartDelay( 500000 );
-const TInt KVRFastForwUpdateDelay( 170000 );
-
-const TInt KVRButtonCount( 5 );			   // Total number of buttons
-const TInt KVRAmountOfFocusShrink( 5 );
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::CVRButtonPanel
-// 
-// ---------------------------------------------------------------------------
-//	
-CVRButtonPanel::CVRButtonPanel( MVRButtonPanelModel* aModel )
-    : iModel( aModel ),
-    iVRButtons( KVRButtonCount )
-	{
-	__ASSERT_DEBUG( iModel, User::Panic( KVRPanic, KErrNotFound ) );
-	iModel->SetButtonPanelObserver( this );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::CVRButtonPanel
-// 
-// ---------------------------------------------------------------------------
-//	
-CVRButtonPanel::CVRButtonPanel( MVRButtonPanelModel* aModel,
-                               TUid aParentViewUid )
-    : iModel( aModel ),  
-    iParentViewUid( aParentViewUid ),
-    iVRButtons( KVRButtonCount )
-	{
-	__ASSERT_DEBUG( iModel, User::Panic( KVRPanic, KErrNotFound ) );
-	iModel->SetButtonPanelObserver( this );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::~CVRButtonPanel
-// Destructor
-// ---------------------------------------------------------------------------
-//	
-CVRButtonPanel::~CVRButtonPanel()
-	{
-	if ( iModel )
-		{
-		iModel->SetButtonPanelObserver( NULL );
-		}
-
-	iVRButtons.ResetAndDestroy();
-	delete iTimer;
-	iModel = NULL;
-	iSkin = NULL;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::ConstructL()
-	{
-	iSkin = AknsUtils::SkinInstance();
-	
-	// Create buttons from resources
-   	CreateButtonsFromResourcesL( R_VR_BUTTON_PANEL_BUTTONS );
-   	UpdateButtons();
-   	
-   	// Has to be done to get the buttons' background shown correctly
-   	for ( TInt i = 0; i < iVRButtons.Count(); i++ )
-    	{
-    	iVRButtons.At( i )->SetBackground( this );
-    	}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::CreateButtonsFromResourcesL
-// Creates buttons from resources
-// ---------------------------------------------------------------------------
-//    
-void CVRButtonPanel::CreateButtonsFromResourcesL( TInt aButtonsResourceId )
-	{	
-	TResourceReader reader;
-	iEikonEnv->CreateResourceReaderLC( reader, aButtonsResourceId );
-	
-	TInt numButtons( reader.ReadInt16() );
-
-	// Create buttons
-	for (TInt i = 0; i < numButtons; i++ )
-		{
-		CAknButton* aknButton = CAknButton::NewL();
-		CleanupStack::PushL( aknButton );
-		
-		aknButton->SetContainerWindowL( *this );
-		aknButton->SetMopParent( this ); 
-	    aknButton->ConstructFromResourceL( reader );
-		aknButton->SetObserver( this );
-	    
-	    // Set ready to be drawn and add it to array
-	    aknButton->ActivateL();
-	   	iVRButtons.AppendL( aknButton );
-	   	
-	   	CleanupStack::Pop( aknButton ); // aknButton
-		}
-		
-	CleanupStack::PopAndDestroy(); // reader;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::Update
-// This method can be called via MVRObserver class when Button Panel needs 
-// to be updated. 
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::Update( TVRUpdateCommand aCommand )
-	{
-	
-	TBool drawNow( ETrue );
-	
-	// Recorder calls this after each tick, we have to check if button reset
-	// is needed. Redraw is needed also after 1 secs playback to enable
-	// rewind button.
-    switch( aCommand )
-        {
-        case EVRUpdate1Second:
-	case EVRUpdate:
-        case EVRUpdateStateChange:
-            {
-            // Redraw
-           	drawNow = ETrue;
-            break;
-            }
-        case EVRUpdatePositionChange:
-        	{
-			// Skip redraw
-			drawNow = EFalse;
-            break;
-            }    
-        default:
-            {
-            // Skip redraw
-            drawNow = EFalse;
-            return;
-            }
-        }
-
-	if ( iModel->ResetNeeded() )
-		{
-		iFocusedButton = iModel->InitialFocusButtonId();
-		}
-		
-	UpdateButtons();
-	
-	// Change focus if focused button is dimmed
-	TuneButtonFocus();
-	
-	if ( drawNow )	
-		{
-	    DrawNow();				
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::SizeChanged
-// Called when Button Panel layout needs to be updated 
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::SizeChanged()
-	{
-    TInt count( iModel->ButtonCount() );
-
-    TSize size; // Size of the bitmap
-
-    for ( TInt i( 0 ); i < count; i++ )
-		{
-		// Layout button.
-        TAknWindowLineLayout cell = AppLayout::cell_vorec_pane( i );
-        
-    	TAknLayoutRect buttonLayout;
-		buttonLayout.LayoutRect( Rect(), cell );
-		TRect buttonRect = buttonLayout.Rect();
-		TInt newSize = (TInt)(buttonRect.Width() * 0.1); // used to reduce the size of button
-		buttonRect.Shrink( TSize(newSize,newSize) );
-    	iVRButtons.At( i )->SetRect( buttonRect );
-   		} 
-	}
-	
-	
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::OfferKeyEventL
-// Key event handling
-// ---------------------------------------------------------------------------
-//	
-TKeyResponse CVRButtonPanel::OfferKeyEventL( const TKeyEvent& aKeyEvent,
-											 TEventCode aType )
-	{
-	if ( aType != EEventKey )
-		{
-		if( aType == EEventKeyDown )
-			{
-			// Rocker key pressed
-			if ( aKeyEvent.iScanCode == EStdKeyDevice3 )
-				{
-				// Start timer to get continuous timercallbacks for 
-				// FastForwarding and FastRewinding
-				StartTimerL();
-				}
-			}	
-		else if( aType == EEventKeyUp )
-			{
-			// Rocker key pressed
-			if ( aKeyEvent.iScanCode == EStdKeyDevice3 )
-				{
-				StopTimer();
-				}
-			}			
-		return EKeyWasNotConsumed;
-		}
-	// EEventKey
-	switch ( aKeyEvent.iCode )
-		{
-		case EKeyDownArrow:
-			{
-			MoveFocus( EFocusDown, ETrue );
-			break;
-			}
-		case EKeyUpArrow:
-			{
-			MoveFocus( EFocusUp, ETrue );
-			break;
-			}
-		case EKeyEnter:	
-		case EKeyOK:
-			{	
-			// This is in use as long as there are only 2 CBA buttons. When MSK
-			// enabled, execution goes straight to CVRRecView::HandleCommandL
-			FetchAndSendCommandL();
-			break;
-			}
-		default:
-			{
-			return EKeyWasNotConsumed;
-			}
-		}
-
-	return EKeyWasConsumed;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::Draw
-// Needed to get correct focus drawing with AknButtons
-// ---------------------------------------------------------------------------
-//		
-void CVRButtonPanel::Draw( CWindowGc& /*aGc*/, const CCoeControl& /*aControl*/, 
-		const TRect& /*aRect*/ ) const
-	{
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::Draw
-// 
-// ---------------------------------------------------------------------------
-//		
-void CVRButtonPanel::Draw( const TRect& /*aRect*/ ) const
-	{
-	CWindowGc& gc = SystemGc();
-	// Acquire the control context through the MOP-chain
-	MAknsControlContext* context = AknsDrawUtils::ControlContext( this );
-
-	// Draw the background using the control context
-	// Note: if there is no skin, the background is just cleared
-	// (which is OK for us)
-	AknsDrawUtils::Background( iSkin, context, this, gc, Rect() );
-
-	// Draw button highlight
-	DrawFocus( gc );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::CountComponentControls
-// 
-// ---------------------------------------------------------------------------
-//	
-TInt CVRButtonPanel::CountComponentControls() const
-	{
-	return iVRButtons.Count();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::ComponentControl
-// 
-// ---------------------------------------------------------------------------
-//	
-CCoeControl* CVRButtonPanel::ComponentControl( TInt aIndex ) const
-	{
-	return iVRButtons.At( aIndex );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::MoveFocus
-// Moves the focus to next button up or down. aDirection tells the which.
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::MoveFocus( const TFocusChange aDirection, TBool aDrawNow )
-	{
-	TInt buttonCount( iModel->ButtonCount() );
-	TInt newButton( iFocusedButton );
-
-	for ( TInt i( 0 ); i < buttonCount; i++ )
-		{
-		// calculate new button id. the modulo operator (%) handles looping
-		newButton = ( newButton + aDirection + buttonCount ) % buttonCount;
-		// dimmed buttons are skipped
-		if ( iModel->ButtonState( newButton ) != EDimmed )
-			{
-			iFocusedButton = newButton;
-			
-			// Timer is used for FastForward/-Rewind. Stop that when focus is 
-			// changed.
-			StopTimer();
-			break;
-			}
-		}
-	
-	if ( aDrawNow )
-		{
-		DrawNow();	
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::UpdateLayoutL
-// 
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::UpdateLayoutL( )
-	{
-	SizeChanged();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::HandleResourceChangeL
-// 
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::HandleResourceChangeL( TInt aType )
-	{
-	CCoeControl::HandleResourceChange( aType );
-	
-	if ( aType == KEikDynamicLayoutVariantSwitch )
-		{
-		UpdateLayoutL();
-		}
-	else if ( aType == KAknsMessageSkinChange )
-		{
-		// New skin instance is loaded
-		iSkin = AknsUtils::SkinInstance();
-		}
-	
-	// Inform Avkon Buttons		
-	for( TInt buttonIndex = 0; buttonIndex < iVRButtons.Count() ; 
-			buttonIndex++ )
-		{
-		iVRButtons.At( buttonIndex )->HandleResourceChange( aType );
-		}
-	}
-
-	
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::UpdateButtons
-// Updates all Button Panel buttons to correct visual state. Also few  
-// exceptional cases are handled here (1. clip position is at the beginning 
-// 2. clip position is at the end)
-// ---------------------------------------------------------------------------
-//		
-void CVRButtonPanel::UpdateButtons()
-	{
-	TUint stateId;
-	// Update all the buttons	
-	for( TInt buttonIndex = 0; buttonIndex < iVRButtons.Count() ; 
-			buttonIndex++ )
-		{
-		stateId = iModel->VisualStateId();
-		
-		// dim rewind button if there is nothing to rewind
-		if ( buttonIndex == EButtonRewind && 
-				iModel->ButtonState( buttonIndex ) == EDimmed )
-			{
-			iVRButtons.At( buttonIndex )->SetDimmed(ETrue);			
-			stateId = EStateDisableButtons;
-			}
-		if ( buttonIndex == EButtonRewind && 
-				iModel->ButtonState( buttonIndex ) != EDimmed )
-			{
-			iVRButtons.At( buttonIndex )->SetDimmed(EFalse);			
-			}
-		// dim forward button if there is nothing to forward
-		if( buttonIndex == EButtonForward && 
-				iModel->ButtonState( buttonIndex ) == EDimmed )
-			{
-			iVRButtons.At( buttonIndex )->SetDimmed(ETrue);		
-			stateId = EStateDisableButtons;	
-			}
-		if( buttonIndex == EButtonForward && 
-				iModel->ButtonState( buttonIndex ) != EDimmed )
-			{
-			iVRButtons.At( buttonIndex )->SetDimmed(EFalse);		
-			}
-		
-		// ************ADDED CODE STARTS****************************
-		if( buttonIndex == EButtonRecord && 
-				iModel->ButtonState( buttonIndex ) == EDimmed )
-			{								
-			stateId = EStateDisableButtons;	
-			}
-		// ************ADDED CODE ENDS******************************
-
-		if( iModel->ButtonState( buttonIndex ) == EDimmed )
-			{
-			iVRButtons.At( buttonIndex )->SetDimmed(ETrue);		
-			}
-		else
-			{
-			iVRButtons.At( buttonIndex )->SetDimmed(EFalse);	
-			}	
-		
-		// Change the button state, don't redraw
-		iVRButtons.At( buttonIndex )->SetCurrentState( stateId , EFalse );
-		}
-	}	
-	
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::DrawFocus() 
-// Draws the focus rectangle around the currently focused button
-// ---------------------------------------------------------------------------
-//    
-void CVRButtonPanel::DrawFocus( CWindowGc& aGc ) const
-	{
-	
-	aGc.SetBrushStyle( CGraphicsContext::ENullBrush );
-
-	if ( AknLayoutUtils::ScalableLayoutInterfaceAvailable() )
-		{
-		// From LAF-table
-//		TAknWindowLineLayout area = 
-//			AknLayoutScalable_Apps::grid_highlight_pane_cp05().LayoutLine();
-		
-//		TRect buttonRect = iVRButtons.At( iFocusedButton )->Rect();
-		TAknWindowLineLayout area = AppLayout::cell_vorec_pane( iFocusedButton );
-
-		TAknLayoutRect layoutRect;
-		layoutRect.LayoutRect( Rect(), area );
-//		layoutRect.LayoutRect( buttonRect, area );
-		
-		// The outer rectangle is calculated from the layoutRect
-		TRect outerRect = TRect( layoutRect.Rect().iTl, layoutRect.Rect().iBr );
-		
-		// Inner rectangle is generated by shrinking the outer rect.
-		TRect innerRect = outerRect;
-		innerRect.Shrink( TSize( KVRAmountOfFocusShrink, 
-									KVRAmountOfFocusShrink ) );
-		
-		if (iModel->ButtonState( iFocusedButton ) != EDimmed )
-			{
-			//Focus frame is drawn
-			aGc.SetPenStyle( CGraphicsContext::ENullPen );
-			TBool highlightDrawn = AknsDrawUtils::DrawFrame( iSkin, aGc, 
-					outerRect, innerRect, KAknsIIDQsnFrGrid, KAknsIIDNone );
-			} 
-		}
-	else
-		{
-		if ( iModel->ButtonState( iFocusedButton ) != EDimmed )
-			{
-			// Old basic rectangle is drawn
-			aGc.SetPenStyle( CGraphicsContext::ESolidPen );
-			aGc.DrawRect( iVRButtons.At( iFocusedButton )->Rect() );
-			}
-		}
-	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::FocusedButton() 
-// Returns the index for the currently focused button
-// ---------------------------------------------------------------------------
-//
-TInt CVRButtonPanel::FocusedButton() const
-	{
-	return iFocusedButton;
-	}
-	
-	
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::StartTimerL
-// Create and start a timer with initial delay of KVRFastForwStartDelay
-// and with callback frequency of KVRFastForwUpdateDelay
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::StartTimerL()
-	{
-	if ( iTimer )
-		{
-		// stop if iTimer is already running
-		StopTimer();	
-		}
-
-	TCallBack cb( TimerCallBack, this );
-	iTimer = CPeriodic::NewL( 0 );
-	iTimer->Start( KVRFastForwStartDelay, KVRFastForwUpdateDelay, cb );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::StopTimer
-// Stop the timer by deleting the CPeriodic object
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::StopTimer()
-	{
-	delete iTimer;
-	iTimer = NULL;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::TimerCallBack
-// Timer callback for iTimer. Time between callbacks is KVRFastForwUpdateDelay
-// ---------------------------------------------------------------------------
-//	
-TInt CVRButtonPanel::TimerCallBack( TAny* aButtonPanel )
-	{
-	CVRButtonPanel* buttonPanel = reinterpret_cast< CVRButtonPanel* >
-															( aButtonPanel );
-	
-	buttonPanel->HandleTimerCallBack();
-		
-	return ETrue;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::HandleTimerCallBack
-// Non-static variant of TimerCallBack (more convinient to implement)
-// ---------------------------------------------------------------------------
-//
-void CVRButtonPanel::HandleTimerCallBack()
-	{
-	// Callbacks are handled only if focus is on rewind or forward button
-	if (iFocusedButton == EButtonRewind || iFocusedButton == EButtonForward)
-		{
-		TRAPD( err, FetchAndSendCommandL() );
-		
-		if ( err )
-			{
-		RDebug::Print(_L("VoiceRecorder: FetchAndSendCommandL, error ID: %d"), 
-				err);
-			StopTimer();
-			}
-		}
-	}
-	
-	
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::FetchAndSendCommand
-// Fetches the command relating to focused button from the model. Command is 
-// sent on to active view.
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::FetchAndSendCommandL()
-	{
-	// Don't forward the command if dimmed button was clicked or 
-	// if model can't handle commands
-	if ( iModel->ButtonState( iFocusedButton ) == EDimmed || 
-		!iModel->CanHandleCommands() )
-		{
-		return;
-		}
-	
-	// Send a command id to the active view specified in the button
-	CAknViewAppUi* appUi = reinterpret_cast< CAknViewAppUi* >(
-									CEikonEnv::Static()->EikAppUi() );
-	CAknView* view = appUi->View( iParentViewUid );
-	view->HandleCommandL( iModel->CommandId( iFocusedButton ) );
-	
-	Update( EVRUpdateStateChange );
-
-	}
-	
-	
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::TuneButtonFocus
-// The special cases when button focus has to be moved are handled here
-// ---------------------------------------------------------------------------
-//	
-void CVRButtonPanel::TuneButtonFocus()
-	{
-	
-	// CVRRecViewModel::ButtonState() returns EDimmed for EButtonRewind if
-	// the position of the clip is at the beginning
-	if ( iFocusedButton == EButtonRewind && 
-			iModel->ButtonState( iFocusedButton ) == EDimmed )
-		{
-		iVRButtons.At( iFocusedButton )->SetDimmed(ETrue);	
-		MoveFocus( EFocusDown, EFalse );	
-		}
-		
-	// CVRRecViewModel::ButtonState() returns EDimmed for EButtonForward if
-	// the position of the clip is at the end	
-	else if( iFocusedButton == EButtonForward && 
-				iModel->ButtonState( iFocusedButton ) == EDimmed )	
-		{
-		iVRButtons.At( iFocusedButton )->SetDimmed(ETrue);	
-		MoveFocus( EFocusUp, EFalse );
-		}	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::HandleControlEventL
-// A callback function of Avkon buttons. Handles EEventStateChanged type events 
-// which happen every time when some of the buttons is pressed and button state 
-// changes. Event comes before CAknButton::Draw method is executed. 
-// ---------------------------------------------------------------------------
-//			
-void CVRButtonPanel::HandleControlEventL( CCoeControl *aControl, 
-										  TCoeEvent aEventType )
-	{
-	if( AknLayoutUtils::PenEnabled() )
-		{	
-		
-		switch( aEventType )
-			{
-			case EEventStateChanged:
-				{
-				
-				TInt newFocusedButton( 0 );
-				for( TInt i = 0; i < iVRButtons.Count() ; i++ )
-					{
-					// Which of buttons was pressed 
-					if ( aControl == iVRButtons.At( i ) )
-						{
-						// When new state is the first state, we have to set 
-						// new state to ENumStates to be able to se a correct 
-						// state in SetCurrentState( stateId - 1 , EFalse );
-						TInt stateId( iVRButtons.At( i )->StateIndex() );
-						if( stateId == 0 )
-							{
-							stateId = ENumStates;
-							}
-						
-						// CAknButton automatically changes the state to next 
-						// one always when it's ,pressed whether we want it or 
-						// not. To prevent this we set the previous state 
-						// before button draws itself
-						iVRButtons.At( i )->SetCurrentState( stateId - 1,
-															 EFalse );
-						newFocusedButton = i;
-						break;
-						}
-					}
-				
-				// Focus already was on pressed button so button's command is 
-				// executed	
-				if ( iFocusedButton == newFocusedButton )
-					{
-					// Don't forward the command if dimmed button was clicked
-					if ( iModel->ButtonState( iFocusedButton ) == EDimmed )
-						{
-						break;
-						}
-					
-					// Send a command id specified in the button to an 
-					// active view 
-					CAknViewAppUi* appUi = reinterpret_cast< CAknViewAppUi* >(
-											CEikonEnv::Static()->EikAppUi() );
-					CAknView* view = appUi->View( iParentViewUid );
-					view->HandleCommandL( iModel->CommandId( iFocusedButton ) );
-					
-					// To make FastForwarding/FastRewinding possible
-					if ( iFocusedButton == EButtonRewind || 
-						 iFocusedButton == EButtonForward )
-						{
-						if ( iLastPointerEvent == EVRButtonDownEvent )
-							{
-							StartTimerL();	
-							}							
-						}
-					
-					Update( EVRUpdateStateChange );
-					}
-				// Focus was not on the focused button -> 
-				// Focus should be changed	
-				else if ( newFocusedButton >= 0 && 
-						  newFocusedButton < iVRButtons.Count() )
-					{
-					//draw focus
-					if ( iModel->ButtonState( newFocusedButton ) != EDimmed )
-						{
-						iFocusedButton = newFocusedButton;
-						DrawNow();
-
-						// Send a command id specified in the button to an 
-						// active view 
-						CAknViewAppUi* appUi = reinterpret_cast< CAknViewAppUi* >(
-											CEikonEnv::Static()->EikAppUi() );
-						CAknView* view = appUi->View( iParentViewUid );
-						view->HandleCommandL( iModel->CommandId( iFocusedButton ) );
-						// To make FastForwarding/FastRewinding possible
-						if ( iFocusedButton == EButtonRewind || 
-							 iFocusedButton == EButtonForward )
-							{
-							if ( iLastPointerEvent == EVRButtonDownEvent )
-								{
-								StartTimerL();	
-								}							
-							}
-						}
-                // for one error about touch UI, when click a dimmed button, the dimmed
-                // button should not go back to umdimmed.                   
-				else
-					{
-					DrawNow();	
-					}
-				}													
-				break;	
-				}
-			default:
-				{
-				// No default behaviour
-				break;	
-				}
-			}
-			
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRButtonPanel::HandlePointerEventL
-// Handles Button panel pointer events. True functionality is to stop 
-// FastForward timer when FF should be stopped.
-// ---------------------------------------------------------------------------
-//		
-void CVRButtonPanel::HandlePointerEventL( const TPointerEvent& aPointerEvent )
-	{
-	if( AknLayoutUtils::PenEnabled() )
-		{
-		
-		
-		switch( aPointerEvent.iType )
-			{
-			case TPointerEvent::EButton1Down:
-				{
-				// Don't start timer here. It's started in HandleControlEventL() 
-				iLastPointerEvent = EVRButtonDownEvent;
-				break;
-				}
-			case TPointerEvent::EDrag:
-				{
-				// Don't stop timer if just dragging inside the currently 
-				// focused button
-				TRect focusedButtonRect( 
-									 iVRButtons.At( iFocusedButton )->Rect() );
-				if( !focusedButtonRect.Contains( aPointerEvent.iPosition ) )
-					{
-					// Dragged outside
-					iLastPointerEvent = EVRButtonDragOutsideEvent;
-					StopTimer();	
-					}
-				break;		
-				}
-			case TPointerEvent::EButton1Up:
-				{
-				// Pen up
-				iLastPointerEvent = EVRButtonUpEvent;
-				StopTimer();	
-				break;
-				}		
-			default:
-				{
-				break;	
-				}	
-			}
-		
-		CCoeControl::HandlePointerEventL( aPointerEvent );
-		}
-	}
-
-// End of file	
--- a/voicerecorder/RecViewSrc/CVRButtonPanel.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,294 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     A compound control class. It is responsible for drawing and updating
-*     a set of buttons. Button selections are also handled and forwarded
-*     as commands to the AppUi.
-*
-*/
-
-
-#ifndef __CVRBUTTONPANEL_H__
-#define __CVRBUTTONPANEL_H__
-
-// INCLUDES
-#include <coecntrl.h>
-#include <AknUtils.h>
-#include <coecobs.h>	// MCoeControlObserver
-
-#include "MVRObserver.h"
-
-// FORWARD DECLARATIONS
-class MVRButtonPanelModel;
-class MAknsSkinInstance;
-class CApaMaskedBitmap;
-class TAknsItemID;
-class CAknButton;
-
-// CLASS DEFINITION
-/**
-* A compound control class. It is responsible for drawing and updating
-* a set of buttons. Button selections are also handled and forwarded
-* as commands to the AppUi.
-*/
-NONSHARABLE_CLASS( CVRButtonPanel )
-	: 	public CCoeControl, 
-		public MVRObserver, 
-		public MCoeControlObserver,
-		public MCoeControlBackground
-	{
-	public: // data types
-	    enum TFocusChange 
-	        {
-	        EFocusUp = -1,
-	        EFocusDown = 1,
-	        EFocusInvalid = 2
-	        };
-	
-	// pointer event types used in VR        
-	enum TLastPointerEventType
-	        {
-	        EVRButtonDownEvent,
-	        EVRButtonDragOutsideEvent,
-	        EVRButtonUpEvent
-	        };
-	        
-	public: // constructors and destructor
-		
-		/**
-		* Constructor.
-		* @param aModel Pointer to the button panel model.
-		* Ownership is not transferred.
-		*/
-		CVRButtonPanel( MVRButtonPanelModel* aModel );
-
-		/**
-		* Constructor.
-		* @param aModel Pointer to the button panel model.
-		* @param aParentViewUid Uid of CVRRecView for fast swap
-		* Ownership is not transferred.
-		*/
-		CVRButtonPanel( MVRButtonPanelModel* aModel, TUid aParentViewUid );
-
-		/**
-		* Destructor
-		*/
-		virtual ~CVRButtonPanel();
-
-		/**
-		* 2nd phase constructor.
-		*/
-		void ConstructL();
-
-	private: // constructors
-
-		/**
-		* Default constructor. Not implemented.
-		*/
-		CVRButtonPanel();
-		
-		/**
-		* Creates control buttons from given resources
-		* @param aButtonsResourceId The resource used in buttons' construction.
-		*/
-		void CreateButtonsFromResourcesL( TInt aButtonsResourceId );
-
-	public:
-		
-		/**
-		* Updates the layout of all child controls to current active
-		* layout (Euro, Apac, Arabic/Hebrew)
-		*/		
-		void UpdateLayoutL( );
-
-		/**
-		* Handles a change to the application's resources
-		* @param aType The type of changed resource
-		*/
-		void HandleResourceChangeL( TInt aType );
-		
-	public: // from CCoeControl
-
-		/*
-		* From CCoeControl
-		* @see CCoeControl
-		*/
-		void SizeChanged();
-
-		/**
-		* When a key event occurs, the control framework calls this function
-		* for each control on the control stack, until one of them can process
-		* the key event (and returns EKeyWasConsumed).
-		* @param aKeyEvent The key event.
-		* @param aType The type of key event: EEventKey, EEventKeyUp
-		*              or EEventKeyDown
-		* @return Indicates whether or not the key event was used by this
-		*         control
-		*/
-		TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent,
-									 TEventCode aType );
-		
-		/**
-		* Gets called whenever a pointer event occurs.
-		* @param aPointerEvent The pointer event to handle.
-		*/							 
-		void HandlePointerEventL( const TPointerEvent& aPointerEvent );
-		
-	public:	// from MVRObserver
-
-		/**
-		* Called to notify a change in the observed subject's state.
-		*/
-		void Update( TVRUpdateCommand aCommand );
-	
-	public:	// from MCoeControlObserver
-		
-		/**
-		* This function is called when a control for which this control is the observer 
-		* calls CCoeControl::ReportEventL(). In VoiceRecorder button pointer events are
-		* handled here.
-		* @param aControl The control that sent the event.
-		* @param aEventType The event type. 
-		*/
-		void HandleControlEventL(CCoeControl *aControl, TCoeEvent aEventType);
-	
-	private:  // from MCoeControlBackground
-		
-		/*
-		* From MCoeControlBackground
-		* @see MCoeControlBackground
-		*/
-		void Draw(CWindowGc& aGc, const CCoeControl& aControl, const TRect& aRect) const;								 
-
-	public:		// new methods
-		
-		/*
-		* Checks which button is currently focused and returns the index
-		* value of that
-		* @return The index for the currently focused button
-		*/
-		TInt FocusedButton() const;
-	
-	private: // from CCoeControl
-
-		/**
-		* Draws this control.
-		* @param aRect The area that needs updating. Ignored.
-		*/
-		void Draw( const TRect& aRect ) const;
-		
-		/**
-		* Called by the framework to get the number of sub-components
-		* contained in this component. 
-		* @return The number of component controls contained by this control
-		*/
-		TInt CountComponentControls() const;
-		
-		/**
-		* Called by the framework to get a specified sub-component
-		* of this component.
-		* @param aIndex The index of the component to get.
-		* @return The component control with an index of aIndex.
-		*/
-		CCoeControl* ComponentControl( TInt aIndex ) const;
-		                          	  
-	private: // new methods
-
-		/**
-		* Moves focus to the next non-dimmed button.
-		* @param aDirection EFocusDown to move downwards, EFocusUp upwards
-		*/
-		void MoveFocus( const TFocusChange aDirection, TBool aDrawNow );
-
-		/**
-		* Updates buttons by changing their state
-		*/
-		void UpdateButtons();
-		
-		/**
-		* Draws highlight rectangle for the focused button.
-		* @param aGc Current Graphic Context in use.
-		*/
-		void DrawFocus( CWindowGc& aGc ) const;
-		
-		/**
-		* Creates and starts a CPeriodic timer object
-		* with a resolution of KVRFastForwUpdateDelay
-		*/
-		void StartTimerL();
-		
-		/**
-		* Stops and deletes the timer object.
-		*/
-		void StopTimer();
-		
-		/**
-		* Called by the CPeriodic timer to handle a tick.
-		* Uses HandleTimerCallBack() to do the actual work.
-		* @param aButtonPanel Always a valid pointer to CVRButtonPanel object
-		* @return ETrue to indicate that the timer should continue.
-		*/	
-		static TInt TimerCallBack( TAny* aButtonPanel );
-		
-		/**
-		* Non-static variant of TimerCallBack (more convinient to implement).
-		*/
-		void HandleTimerCallBack();
-		
-		/**
-		* Search corresponding command of the focused/pressed button and 
-		* sends it to active view 
-		*/
-		void FetchAndSendCommandL();
-		
-		/**
-		* Handles special cases concerning button focus
-		*/
-		void TuneButtonFocus();
-		
-		
-	private: // data
-
-		/**
-		* Pointer to the button panel model. Not owned.
-		*/
-		MVRButtonPanelModel* iModel;
-
-		/**
-		* The index of the currently focused button.
-		*/
-		TInt iFocusedButton;
-
-		// Skin instance. Not owned.
-		MAknsSkinInstance* iSkin;
-
-		// Uid of the parent view
-		TUid iParentViewUid;
-
-		/**
-		* Pointer to the timer object. Owned.
-		*/
-		CPeriodic* iTimer;
-		
-		// Button panel's button controls. Owned.
-		CArrayPtrFlat< CAknButton > iVRButtons;
-		
-		/**
-		* Tells what pointer event is the last that has happened
-		*/
-		TLastPointerEventType iLastPointerEvent;	
-		
-	};
-
-#endif // __CVRBUTTONPANEL_H__
--- a/voicerecorder/RecViewSrc/CVRDiskSpaceWatcher.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*       Observe the Disk Space
-*
-*/
-
-
-// INCLUDE FILES
-#include "CVRMdaRecorder.h"
-#include "CVRDiskSpaceWatcher.h" 
-#include "CVRMemo.h"
-
-
-
-// ================= MEMBER FUNCTIONS =======================
-// ---------------------------------------------------------------------------
-// CVRDiskSpaceWatcher::CVRDiskSpaceWatcher
-// 
-// ---------------------------------------------------------------------------
-//
-inline CVRDiskSpaceWatcher::CVRDiskSpaceWatcher
-        (CVRMdaRecorder& aRecorder, RFs& aFs) :
-    CActive(CActive::EPriorityIdle),
-    iRecorder(aRecorder), iFs(aFs)
-    {
-    CActiveScheduler::Add(this);
-    }
-
-// ---------------------------------------------------------------------------
-//CVRDiskSpaceWatcher::NewL
-// 
-// ---------------------------------------------------------------------------
-//
-CVRDiskSpaceWatcher* CVRDiskSpaceWatcher::NewL
-        (CVRMdaRecorder& aRecorder, RFs& aFs)
-    {
-    CVRDiskSpaceWatcher* self = new(ELeave) CVRDiskSpaceWatcher(aRecorder, aFs);
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRDiskSpaceWatcher::~CVRDiskSpaceWatcher
-// 
-// ---------------------------------------------------------------------------
-//
-CVRDiskSpaceWatcher::~CVRDiskSpaceWatcher()
-    {
-    Cancel();
-    }
-
-// ---------------------------------------------------------------------------
-// CVRDiskSpaceWatcher::DoCancel
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRDiskSpaceWatcher::DoCancel()
-    {
-    iFs.NotifyDiskSpaceCancel();
-    }
-
-// ---------------------------------------------------------------------------
-// CVRDiskSpaceWatcher::RunL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRDiskSpaceWatcher::RunL()
-    {
-    // if error returns, restart AO
-    if (iStatus.Int())
-    	{
-   	    if (iRecorder.iMemo->Quality() == EQualityHigh)
-   	    	{
-    	    RequestNotification( iThreshold, iDrive);	
-   	    	}
-    	return;	
-    	}
-
-    // Disk space is below CL -> initiate a compress
-    if(iRecorder.iAudioRecorder->State() == CMdaAudioClipUtility::ERecording)
-    	{
-        iRecorder.StopAndNotify();	
-    	}
- 
-    // Renew notification request
-    if (iRecorder.iMemo)
-    	{
-    	if (iRecorder.iMemo->Quality() == EQualityHigh)
-    		{
-   	    	RequestNotification( iThreshold, iDrive);	
-    		}    		
-    	}
-
-    }
-
-// ---------------------------------------------------------------------------
-// CVRDiskSpaceWatcher::RunError
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRDiskSpaceWatcher::RunError(TInt /*aError*/)
-    {
-    return KErrNone;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRDiskSpaceWatcher::RequestNotification
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRDiskSpaceWatcher::RequestNotification( TInt64 aThreshold, TInt aDrive)
-    {
-    iThreshold = aThreshold;
-    iDrive = aDrive;
-    Cancel();
-    iFs.NotifyDiskSpace(iThreshold,iDrive,iStatus);
-    SetActive();
-    }
-
-
-//  End of File  
--- a/voicerecorder/RecViewSrc/CVRDiskSpaceWatcher.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     Disk space level watcher 
-*
-*/
-
-
-#ifndef __CVRDISKSPACEWATCHER_H__
-#define __CVRDISKSPACEWATCHER_H__
-
-
-// CLASS DECLARATION
-class CVRMdaRecorder;
-
-/**
- * Database compression timeout timer.
- */
- NONSHARABLE_CLASS(CVRDiskSpaceWatcher) : public CActive
-    {
-    public:  // Interface
-		/**
-         * Creates a new instance of this class.
-		 * @param aCompressionStrategy compressions strategy
-		 * @param aFs file server session
-		 * @param aThreshold threshold
-		 * @param aDrive disk drive
-         */
-        static CVRDiskSpaceWatcher* NewL
-                (CVRMdaRecorder&, RFs& aFs);
-
-        void RequestNotification(TInt64 aThreshold, TInt aDrive);
-
-		/**
-         * Destructor.
-         */
-        ~CVRDiskSpaceWatcher();
-
-    private:  // from CActive
-	    void DoCancel();
-        void RunL();
-	    TInt RunError(TInt aError);
-
-    private:  // Implementation
-        CVRDiskSpaceWatcher(CVRMdaRecorder&, RFs& aFs);
-
-    private:  // Data
-		/// Ref. compression strategy
-        CVRMdaRecorder& iRecorder;
-		/// Ref: file server session
-        RFs iFs;
-		/// Own: threshold
-        TInt64 iThreshold;
-		/// Own: disk drive
-        TInt iDrive;
-    };
-
-#endif // __CVRDISKSPACEWATCHER_H__
-
-// End of File
--- a/voicerecorder/RecViewSrc/CVRLabel.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,122 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class is an extension to the standard Eikon label.
-*     It provides leave-safe SetText() and is able to
-*     clear its background before drawing.
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <AknUtils.h>
-#include <AknsUtils.h>
-#include <AknBidiTextUtils.h>
-#include <AknsDrawUtils.h>
-
-#include "CVRLabel.h"
-#include "voicerecorder.hrh"
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// CVRLabel::NewLC
-// 
-// ---------------------------------------------------------------------------
-//	
-CVRLabel* CVRLabel::NewLC( const CCoeControl& aContainer )
-	{
-	CVRLabel* self = new( ELeave ) CVRLabel;
-	CleanupStack::PushL( self );
-	self->ConstructL( aContainer );
-
-	return self;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRLabel::~CVRLabel
-// 
-// ---------------------------------------------------------------------------
-//	
-CVRLabel::~CVRLabel()
-	{
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRLabel::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//	
-void CVRLabel::ConstructL( const CCoeControl& aContainer )
-	{
-	SetContainerWindowL( aContainer );
-	SetBufferReserveLengthL( VRLABELMAXLENGTH );
-	iSkin = AknsUtils::SkinInstance();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRLabel::Draw
-// Clears the label area and then draws the text
-// ---------------------------------------------------------------------------
-//	
-void CVRLabel::Draw( const TRect& aRect ) const
-	{
-	// Acquire the control context through the MOP-chain
-	MAknsControlContext* context = AknsDrawUtils::ControlContext( this );
-
-	// Draw the background using the control context
-	// Note: if there is no skin, the background is just cleared 
-	// (which is OK for us)
-	AknsDrawUtils::Background( iSkin, context, this, SystemGc(), Rect() );
-	
-	// Draw the actual text
-	CEikLabel::Draw( aRect );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRLabel::SetText
-// Non-leaving SetText variant.
-// ---------------------------------------------------------------------------
-//	
-void CVRLabel::SetText( const TDesC& aText )
-	{
-	TBuf< VRLABELMAXLENGTH > clipped( aText );
-	// will Panic if clipped is longer than VRLABELMAXLENGTH
-	// AknTextUtils::ClipToFit( clipped, *iFont, iSize.iWidth );
-        // AknBidiTextUtils::ConvertToVisualAndClipL(clipped,*iFont,iSize.iWidth, iSize.iWidth );
-	*iText = clipped;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRLabel::SetTextAndDraw
-// Updates the label if the given text is differentfrom the label's 
-// current text.
-// ---------------------------------------------------------------------------
-//	
-void CVRLabel::SetTextAndDraw( const TDesC& aText )
-	{
-	if ( iText->Compare( aText ) )
-		{
-		SetText( aText );
-		DrawNow();
-		}
-	}
-
--- a/voicerecorder/RecViewSrc/CVRLabel.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class is an extension to the standard Eikon label.
-*     It provides leave-safe SetText() and is able to
-*     clear its background before drawing.
-*
-*/
-
-
-#ifndef __CVRLABEL_H__
-#define __CVRLABEL_H__
-
-// INCLUDES
-#include <eiklabel.h>
-#include <AknUtils.h>
-
-// FORWARD DECLARATIONS
-class MAknsSkinInstance;
-
-// CLASS DEFINITION
-/**
-* This class is an extension to the standard Eikon label.
-* It provides leave-safe SetText() and is able to
-* clear its background before drawing.
-*/
-NONSHARABLE_CLASS( CVRLabel )
-	: public CEikLabel
-	{
-	public: // Constructors and destructor
-
-		/**
-		* Two-phased constructor
-		* @param aContainer Reference to the owning CCoeControl
-		*/
-		static CVRLabel* NewLC( const CCoeControl& aContainer );
-
-		/**
-		* Destructor.
-		*/
-		~CVRLabel();
-
-	private: // Constructors
-
-		/**
-		* Default constructor.
-		*/
-		inline CVRLabel() {};
-
-		/**
-		* 2nd phase constructor.
-		* @param aContainer Reference to the owning CCoeControl
-		*/
-		void ConstructL( const CCoeControl& aContainer );
-
-	private: // from CCoeControl
-
-		/**
-		* Draws this label.
-		* @param aRect The area that needs updating.
-		*/
-		void Draw( const TRect& aRect ) const;
-
-	public: // New methods
-
-		/**
-		* Sets the text in this label.
-		* Leave-safe. Panics if aText is too long.
-		* @param aText The new contents.
-		*/
-		void SetText( const TDesC& aText );
-
-		/**
-		* Sets the text in this label.
-		* Will draw the label if the given text
-		* is different from the current one.
-		* Leave-safe. Panics if aText is too long.
-		* @param aText The new contents.
-		*/
-		void SetTextAndDraw( const TDesC& aText );
-
-	private:
-		// Skin instance. Not owned.
-		MAknsSkinInstance* iSkin;
-
-		TAknLayoutText iTextLayout;
-	};
-
-#endif	// __CVRLABEL_H__
--- a/voicerecorder/RecViewSrc/CVRMdaRecorder.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1639 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class acts as a high level wrapper around the media server
-*     playback and recording functionalities.
-*
-*/
-
-
-// INCLUDE FILES
-#include "CVRSystemEventHandler.h"
-#include <ctsydomainpskeys.h>
-
-#include <e32svr.h>
-#include <bautils.h>
-#include <eikenv.h>
-#include <aknappui.h>
-#include <e32property.h>
-#include <AudioPreference.h>
-#include <aknsoundsystem.h>
-#include <ScreensaverInternalPSKeys.h>
-#include <AknGlobalNote.h>
-#include <StringLoader.h>
-#include <ErrorUI.h>
-#include <sysutil.h>
-
-#include <featmgr.h> // Feature manager
-
-#include <voicerecorder.rsg>
-#include <VoiceRecorderUID.h>
-#include "VoiceRecorderPrivatePSKeys.h"
-#include "CVRMemo.h"
-#include "MVRObserver.h"
-#include "VRConsts.h"
-#include "VRUtils.h"
-#include "CVRTonePlayer.h"
-#include "CVRMdaRecorder.h"
-#include "CVRDiskSpaceWatcher.h"
-#include "CVRRecViewModel.h"
-#include <AudioInput.h> 
-
-
-// MACROS
-#ifdef _DEBUG
-#define DEB_PRN_0(str) RDebug::Print(str)
-#else
-#define DEB_PRN_0(str)
-#endif
-
-// CONSTANTS
-const TInt KVRMdaRecorderDefaultStep( 5 );
-const TInt KVRObserverArrayGranularity( 2 );
-const TInt KVRMaxNoteLabelLength( 256 );
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::CVRMdaRecorder
-// 
-// ---------------------------------------------------------------------------
-//
-CVRMdaRecorder::CVRMdaRecorder() :
-	iObservers( KVRObserverArrayGranularity ),
-	iIsAttachedToMemo( EFalse ),
-	iMediaServerError( KErrNone ),
-	iDimLight (EFalse),
-	iAttachingToMemo(EFalse),
-	ifInRecording(EFalse),
-	ifStopCalled(EFalse)
-	{
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::~CVRMdaRecorder
-// 
-// ---------------------------------------------------------------------------
-//
-CVRMdaRecorder::~CVRMdaRecorder()
-	{
-
-	delete iGlobalNote;
-	delete iAudioInput; 
-	delete iAudioRecorder;
-	delete iErrorUI;
-	delete iTimer;
-	delete iTonePlayer;
-	delete iLight;
-	delete iDiskSpaceWatcher;
-    iObservers.Close();
-    
-    if (iCurrentCallHandler)
-    	{
-    	delete iCurrentCallHandler;
-    	}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::ConstructL()
-	{
-	_LIT_SECURITY_POLICY_S0( KVRWritePolicy, KVoiceRecorderAppUID3 );
-	_LIT_SECURITY_POLICY_PASS( KVRReadPolicy );
-    // Connect to Pub&Sub:
-    // Error ignored, key may be already defined which is ok for us
-	iPropVRState.Define( KPSUidVoiceRecorder, KVoiceRecorderMode, 0,
-	                     KVRReadPolicy, KVRWritePolicy );    
-    
-    User::LeaveIfError(
-        iPropVRState.Attach(
-        KPSUidVoiceRecorder, KVoiceRecorderMode ) );
-        
-   	// To allow/don't allow screensaver
-   	// Errors ignored, no actions needed if API is not available
-    iPropScreenSaver.Attach( KPSUidScreenSaver,
-       KScreenSaverAllowScreenSaver );
-	iAudioRecorder = CMdaAudioRecorderUtility::NewL( *this, NULL,
-	  KAudioPriorityRecording, TMdaPriorityPreference( 
-                               KAudioPrefRealOneLocalPlayback ) );
-
-	iGlobalNote = CAknGlobalNote::NewL();
-
-	iErrorUI = CErrorUI::NewL();
-
-	iTonePlayer = CVRTonePlayer::NewL();
-	iTonePlayer->PrepareToneL( EAvkonSIDVoiceRecordingStartTone );
-	
-	iLight = CHWRMLight::NewL(this);
-
-	// start observe diskdrive
-    RFs& fs( CEikonEnv::Static()->FsSession() );
- 
-    iDiskSpaceWatcher = CVRDiskSpaceWatcher::NewL(*this, fs);	
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::MoscoStateChangeEvent
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::MoscoStateChangeEvent( CBase* /*aObject*/,
-										    TInt aPreviousState,
-											TInt aCurrentState,
-											TInt aErrorCode )
-	{
-#ifdef _DEBUG
-	RDebug::Print( _L( "VoiceRecorder: MoscoStateChangeEvent() prev: %d, current: %d, error: %d" ), 
-			aPreviousState, aCurrentState, aErrorCode );
-#endif
-	iMediaServerError = aErrorCode;
-	
-   	TRAP_IGNORE(CreateAudioInputL());
-   
-
-	// Stop the active scheduler wait (if present)
-	if ( iActiveWait.IsStarted() )
-		{
-		iActiveWait.AsyncStop();
-		}
-
-	if (iMediaServerError != KErrNone ) 
-		{
-        
-        // when mmc card is used and unpluged, this error returned
-        if (iMediaServerError == KErrCorrupt || iMediaServerError == KErrNotReady)
-        	{
-        	CVRRecViewModel* iViewModel = NULL;
-        	//iAudioRecorder->Close();
-        	iViewModel = dynamic_cast <CVRRecViewModel*>(iAutoStopObserver);
-        	if(iViewModel != NULL)
-        		{
-        		TRAP_IGNORE( iViewModel->HandleCommandL(EEikCmdExit) );
-        		}
-        	else
-        		{
-        		TRAP_IGNORE( CEikonEnv::Static()->EikAppUi()->HandleCommandL( EAknSoftkeyExit) );
-        		}
-        	}
- 		
-		// Media server reports KErrDied if the playing was interrupted
-		// by some other system sound triggered by for example incoming SMS
-
-        if (aPreviousState == CMdaAudioClipUtility::ERecording || aPreviousState == CMdaAudioClipUtility::EPlaying )
-        	{ 	
-
-        	//if ( iMediaServerError != KErrDied &&  iMediaServerError != KErrAccessDenied )
-        	if ( iMediaServerError != KErrDied &&  
-        		 iMediaServerError != KErrAccessDenied &&  
-        		 iMediaServerError != KErrInUse )
-				{
-				TBuf< KVRMaxNoteLabelLength > label;
-
-				// If showing of error note fails, then.. well it fails
-				if ( iMediaServerError == KErrNotSupported )
-					{
-					CCoeEnv::Static()->
-					ReadResourceAsDes16( label, R_VR_UNSUPPORTED_INFONOTE_LABEL );
-				
-					TRAP_IGNORE( iGlobalNote->
-					ShowNoteL( EAknGlobalErrorNote, label ) );
-				
-					}
-				else if ( iMediaServerError == KErrCorrupt )
-					{
-					CCoeEnv::Static()->
-					ReadResourceAsDes16( label, R_VR_CORRUPT_INFONOTE_LABEL );
-				
-					TRAP_IGNORE( iGlobalNote->ShowNoteL( EAknGlobalErrorNote, 
-													 label ) );
-					}
-
-				else
-					{
-					TRAP_IGNORE( iErrorUI->ShowGlobalErrorNoteL( iMediaServerError ) );
-					}
-
-				}
-        	    if(iMediaServerError == KErrInUse && aPreviousState == CMdaAudioClipUtility::EPlaying)
-        	    	{
-					CVRRecViewModel* iViewModel = NULL;
-					iViewModel = dynamic_cast <CVRRecViewModel*>(iAutoStopObserver);
-					if(iViewModel != NULL)
-            		{
-            		iViewModel->HandleCommandL(ECmdPause);
-            		}
-        	        return;
-        	    	}
-        	    else
-        	    	{
-					StopAndNotify();
-        	    	}
-        	}
-        
-        //it will happen when the openfile fails
-        if (aPreviousState == CMdaAudioClipUtility::ENotReady && aCurrentState == CMdaAudioClipUtility::ENotReady )
-        	{
-#ifdef _DEBUG        	
-        	RDebug::Print( _L( "VoiceRecorder: callback stop called" ) );
-#endif	    	
-	    	iAudioRecorder->Close();				
-        	}
-        
-#ifdef _DEBUG
-		if ( aCurrentState == CMdaAudioClipUtility::ERecording)
-			{
-	        RDebug::Print( _L( "VoiceRecorder: ERecording" ) );
-			}
-#endif
-
-		} // if ( iMediaServerError != KErrNone )
-
-	if ( aCurrentState == CMdaAudioClipUtility::ERecording ||
-		 aCurrentState == CMdaAudioClipUtility::EPlaying )
-		{
-	   	// Do not allow screen saver while playing
-   	    // Errors ignored, no actions needed if API is not available	   	
-	   	iPropScreenSaver.Set( KPSUidScreenSaver,
-			KScreenSaverAllowScreenSaver, EVRScreenSaverNotAllowed );
-		}
-
-	if ( aCurrentState == CMdaAudioClipUtility::EOpen )
-		{
-		switch ( aPreviousState )
-			{
-			case CMdaAudioClipUtility::ENotReady:
-				{
-				iMemo->UpdateModifiedDate();
-				if ( iAttachingToMemo )
-				    {
-				    iAttachingToMemo = EFalse;
-				    TRAP_IGNORE( ConfigureMemoL());
-				    }
-				break;
-				}
-			default:
-				{
-				StopAndNotify();
-				break;
-				}
-			}
-		}
-    DEB_PRN_0( _L( "CVRMdaRecorder::MoscoStateChangeEvent::Exit"));
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::RegisterObserver
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::RegisterObserver( MVRObserver* aObserver )
-	{
-	if ( aObserver && iObservers.Find( aObserver ) == KErrNotFound )
-		{
-		iObservers.Append( aObserver );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::UnregisterObserver
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::UnregisterObserver( MVRObserver* aObserver )
-	{
-	if ( !aObserver )
-		{
-		return;
-		}
-		
-	TInt index( iObservers.Find( aObserver ) );
-	if ( index != KErrNotFound )
-		{
-		iObservers.Remove( index );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::SetAutoStopObserver
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::SetAutoStopObserver( MVRObserver* aObserver )
-	{
-	iAutoStopObserver = aObserver;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::AttachToMemoL
-// Opens a memo file.
-// If the specified file does not exist (yet), it is created. 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::AttachToMemoL( CVRMemo* aMemo )
-	{
-#ifdef _DEBUG
-     RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL -enter" ));      	
-#endif
-
-     // if error happen, attach will fail 
-     	
-	if( iIsAttachedToMemo )
-		{
-		User::Panic( KVRPanic,EPanicAlreadyAttached );
-		}
-
-	if( !aMemo )
-		{
-		User::Panic( KVRPanic, KErrNotFound );
-		}
-
-	iMemo = aMemo;
-
-    // if the mmc card is full, should not attach to it
-
-     RFs& fs( CEikonEnv::Static()->FsSession() );
-
-
-// old storage system
-#ifndef RD_MULTIPLE_DRIVE
-	if ( iMemo->MemoStore() == EMemoStorePhoneMemory )
-		{
-#ifdef  __AAC_ENCODER_PLUGIN
-		if (((iMemo->Quality() != EQualityHigh) && SysUtil::FFSSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf )) || 
-		((iMemo->Quality() == EQualityHigh) && SysUtil::FFSSpaceBelowCriticalLevelL( &fs, KVRAACCriticalMemoryLevel )))
-#else
-        // now AAC format is not enabled
-        if (SysUtil::FFSSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf ))
-#endif
-        	{
- 			VRUtils::ShowMemoryFullConfirmationQuery();
-			if(GetInRecordingFlag())
-				{
-				SetInRecordingFlag(EFalse);	
-				}       		
-        	}
-			
-		}
-		
-     // MMC card
-        else
-     	{
-#ifdef  __AAC_ENCODER_PLUGIN
-		if (((iMemo->Quality() != EQualityHigh) && SysUtil::MMCSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf )) || 
-		((iMemo->Quality() == EQualityHigh) && SysUtil::MMCSpaceBelowCriticalLevelL( &fs, KVRAACCriticalMemoryLevel )))
-#else
-        // now AAC format is not enabled
-        if (SysUtil::FFSSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf ))
-#endif
-        	{
-			VRUtils::ShowMemoryFullConfirmationQuery(ETrue);
-
-			if(GetInRecordingFlag())
-				{
-				SetInRecordingFlag(EFalse);	
-				}       		
-        	}     		
-     	}
-
-// now multiple drives
-#else
-
-#ifdef  __AAC_ENCODER_PLUGIN
-		if (((iMemo->Quality() != EQualityHigh) && SysUtil::DiskSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf, iMemo->StorageDrive())) ||
-		((iMemo->Quality() == EQualityHigh) && SysUtil::DiskSpaceBelowCriticalLevelL( &fs, KVRAACCriticalMemoryLevel, iMemo->StorageDrive())))		 
-#else
-        // now AAC format is not enabled
-        if (SysUtil::DiskSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf, iMemo->StorageDrive()))
-#endif 
-
-			{
-			//mmc card			
-			if ( iMemo->StorageDrive() == VRUtils::GetRemovableMassStorageL())
-				{
- 				VRUtils::ShowMemoryFullConfirmationQuery(ETrue);
-				}
-			else
-				{
-		 		VRUtils::ShowMemoryFullConfirmationQuery();
-				}
-			if(GetInRecordingFlag())
-				{
-				SetInRecordingFlag(EFalse);	
-				}			
-			}
-
-
-#endif
-	
-	// opens an existing file or creates new
-	iAudioRecorder->OpenFileL( iMemo->File() );
-	
-	iAttachingToMemo = ETrue;
-		
-	if( !iActiveWait.IsStarted() )
-		{
-#ifdef _DEBUG
-		RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL::AWaitStarting..."));
-#endif
-		iActiveWait.Start(); // CSI: 10 #
-
-#ifdef _DEBUG
-		RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL::AWResuming...[%d]"), iMediaServerError);
-#endif
-		}    
-       
-	User::LeaveIfError( iMediaServerError );
-		
-
-
-/*
-	if( !iActiveWait.IsStarted() )
-		{
-		RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL::AWaitStarting..."));
-		iActiveWait.Start(); // CSI: 10 #
-		RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL::AWResuming...[%d]"), iMediaServerError);
-		}    
-    
-	User::LeaveIfError( iMediaServerError );
-
-    // Configure bitrate if recording an AMR clip.
-    // Default bitrate is 12200 and it's used if codec doesn't support
-    // the bitrate that is retrieved from Central Repository.
-    if (iMemo->Quality() == EQualityMMSOptimized )
-        {
-        TUint configuredAmrBitrate( VRUtils::AMRBitrateL() );
-        TUint amrBitrate( KVRDefaultAmrBitrate );
-        
-        // Fetch supported bitrates and find out if configured bitrate
-        // is supported
-        RArray<TUint> rates;
-        iAudioRecorder->GetSupportedBitRatesL( rates );        
-        TInt num = rates.Count();
-        if(num > 0)
-        	{
-            rates.Sort();
-            TInt found = rates.Find(configuredAmrBitrate);
-            if (found == KErrNotFound)
-            	{
-            		amrBitrate = rates[num-1];
-            	}
-        	}
-        rates.Reset();  // Clear array      
-        iAudioRecorder->SetDestinationBitRateL( amrBitrate );                  
-        }
-
-
-// added for supporting mp4 format
-#ifdef __AAC_ENCODER_PLUGIN
-  else if (iMemo->Quality() == EQualityHigh)
-    	{
-
-         TInt configuredAacSamplerate( VRUtils::AACSamplerateL() );
-         TInt aacSampleRate( KVRDefaultSamplerateAac );
- 
-         TInt configuredAacBitrate( VRUtils::AACBitrateL() );
-         TInt aacBitrate( KVRDefaultBitrateAac );
-
-         TInt configuredAudioMode( VRUtils::AACAudioModeL() );   
- 
-         // Sample rate
-     	 RArray<TUint> supportedSampleRates;
-#ifdef _DEBUG
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-GetSupportedSampleRatesL -before" ));      	
-#endif
-         iAudioRecorder->GetSupportedSampleRatesL(supportedSampleRates);        
-
-#ifdef _DEBUG
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-GetSupportedSampleRatesL -after" ));      	
-#endif
-
-        TInt num1 = supportedSampleRates.Count();
-        if(num1 > 0)
-        	{
-            supportedSampleRates.Sort();
-            TInt found1 = supportedSampleRates.Find(configuredAacSamplerate);
-            if (found1 == KErrNotFound)
-            	{
-            		aacSampleRate = supportedSampleRates[num1-1];
-            	}
-        	}
-
-          supportedSampleRates.Reset();                           
-#ifdef _DEBUG
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-SetDestinationSampleRateL -before, sampleRate is %d"), aacSampleRate);      	
-#endif
-          iAudioRecorder->SetDestinationSampleRateL(aacSampleRate);
-
-#ifdef _DEBUG
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-SetDestinationSampleRateL -after" ));      	
-#endif
-
-
-         // Bit reate      
-         RArray<TUint> supportedBitRates;         
-
-#ifdef _DEBUG
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-GetSupportedBitRatesL -before" ));      	
-#endif
-         iAudioRecorder->GetSupportedBitRatesL(supportedBitRates);
-
-#ifdef _DEBUG
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-GetSupportedBitRatesL -after" ));      	
-#endif
-
-        TInt num2 = supportedBitRates.Count();
-        if(num2 > 0)
-        	{
-            supportedBitRates.Sort();
-            TInt found2 = supportedBitRates.Find(configuredAacBitrate);
-            if (found2 == KErrNotFound)
-            	{
-            		aacBitrate = supportedBitRates[num2-1];
-            	}
-        	}
-
-         supportedBitRates.Reset();
-
-#ifdef _DEBUG 
-        RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-SetDestinationBitRateL -before, bitrate is %d"), aacBitrate);      	
-#endif
-         iAudioRecorder->SetDestinationBitRateL(aacBitrate);
-         
-#ifdef _DEBUG 
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-SetDestinationBitRateL -after" ));      	
-#endif
-         
-         // the audio mode flag                                    
-
-#ifdef _DEBUG
-      RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL-GetSupportedNumberOfChannelsL -before" ));      	
-#endif
-         RArray<TUint> supportedNumberOfChannels;       
-         iAudioRecorder->GetSupportedNumberOfChannelsL(supportedNumberOfChannels); 
-         TInt num3 = supportedNumberOfChannels.Count();
-         if (num3 > 0)
-         	{
-         	supportedNumberOfChannels.Sort();
-            TInt ifFound = supportedNumberOfChannels.Find(configuredAudioMode);
-            if (ifFound == KErrNotFound)
-         	    {
-         	     configuredAudioMode = supportedNumberOfChannels [0];	
-         	    }
-         	}
-         supportedNumberOfChannels.Reset();
-         iAudioRecorder->SetDestinationNumberOfChannelsL(configuredAudioMode);
-        
-    	}
-#endif
- 	    iIsAttachedToMemo = ETrue;
-	    ResetPosition();	
-*/
-
-#ifdef _DEBUG
-    RDebug::Print( _L( "CVRMdaRecorder::AttachToMemoL -exit" ));      	
-#endif
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::CreateNewMemoL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::CreateNewMemoL( CVRMemo* aMemo )
-	{
-	iMemo = aMemo;
-	iAudioRecorder->OpenFileL( aMemo->File() );
-	if ( !iActiveWait.IsStarted() )
-		{
-		iActiveWait.Start(); // CSI: 10 #
-		}    
-	User::LeaveIfError( iMediaServerError );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::DetachMemo
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::DetachMemo()
-	{
-	if ( iIsAttachedToMemo )
-		{
-		Stop();
-		//Need to delete iAudioInput before close!!!
-	    	DeleteAudioInput();
-		
-	    	iAudioRecorder->Close();				
-
-		iMemo = NULL;
-		iIsAttachedToMemo = EFalse;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::SetVolume
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::SetVolume( TInt aStep, TInt aMaxSteps )
-	{
-	if ( iIsAttachedToMemo )
-		{
-		// On device, MaxVolume() typically returns 9.
-		TInt maxVolume( iAudioRecorder->MaxVolume() );
-		TInt volume = maxVolume * aStep / aMaxSteps;
-		
-		// Just to make sure that volume is between 0 .. MaxVolume
-		if ( volume < 0)
-			{
-			volume = 0;
-			}
-		else if ( volume > maxVolume )
-			{
-			volume = maxVolume;
-			}
-			
-#ifdef _DEBUG
-		RDebug::Print( _L( "VoiceRecorder: Set volume: %d, max volume: %d" ),
-						 volume, maxVolume  );
-#endif			
-		iAudioRecorder->SetVolume( volume );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::PlayL
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRMdaRecorder::PlayL()
-	{
-	__ASSERT_DEBUG( iIsAttachedToMemo, User::Panic( KVRPanic,
-		EPanicNotAttached ) );
-
-	if( iPause )
-		{
-		iAudioRecorder->SetPosition( iPosition );
-		iPosition = 0;
-		iPause = EFalse;
-		}
-
-	// This line was added to prevent MMF crash, remove it when play works 
-	// without this
-	iAudioRecorder->SetPlaybackBalance( KMMFBalanceCenter );
-	
-	SetIfStopCalled(EFalse);
-	iAudioRecorder->PlayL();
-
-    User::LeaveIfError( iPropVRState.Set( KPSUidVoiceRecorder,
-        KVoiceRecorderMode, EVRPlaying ) );
-
-   	// Do not allow screen saver while playing
-   	// Errors ignored, no actions needed if API is not available   	
-   	iPropScreenSaver.Set( KPSUidScreenSaver,
-		KScreenSaverAllowScreenSaver, EVRScreenSaverNotAllowed );
-
-	if( !iActiveWait.IsStarted() )
-		{
-		iActiveWait.Start(); // CSI: 10 #
-		}    
-	StartTimerL();
-	return iMediaServerError;
-	}
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::RecordL
-// Starts the recording of a sound clip. Checks the memory space situation
-// and plays start tone before starting recording.
-// ---------------------------------------------------------------------------
-//
-TInt CVRMdaRecorder::RecordL()
-	{
-	// If we receive record command and file is not opened yet. wait for file
-	// to be opened and then resume.
-	if ( !iIsAttachedToMemo && iAttachingToMemo && !iActiveWait.IsStarted() )
-		{
-		iActiveWait.Start();
-		User::LeaveIfError( iMediaServerError );
-	    }
-	
-	__ASSERT_DEBUG( iIsAttachedToMemo, User::Panic( KVRPanic,
-														EPanicNotAttached ) );
-    TBool wasPaused( iPause );
-	iPause = EFalse;
-
-	// Check if available memory is/goes below critical level 
-	// in that case record is not performed
-	// KVRRecStartMemBuf should be size of 60 sec AMR and 5 sec WAV
-	// New max time estimation for WAV is calculated after 5 secs
-	RFs& fs( CEikonEnv::Static()->FsSession() );
-	
-	TBool critical( EFalse );
-
-// the current storage system (phone memory and mmc card)
-#ifndef RD_MULTIPLE_DRIVE
-	if ( iMemo->MemoStore() == EMemoStorePhoneMemory )
-		{
-#ifdef  __AAC_ENCODER_PLUGIN
-		if (((iMemo->Quality() != EQualityHigh) && SysUtil::FFSSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf )) || 
-		((iMemo->Quality() == EQualityHigh) && SysUtil::FFSSpaceBelowCriticalLevelL( &fs, KVRAACCriticalMemoryLevel )))
-#else
-        // now AAC format is not enabled
-        if (SysUtil::FFSSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf ))
-#endif 	    
-			{
-			VRUtils::ShowMemoryFullConfirmationQuery();
-			critical = ETrue;
-			}
-		}
-
-     // MMC card
-     else
-     	{
-#ifdef  __AAC_ENCODER_PLUGIN
-		if (((iMemo->Quality() != EQualityHigh) && SysUtil::MMCSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf )) || 
-		((iMemo->Quality() == EQualityHigh) && SysUtil::MMCSpaceBelowCriticalLevelL( &fs, KVRAACCriticalMemoryLevel )))
-#else
-        // now AAC format is not enabled
-        if (SysUtil::MMCSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf ))
-#endif
-		    {
-			VRUtils::ShowMemoryFullConfirmationQuery( ETrue );
-			critical = ETrue;
-			}
-		
-     	}
-
-// now for multiple drives
-#else
-#ifdef  __AAC_ENCODER_PLUGIN
-		if (((iMemo->Quality() != EQualityHigh) && SysUtil::DiskSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf, iMemo->StorageDrive())) ||
-		((iMemo->Quality() == EQualityHigh) && SysUtil::DiskSpaceBelowCriticalLevelL( &fs, KVRAACCriticalMemoryLevel, iMemo->StorageDrive())))		 
-#else
-        // now AAC format is not enabled
-        if (SysUtil::DiskSpaceBelowCriticalLevelL( &fs, KVRRecStartMemBuf, iMemo->StorageDrive()))
-#endif 
-			{
-			if ( iMemo->StorageDrive() == VRUtils::GetRemovableMassStorageL())
-				{
- 				VRUtils::ShowMemoryFullConfirmationQuery(ETrue);
-				}
-			else
-				{
-		 		VRUtils::ShowMemoryFullConfirmationQuery();
-				}
-			critical = ETrue;
-			}
-
-
-#endif
-
-	if( critical )
-		{
-		User::Leave( KErrDiskFull );
-		}
-
-
-    if ( !wasPaused )
-        {
-    	iTonePlayer->PlayTone( EAvkonSIDVoiceRecordingStartTone );
-    	iTonePlayer->PrepareToneL( EAvkonSIDVoiceRecordingStopTone );
-        }
-
-// start monitor disk space 	 
-#ifdef  __AAC_ENCODER_PLUGIN
-    if (iMemo->Quality() == EQualityHigh)
-    	{
-        TInt drive (0);
-#ifndef RD_MULTIPLE_DRIVE
-	    if ( iMemo->MemoStore() == EMemoStorePhoneMemory )
-		    {
-		    drive = EDriveC;	
-		    }
-        else
-    	    {
-    	    drive = EDriveE;	
-    	    }
-// multiple drives
-#else
-        drive = iMemo->StorageDrive();
-#endif
-
-        iDiskSpaceWatcher->RequestNotification(KVRAACCriticalMemoryLevel,drive);		
-    	}
-#endif
-
-	// Set recording preference
-	iAudioRecorder->SetPriority( KAudioPriorityRecording, 
-				TMdaPriorityPreference( KAudioPrefVoiceRec ) );	
-	iAudioRecorder->SetGain( iAudioRecorder->MaxGain() );
-
-	SetIfStopCalled(EFalse);
-
-	iAudioRecorder->RecordL();
-	
-	// Sets the indication that recording has started -> 
-	// Current file's handle can't be reused for next file
-	iMemo->SetRecorded( ETrue );
-	
-			
-    User::LeaveIfError( iPropVRState.Set( KPSUidVoiceRecorder,
-        KVoiceRecorderMode, EVRRecording ) );
-
-   	// Do not allow screen saver while recording
-   	// Errors ignored, no actions needed if API is not available
-   	iPropScreenSaver.Set( KPSUidScreenSaver, KScreenSaverAllowScreenSaver,
-   		EVRScreenSaverNotAllowed );
-
-	if( !iActiveWait.IsStarted() )
-		{
-		iActiveWait.Start(); // CSI: 10 #
-		}    
-	StartTimerL();
-
-	return iMediaServerError;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::Stop
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::Stop()
-	{
-	if ( iIsAttachedToMemo )
-		{
-		TBool reallyStopping( iPause );		
-#ifdef _DEBUG
-		RDebug::Print( _L( "VoiceRecorder: Stop error: %d" ), 
-				iMediaServerError );
-#endif
-		iPause = EFalse;
-
-		if( iAudioRecorder->State() == CMdaAudioRecorderUtility::ERecording )
-			{
-			reallyStopping = ETrue;
-            
-            // if the dim light is on, turn off it.
-            if(iDimLight)
-				{
-	            
-				iLight->ReleaseLight (CHWRMLight::EPrimaryDisplay);
-				User::ResetInactivityTime();
-                iDimLight = EFalse;
-				}			
-			
-			}
-	    // it will tell VRecorder not pause because it has been stopped.
-		SetIfStopCalled(ETrue);	
-		iAudioRecorder->Stop();
-
-	    // if error does not happen in recording, change the file to visible 
-	    iMemo->File().SetAtt( KEntryAttNormal, KEntryAttHidden);	
-				
-		iTonePlayer->PlayTone( EAvkonSIDVoiceRecordingStopTone );
-		iTonePlayer->PrepareTone( EAvkonSIDVoiceRecordingStartTone );			
-
-		if( ( iAudioRecorder->State() == CMdaAudioRecorderUtility::EOpen ) ||
-				reallyStopping )
-			{
-			// Set lower preference to ensure other sounds will 
-			// be played correctly
-			iAudioRecorder->SetPriority( KAudioPriorityRecording, 
-				TMdaPriorityPreference( KAudioPrefRealOneLocalPlayback ) );
-			}
-
-        // Error value ignored if PS key is not available
-        iPropVRState.Set( KPSUidVoiceRecorder, KVoiceRecorderMode, EVRIdle );
-        // Used to check the state of a phone call if any
-       
-        if ( iCurrentCallHandler ) 
-        	{
-        	delete iCurrentCallHandler;
-        	iCurrentCallHandler = NULL;
-        	}
-        
-    	TRAP_IGNORE( iCurrentCallHandler = CVRSystemEventHandler::NewL() );
-    	TInt currentState( 0 );
-    	TRAP_IGNORE( currentState = iCurrentCallHandler->StateL( KPSUidCtsyCallInformation, KCTsyCallState ) );
-    	
-    	// Do not allow screen saver if there is an active phone call
-    	if(currentState == EPSCTsyCallStateRinging)
-    		{
-    	   	// Do not allow screen saver
-       	  // Errors ignored, no actions needed if API is not available	   	
-    	   	iPropScreenSaver.Set( KPSUidScreenSaver,
-        		KScreenSaverAllowScreenSaver, EVRScreenSaverNotAllowed );
-    		}
-    	else
-    		{
-    	   	// Allow screen saver
-       	    // Errors ignored, no actions needed if API is not available	   	
-    	   	iPropScreenSaver.Set( KPSUidScreenSaver,
-        		KScreenSaverAllowScreenSaver, EVRScreenSaverAllowed );
-    		}
-
-		StopTimer();
-		ResetPosition();
-		iMemo->UpdateModifiedDate();
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::StopAndNotify
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::StopAndNotify()
-	{
-	Stop();
-	if ( iAutoStopObserver )
-		{
-#ifdef _DEBUG
-		RDebug::Print( _L( "VoiceRecorder: StopAndNotify AutoStopObserver: %d" ),
-				iMediaServerError );
-#endif
-		iAutoStopObserver->Update();
-#ifdef _DEBUG
-		RDebug::Print( _L( "VoiceRecorder: StopAndNotify AutoStopObserver: %d" ),
-				iMediaServerError );
-#endif
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::Pause
-// 
-// ---------------------------------------------------------------------------
-void CVRMdaRecorder::Pause()
-	{
-	__ASSERT_DEBUG( iIsAttachedToMemo, User::Panic( KVRPanic,
-		EPanicNotAttached ) );
-
-	iPause = ETrue;
-
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder: Pause called. Position: %d:%d"),
-	    I64HIGH( iPosition.Int64() ), I64LOW( iPosition.Int64() )  );
-#endif
-
-	iAudioRecorder->Stop();
-
-    // Error value ignored if PS key is not available
-    iPropVRState.Set( KPSUidVoiceRecorder, KVoiceRecorderMode, EVRIdle );
-
-   	// Don't allow screen saver
-   	// Errors ignored, no actions needed if API is not available   	
-   	iPropScreenSaver.Set( KPSUidScreenSaver,
-		KScreenSaverAllowScreenSaver, EVRScreenSaverAllowed );
-
-	StopTimer();
-	SyncAndNotify();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::ForwardL
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRMdaRecorder::ForwardL()
-	{
-	if ( !MovePositionL( KVRMdaRecorderDefaultStep ) )
-		{
-		return KErrOverflow;
-		}
-	return iMediaServerError;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::RewindL
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRMdaRecorder::RewindL()
-	{
-	MovePositionL( -KVRMdaRecorderDefaultStep );
-	return iMediaServerError;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::CanAcceptCommands
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRMdaRecorder::CanAcceptCommands() const
-	{
-	return !iActiveWait.IsStarted();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::MovePositionL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRMdaRecorder::MovePositionL( TInt aSeconds )
-	{
-	__ASSERT_DEBUG( iIsAttachedToMemo, User::Panic( KVRPanic,
-													EPanicNotAttached ) );
-
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder: MovePosition called. Base position: %d:%d"),
-	    I64HIGH( iAudioRecorder->Position().Int64() ),
-        I64LOW( iAudioRecorder->Position().Int64() )  );
-#endif
-
-	TInt64 interval;
-	if (iPause)
-		{
-		interval = iPosition.Int64() + aSeconds * KVRSecondAsMicroSeconds;
-		}
-	// Not sure if iPosition value is valid other than when paused, so do as
-	// previous for all other states:
-	else 
-		{
-		interval = iAudioRecorder->Position().Int64() + 
-								   aSeconds * 
-								   KVRSecondAsMicroSeconds;
-		}
-	
-	// Truncated to integer values	
-	TInt integerInterval( interval / KVRSecondAsMicroSeconds );
-	TInt integerDuration( iAudioRecorder->Duration().Int64() / 
-						  KVRSecondAsMicroSeconds );	
-	if ( interval < 0 )
-		{
-		interval = 0;
-		}
-	// if gone past the end or integer values are the same 
-	// in duration and position	
-	else if ( interval > iAudioRecorder->Duration().Int64() || 
-		integerInterval == integerDuration )
-		{
-		interval = iAudioRecorder->Duration().Int64();
-		}
-
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder: MovePosition called. Interval: %d:%d"),
-	 I64HIGH( interval ), I64LOW( interval )  );
-#endif
-
-	TTimeIntervalMicroSeconds newPosition( interval );
-
-	if (iPause)
-		{
-		iPosition = newPosition;
-		}
-	else if ( iAudioRecorder->State() == CMdaAudioClipUtility::EOpen )
-		{
-		// not playing, recording or paused.
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder. Idle.: MovePosition called. New Position: %d:%d"),
-	 I64HIGH( newPosition.Int64() ), I64LOW( newPosition.Int64() )  );
-#endif
-		iAudioRecorder->SetPosition( newPosition );
-		}
-	else
-		{
-
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder. Playing.: MovePosition called. New Position: %d:%d"),
-	 I64HIGH( newPosition.Int64() ), I64LOW( newPosition.Int64() )  );
-#endif
-
-		iAudioRecorder->Stop();
-		iAudioRecorder->SetPosition( newPosition );
-		iAudioRecorder->PlayL();
-		if( !iActiveWait.IsStarted() )
-			{
-			iActiveWait.Start(); // CSI: 10 #
-			}		
-		}
-	SyncAndNotify();
-	return ETrue;
-	}
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::ConfigureMemoL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::ConfigureMemoL()
-    {
-    DEB_PRN_0( _L( "CVRMdaRecorder::ConfigureMemoL-Enter" ));
-
-    // Configure bitrate if recording an AMR clip.
-    // Default bitrate is 12200 and it's used if codec doesn't support
-    // the bitrate that is retrieved from Central Repository.
-    if (iMemo->Quality() == EQualityMMSOptimized )
-        {
-        TUint configuredAmrBitrate( VRUtils::AMRBitrateL() );
-        TUint amrBitrate( KVRDefaultAmrBitrate );
-
-        // Fetch supported bitrates and find out if configured bitrate
-        // is supported
-        RArray<TUint> rates;
-        iAudioRecorder->GetSupportedBitRatesL( rates );        
-        TInt num = rates.Count();
-        if(num > 0)
-            {
-            rates.Sort();
-            TInt found = rates.Find(configuredAmrBitrate);
-            if (found == KErrNotFound)
-                {
-                amrBitrate = rates[num-1];
-                }
-            }
-        rates.Reset();  // Clear array      
-        iAudioRecorder->SetDestinationBitRateL( amrBitrate );                  
-
-        DEB_PRN_0( _L( "CVRMdaRecorder::ConfigureMemoL-Configured MMSOpt bitrate" ));
-        }
-
-
-    // added for supporting mp4 format
-#ifdef __AAC_ENCODER_PLUGIN
-    else if (iMemo->Quality() == EQualityHigh)
-    	{
-        TInt configuredAacSamplerate( VRUtils::AACSamplerateL() );
-        TInt aacSampleRate( KVRDefaultSamplerateAac );
-
-        TInt configuredAacBitrate( VRUtils::AACBitrateL() );
-        TInt aacBitrate( KVRDefaultBitrateAac );
-
-        TInt configuredAudioMode( VRUtils::AACAudioModeL() );   
-
-        // Sample rate
-        RArray<TUint> supportedSampleRates;
-        iAudioRecorder->GetSupportedSampleRatesL(supportedSampleRates);        
-
-        TInt num1 = supportedSampleRates.Count();
-        if(num1 > 0)
-            {
-            supportedSampleRates.Sort();
-            TInt found1 = supportedSampleRates.Find(configuredAacSamplerate);
-            if (found1 == KErrNotFound)
-                {
-                aacSampleRate = supportedSampleRates[num1-1];
-                }
-            }
-        supportedSampleRates.Reset();                           
-        iAudioRecorder->SetDestinationSampleRateL(aacSampleRate);
-
-        DEB_PRN_0( _L( "CVRMdaRecorder::ConfigureMemoL-Configured HiQ sampling rate" ));
-
-        // Bit reate      
-        RArray<TUint> supportedBitRates;         
-        iAudioRecorder->GetSupportedBitRatesL(supportedBitRates);
-        TInt num2 = supportedBitRates.Count();
-        if(num2 > 0)
-            {
-            supportedBitRates.Sort();
-            TInt found2 = supportedBitRates.Find(configuredAacBitrate);
-            if (found2 == KErrNotFound)
-                {
-                aacBitrate = supportedBitRates[num2-1];
-                }
-            }
-        supportedBitRates.Reset();
-        iAudioRecorder->SetDestinationBitRateL(aacBitrate);
-        DEB_PRN_0( _L( "CVRMdaRecorder::ConfigureMemoL-Configured HiQ bit rate" ));
-
-        // the audio mode flag                                    
-        RArray<TUint> supportedNumberOfChannels;       
-        iAudioRecorder->GetSupportedNumberOfChannelsL(supportedNumberOfChannels); 
-        TInt num3 = supportedNumberOfChannels.Count();
-        if (num3 > 0)
-            {
-            supportedNumberOfChannels.Sort();
-            TInt ifFound = supportedNumberOfChannels.Find(configuredAudioMode);
-            if (ifFound == KErrNotFound)
-                {
-                configuredAudioMode = supportedNumberOfChannels [0];	
-                }
-            }
-        supportedNumberOfChannels.Reset();
-        iAudioRecorder->SetDestinationNumberOfChannelsL(configuredAudioMode);
-        
-        DEB_PRN_0( _L( "CVRMdaRecorder::ConfigureMemoL-Configured HiQ channel" ));        
-        }
-#endif // __AAC_ENCODER_PLUGIN
-    iIsAttachedToMemo = ETrue;
-    ResetPosition();
-    DEB_PRN_0( _L( "CVRMdaRecorder::ConfigureMemoL-Exit" ));
-    }
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::ResetPosition
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::ResetPosition()
-	{
-	if ( iIsAttachedToMemo )
-		{
-		iAudioRecorder->SetPosition( TTimeIntervalMicroSeconds( 0 ) );
-		SyncAndNotify();
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::StartTimerL
-// Create and start a timer with initial delay of 0
-// and a frequency of one second 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::StartTimerL()
-	{
-	StopTimer();	// stop if already running
-
-	TCallBack cb( TimerCallBack, this );
-	iTimer = CPeriodic::NewL( 1 );  // priority = EPriorityNormal + 1 = 1
-	iTimer->Start( 0, KVRDisplayUpdateDelay, cb );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::StopTimer
-// Stop the timer by deleting the CPeriodic object 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::StopTimer()
-	{
-	delete iTimer;
-	iTimer = NULL;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::SyncAndNotify
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::SyncAndNotify()
-	{
-	if(!iPause)
-		{
-		iPosition = iAudioRecorder->Position();
-		}
-	iMemo->SetPosition( iPosition );
-
-	iMemo->SetDuration( iAudioRecorder->Duration() );
-
-	for ( int i = 0; i < iObservers.Count(); i++ )
-		{
-		TVRUpdateCommand command( EVRUpdate );
-		if ( ( iMemo->Position().Int64() / KVRSecondAsMicroSeconds ) == 1 )
-		    {
-		    command = EVRUpdate1Second;
-		    }
-		iObservers[ i ]->Update( command );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::TimerCallBack
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRMdaRecorder::TimerCallBack( TAny* aMdaRecorder )
-	{
-	CVRMdaRecorder* recorder = reinterpret_cast< CVRMdaRecorder* >(
-															   aMdaRecorder );
-	recorder->HandleTick();
-	return ETrue;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::HandleTick
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::HandleTick()
-	{
-	SyncAndNotify();
-
-	if ( iAudioRecorder->State() == CMdaAudioClipUtility::ERecording )
-		{
-		
-		TTimeIntervalMicroSeconds position( 0 );
-		TTimeIntervalMicroSeconds duration( 0 );
-		TTimeIntervalMicroSeconds maxDuration( 0 );
-		
-		position = iMemo->Position();
-		duration = iMemo->Duration();
-		maxDuration = iMemo->MaxDuration();
-		
-		// Position value is used for comparison because it gives more accurate 
-		// value than Duration value
-		if ( position >= maxDuration )
-			{
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder: Max duration passed. Position: %d:%d"),
-	 I64HIGH( position.Int64() ), I64LOW( position.Int64() )  );
-#endif	
-
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder: Max duration passed. Duration: %d:%d"),
-	 I64HIGH( duration.Int64() ), I64LOW( duration.Int64() )  );
-#endif	
-
-#ifdef _DEBUG
-	RDebug::Print( _L("VoiceRecorder: Max duration passed. MaxDuration: %d:%d"),
-	 I64HIGH( maxDuration.Int64() ), I64LOW( maxDuration.Int64() )  );
-#endif	
-			// Note that some data cropping is possible after stopping
-			// ->Duration decreases
-			StopAndNotify();
-			}
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::SetIhf
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRMdaRecorder::SetIhf( TBool /*aEnabled*/ )
-	{
-	return KErrNotSupported;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMdaRecorder::SetPositionL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMdaRecorder::SetPositionL( TInt aSeconds )
-	{
-	__ASSERT_DEBUG( iIsAttachedToMemo, User::Panic( KVRPanic,
-											EPanicNotAttached ) );
-	
-	if( iAudioRecorder->State() == CMdaAudioClipUtility::ERecording ||
-		iAudioRecorder->State() == CMdaAudioClipUtility::ENotReady )
-		{
-		return;
-		}
-		
-	TInt64 interval ( TInt64( aSeconds ) * KVRSecondAsMicroSeconds );
-	
-	// Truncated to integer values	
-	TInt integerInterval( interval / KVRSecondAsMicroSeconds );
-	TInt integerDuration( iAudioRecorder->Duration().Int64() / 
-										  KVRSecondAsMicroSeconds );	
-	
-	if ( interval < 0 || integerDuration == 0 )
-		{
-		interval = 0;
-		}
-	// if gone past the end or integer values are the same in 
-	// duration and position
-	else if ( interval > iAudioRecorder->Duration().Int64() || 
-		integerInterval == integerDuration )
-		{
-		interval = iAudioRecorder->Duration().Int64();
-		}
-
-	TTimeIntervalMicroSeconds newPosition( interval );
-
-	if ( iPause )
-		{
-		iPosition = newPosition;
-		}
-	else if ( iAudioRecorder->State() == CMdaAudioClipUtility::EOpen )
-		{
-		iAudioRecorder->SetPosition( newPosition );
-		}
-	else
-		{
-		iAudioRecorder->Stop();
-		iAudioRecorder->SetPosition( newPosition );
-		iAudioRecorder->PlayL();
-		if( !iActiveWait.IsStarted() )
-			{
-			iActiveWait.Start(); // CSI: 10 #
-			}
-		}
-	SyncAndNotify();	
-	}
-
-// ---------------------------------------------------------
-// From class MBacklightControlObserver.
-// CNTExternalEventObserver::LightStatusChanged
-// ---------------------------------------------------------
-//
-void CVRMdaRecorder::LightStatusChanged(TInt aTarget, CHWRMLight::TLightStatus aStatus)
-     {
-
-     if(aTarget == CHWRMLight::EPrimaryDisplayAndKeyboard || aTarget == CHWRMLight::EPrimaryDisplay)
-     	{
-        if(aStatus == CHWRMLight::ELightOff)
-            {
- 	        if (iAudioRecorder)
- 	        	{	
- 	            if (iAudioRecorder->State() == CMdaAudioClipUtility::ERecording ) // set light to dimmed
- 	                {
-
-                    TRAPD(err, iLight->LightOnL(CHWRMLight::EPrimaryDisplay, KHWRMInfiniteDuration, 10, ETrue));
-                    if ( err == KErrNone )
-                       {
-                       iDimLight = ETrue;
-                       }
-
- 	                }
-               	}
-               	
-                return;
-             }
-         
-         if((aStatus == CHWRMLight::ELightOn) && (aTarget == CHWRMLight::EPrimaryKeyboard))
-         	{
-             
-             if (iLight)
-             	{
-             		             	
-                CHWRMLight::TLightStatus status = iLight->LightStatus(CHWRMLight::EPrimaryDisplay);
-                
-                if( (status == CHWRMLight::ELightOn)  && iDimLight )
-                	{
-                	    User::ResetInactivityTime();
-                		iDimLight = EFalse;
-                	}
-             	}
-            return;
-         	}
-     
-     	}
-     }
-
-
-// ---------------------------------------------------------
-// GetInRecordingFlag
-// 
-// ---------------------------------------------------------
-//		
-TBool CVRMdaRecorder::GetInRecordingFlag()
-	{
-		return ifInRecording;
-	}
-	
-	
-// ---------------------------------------------------------
-// SetInRecordingFlag
-// ---------------------------------------------------------
-//
-void CVRMdaRecorder::SetInRecordingFlag(TBool aFlag)
-	{
-	ifInRecording = aFlag;	
-	}
-
-
-// ---------------------------------------------------------
-// GetInRecordingFlag
-// 
-// ---------------------------------------------------------
-//		
-TBool CVRMdaRecorder::GetIfStopCalled()
-	{
-		return ifStopCalled;
-	}
-	
-	
-// ---------------------------------------------------------
-// SetInRecordingFlag
-// ---------------------------------------------------------
-//
-void CVRMdaRecorder::SetIfStopCalled(TBool aFlag)
-	{
-	ifStopCalled = aFlag;	
-	}
-
-// ---------------------------------------------------------
-// IsAttachedToMemo
-// ---------------------------------------------------------
-//
-TBool CVRMdaRecorder::IsAttachedToMemo()
-	{
-	return iIsAttachedToMemo;
-	}
-
-
-// ---------------------------------------------------------
-// CreateAudioInput
-// ---------------------------------------------------------
-//	
-void CVRMdaRecorder::CreateAudioInputL()
-	{
-	CAudioInput::TAudioInputPreference audioInput = CAudioInput::EDefaultMic;
-  
-	if ((iAudioRecorder->State() == CMdaAudioClipUtility::EOpen)&&
-	    (!iAudioInput))
-    	{  
-        iAudioInput = CAudioInput::NewL(*iAudioRecorder);        
-        SetAudioInputL(audioInput); 
-        iCurrentAudioInput = audioInput;                                    
-    	}
-    
-	}
-// ---------------------------------------------------------
-// SetAudioInputL
-// ---------------------------------------------------------
-//
-void CVRMdaRecorder::SetAudioInputL(CAudioInput::TAudioInputPreference aAudioInput)
-	{
-	if((iAudioInput)&&(iCurrentAudioInput!=aAudioInput))
-    	{	
-        RArray<CAudioInput::TAudioInputPreference> inputArray(4);
-        CleanupClosePushL( inputArray );
-        inputArray.Append( aAudioInput );
-        iAudioInput->SetAudioInputL( inputArray.Array() );   
-        CleanupStack::PopAndDestroy( &inputArray );
-        iCurrentAudioInput = aAudioInput;
-    	}
-    	
-	}
-	
-// ---------------------------------------------------------
-// DeleteAudioInput
-// ---------------------------------------------------------
-//	
-void CVRMdaRecorder::DeleteAudioInput()
-	{
-	delete iAudioInput;
-	iAudioInput = NULL;
-	}
-	
-// ---------------------------------------------------------
-// ConfigSampleRateOfVoiceCallL
-// ---------------------------------------------------------
-//	
-void CVRMdaRecorder::ConfigSampleRateOfVoiceCallL()
-	{
-	// Sample rate
-	TUint sampleRates = iAudioRecorder->DestinationSampleRateL();
-	TInt configuredAacSamplerate( VRUtils::AACSamplerateL() );
-	if(sampleRates == configuredAacSamplerate)
-		{
-		return;
-		}
-	
-	if (iMemo->Quality() == EQualityHigh)
-		{
-		TInt aacSampleRate( KVRDefaultSamplerateAac );
-		// Sample rate
-		RArray<TUint> supportedSampleRates;
-		iAudioRecorder->GetSupportedSampleRatesL(supportedSampleRates);
-		TInt num1 = supportedSampleRates.Count();
-		if(num1 > 0)
-			{
-			supportedSampleRates.Sort();
-			TInt found1 = supportedSampleRates.Find(configuredAacSamplerate);
-			if (found1 == KErrNotFound)
-				{
-				aacSampleRate = supportedSampleRates[num1-1];
-				}
-			}
-		supportedSampleRates.Reset(); 
-		iAudioRecorder->SetDestinationSampleRateL(aacSampleRate);
-		}
-	}
-
-// End of file
--- a/voicerecorder/RecViewSrc/CVRMdaRecorder.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,441 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class acts as a high level wrapper around the media server
-*     playback and recording functionalities.
-*
-*/
-
-
-#ifndef __CVRMDARECORDER_H__
-#define __CVRMDARECORDER_H__
-
-// INCLUDES
-#include <e32property.h>
-#include <mdaaudiosampleeditor.h>
-#include <hwrmlight.h>
-
-#include "MVRMdaRecorder.h"
-#include "MVRUpdateEventProvider.h"
-
-#include <AudioInput.h>
-// FORWARD DECLARATIONS
-class CVRSystemEventHandler;
-class CAknGlobalNote;
-class CMdaAudioRecorderUtility;
-class CVRMemo;
-class MVRObserver;
-class CErrorUI;
-class CAudioOutput;
-class CVRTonePlayer;
-class CVRDiskSpaceWatcher;
-class CAudioInput;
-
-// CLASS DEFINITION
-/**
-* This class acts as a high level wrapper around the media server
-* playback and recording functionalities.
-*/
-NONSHARABLE_CLASS( CVRMdaRecorder )
-    : public CBase, public MVRMdaRecorder,
-      public MMdaObjectStateChangeObserver, 
-      public MVRUpdateEventProvider,
-      public MHWRMLightObserver   // for light control
-	{
-	public: // Constructors and destructor
-
-		/**
-		* Default constructor
-		*/
-		CVRMdaRecorder();
-
-		/**
-		* Destructor
-		*/
-		~CVRMdaRecorder();
-
-		/**
-		* 2nd phase constructor
-		*/
-		void ConstructL();
-
-	public: // from MMdaObjectStateChangeObserver
-
-		/**
-		* Encapsulates the interface for handling the change of state of
-		* an audio data sample object.
-		* @param aObject A pointer to the audio sample object that has
-		*				 changed state.
-		* @param aPreviousState The state before the change
-		* @param aCurrentState The state after the change
-		* @param aErrorCode If not KErrNone, then the error that
-		*					caused the state change
-		*/
-		void MoscoStateChangeEvent( CBase* aObject, TInt aPreviousState,
-									TInt aCurrentState, TInt aErrorCode );
-
-		/**
-		* Registers an observer for receiving update notifications.
-		* @param aObserver The observer object.
-		*/
-		void RegisterObserver( MVRObserver* aObserver );
-
-		/**
-		* Unregisters a previously registered observer
-		* @param aObserver The observer object.
-		*/
-		void UnregisterObserver( MVRObserver* aObserver );
-
-		/**
-		* Registers an observer for receiving auto stop notifications.
-		* @param aObserver The observer object.
-		*/
-		void SetAutoStopObserver( MVRObserver* aObserver );
-
-		/**
-		* Attachs this recorder to a memo file, i.e. opens it
-		* and initialises media server.
-		* @param aMemo Specifies the file to be attached to.
-		*/
-		void AttachToMemoL( CVRMemo* aMemo );
-
-		/**
-		* Creates a new memo file and attachs to it.
-		* @param aMemo Specifies the file to be created.
-		*/
-		void CreateNewMemoL( CVRMemo* aMemo );
-
-		/**
-		* Detachs from the current memo, i.e. closes the file.
-		*/
-		void DetachMemo();
-
-		/**
-		* Sets playback volume.
-		* @param aStep Volume level in steps
-		* @param aMaxSteps How many steps there are (10 usually).
-		*/
-		void SetVolume( TInt aStep, TInt aMaxSteps );
-
-		/**
-		* Starts playback.
-		* @return System wide error code
-		*/
-		TInt PlayL();
-
-		/**
-		* Starts recording.
-		* @return System wide error code
-		*/
-		TInt RecordL();
-
-		/**
-		* Stops playback or recording.
-		*/
-		void Stop();
-
-		/**
-		* Pauses playback or recording.
-		*/
-		void Pause();
-
-		/**
-		* Moves the playing position forward 5 seconds.
-		* @return System wide error code. KErrOverflow if the
-		* position was forwarded past the end.
-		*/
-		TInt ForwardL();
-
-		/**
-		* Moves the playing position backward 5 seconds.
-		* @return System wide error code
-		*/
-		TInt RewindL();
-
-		/**
-		* Indicates if we are in a state that can accept
-		* more commands (i.e. all async calls have completed).
-		* @return ETrue if it's ok to proceed calling methods.
-		*/
-		TBool CanAcceptCommands() const;
-
-		/**
-		* Set active speaker if feature is supported
-		* @param aEnabled ETrue if playback should be routed to IHF
-		* @return Error code returned by routing operation
-		*/
-		TInt SetIhf( TBool aEnabled );
-
-		/**
-		* Set the audio recorder position to a new value
-		* @param aSeconds The position to set
-		*/
-		void SetPositionL( TInt aSeconds );
-
-        /**
-        * From MBacklightControlObserver.
-        * Callback for change in backlight status
-        *
-        * @since S60 ?S60_version
-        * @param aTarget The target of light change event; keypad, screen or both
-        * @param aTarget New status of the target
-        */
-        void LightStatusChanged(TInt aTarget, CHWRMLight::TLightStatus aStatus);
-	
-		/**
-		* Returns iInRecording flag
-		* @return True or False
-		*/
-        TBool GetInRecordingFlag();
-        
-       /**
-		* set iInRecording flag
-		* 
-		*/
-        void SetInRecordingFlag(TBool);
- 
-		/**
-		* Returns ifStopCalled flag
-		* @return True or False
-		*/
-        TBool GetIfStopCalled();
-        
-       /**
-		* set ifStopCalled flag
-		* 
-		*/
-        void SetIfStopCalled(TBool); 
- 
-       /**
-		* return the iIsAttachToMemo flag
-		* 
-		*/
-        TBool IsAttachedToMemo();
-            	/** 
-		* Sets the AudioInput.
-		* 
-		* Leaves on error.
-		*/
-        void SetAudioInputL(CAudioInput::TAudioInputPreference aAudioInput);
-        
-       /**
-		* set sample rate during voice call
-		* 
-		*/
-        void ConfigSampleRateOfVoiceCallL();
-                 
-public:
-      friend class CVRDiskSpaceWatcher;        
-  
-	private: // new methods
-
-		/**
-		* Moves the playing position to beginning.
-		*/
-		void ResetPosition();
-
-		/**
-		* Stops playing or recording and notifies the observer
-		* registered with SetAutoStopObserver().
-		*/
-		void StopAndNotify();
-
-		/**
-		* Updates duration and position fields in CVRMemo
-		* and notifies the observer registered with SetObserver();
-		*/
-		void SyncAndNotify();
-
-		/**
-		* Creates and starts a CPeriodic timer object
-		* with a resolution of one second.
-		*/
-		void StartTimerL();
-
-		/**
-		* Stops and deletes the timer object.
-		*/
-		void StopTimer();
-
-		/**
-		* Called by the CPeriodic timer to handle a tick.
-		* Uses HandleTick() to do the actual work.
-		* @param aMdaRecorder Always a valid pointer to CVRMdaRecorder object
-		* @return ETrue to indicate that the timer should continue.
-		*/
-		static TInt TimerCallBack( TAny* aMdaRecorder );
-
-		/**
-		* Non-static variant of TimerCallBack (more convinient to implement).
-		*/
-		void HandleTick();
-
-		/**
-		* Moves the playing position forward or backward.
-		* @param aSeconds Negative for bacward, positive for forward
-		* @return EFalse if the position moved past the end
-		*/
-		TBool MovePositionL( TInt aSeconds );
-		
-		/**
-		* Configures the memo to be recorded.
-		*
-		* This function reads configuration data (bitrate, sampling rate,
-		* mono/stereo information from utility and configures the clip opened
-		* recording.
-		*
-		* Leaves on error.
-		*
-		*/
-		void ConfigureMemoL();
-		
-        
-        	/** 
-		* Creates the AudioInput.
-		* 
-		* Leaves on error.
-		*/
-        	void CreateAudioInputL();
-        
-      
-		/**
-		* Deletes the AudioInput.
-		*
-		*/
-        	void DeleteAudioInput();
-        
-        
-
-	private: // data
-		
-		/**
-		* For listening call events. Owned.
-		*/
-		CVRSystemEventHandler* iCurrentCallHandler;
-
-		/**
-		* Pointer to the media server audio recorder object. Owned.
-		*/
-		CMdaAudioRecorderUtility* iAudioRecorder;
-
-		/**
-		* Pointer to the voice memo object. Not owned.
-		*/
-		CVRMemo* iMemo;
-
-		/**
-		* Pointer to the timer object. Owned.
-		*/
-		CPeriodic* iTimer;
-
-		/**
-		* Pointers to the memo status observers. Not owned.
-		*/
-		RPointerArray<MVRObserver> iObservers;
-
-		/**
-		* Pointer to the auto stop (non-user initiated) observer. Not owned.
-		*/
-		MVRObserver* iAutoStopObserver;
-
-
-		/**
-		* ETrue if a memo is currently attached.
-		*/
-		TBool iIsAttachedToMemo;
-
-		/**
-		* Identifies the last media server error, or KErrNone.
-		*/
-		TInt iMediaServerError;
-
-		/**
-		* CActiveScheduler wrapper object. Owned.
-		*/
-		CActiveSchedulerWait iActiveWait;
-
-		/**
-		* Pointer to the generic error note object. Owned.
-		*/
-		CAknGlobalNote* iGlobalNote;
-
-		/**
-		* Pointer to a Error UI object. Owned.
-		* Used for showing system error notes
-		*/
-		CErrorUI* iErrorUI;
-
-        /**
-		* Pub&Sub property.
-		* For notifying voice dialing about the state of voice recorder
-		*/        
-        RProperty iPropVRState;
-
-        /**
-		* Pub&Sub property.
-		* For checking and setting the state of the screen saver.
-		*/
-        RProperty iPropScreenSaver;
-        
-		/**
-		* Fix for pause problem
-		*/
-		TBool iPause;
-
-		/**
-		* For storing current position
-		*/
-		TTimeIntervalMicroSeconds iPosition;
-		
-		/**
-		* For playing the recording start and stop tones. Owned.
-		*/
-		CVRTonePlayer* iTonePlayer;
-
-	    /**
-		* Pointer to the CHWRMLight. owned.
-		*/
-        CHWRMLight* iLight;
-
-	    /**
-		* State of the Light. If EFalse the dimmed light is set as off
-		* causes no action.
-		*/
-		TBool iDimLight;
-		
-		// Boolean to maintain attaching to memo state.
-		TBool iAttachingToMemo;
-
-       /**
-		* Returns if Voice Recorder start to record new file (real recording not necessary started) .
-		* @return True or False
-		*/
-        TBool ifInRecording;
-
-
-       /**
-		* Returns if Voice Recorder has called stoped, if so should not handle Pause .
-		* @return True or False
-		*/
-        TBool ifStopCalled;
-
-        
-        CVRDiskSpaceWatcher* iDiskSpaceWatcher;
-        CAudioInput* iAudioInput;
-        CAudioInput::TAudioInputPreference iCurrentAudioInput;
-
-
-  	};
-
-#endif // __CVRMDARECORDER_H__
--- a/voicerecorder/RecViewSrc/CVRMediaRemovalMonitor.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +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:  Monitors for Media removal
-*
-*/
-
-
-#include <e32base.h>
-#include <f32file.h>
-#include "CVRMediaRemovalMonitor.h"
-
-// ---------------------------------------------------------------------------
-// C++ Constructor
-// ---------------------------------------------------------------------------
-//
-CVRMediaRemovalMonitor::CVRMediaRemovalMonitor
-                  ( TInt aDrive, RFs& aFs, MVRMediaRemovalObserver* aObserver ) 
-                                                       : CActive(EPriorityHigh),
-                                                         iDrive( aDrive ),
-                                                         iFs( aFs ),
-                                                         iDiskRemoved( EFalse ),
-                                                         iObserver( aObserver )
-                                                         
-    {
-    CActiveScheduler::Add(this);
-    }
-
-
-// ---------------------------------------------------------------------------
-// 2nd Phase Constructor
-// ---------------------------------------------------------------------------
-//
-void CVRMediaRemovalMonitor::ConstructL()
-    {
- 
-    // Initial state
-    TDriveInfo drive;
-  	User::LeaveIfError(iFs.Drive(drive, TInt(iDrive)));
-   	iDiskRemoved = (drive.iType == EMediaNotPresent);
-
-    // Start listening
-    TNotifyType notType(ENotifyDisk);
-    iFs.NotifyChange( notType, iStatus );
-    SetActive();
-    }
-
-
-// ---------------------------------------------------------------------------
-// Two-Phased Constructor
-// ---------------------------------------------------------------------------
-//
-CVRMediaRemovalMonitor* CVRMediaRemovalMonitor::NewL
-                ( TInt aDrive, RFs& aFs, MVRMediaRemovalObserver* aObserver )
-    {
-    CVRMediaRemovalMonitor* self
-                               = CVRMediaRemovalMonitor::NewLC( aDrive,
-                                                                 aFs,
-                                                                 aObserver );
-    CleanupStack::Pop( self );
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// Two-Phased Constructor
-// ---------------------------------------------------------------------------
-//
-CVRMediaRemovalMonitor* CVRMediaRemovalMonitor::NewLC
-               ( TInt aDrive, RFs& aFs, MVRMediaRemovalObserver* aObserver )
-    {
-    CVRMediaRemovalMonitor* self = 
-                          new( ELeave ) CVRMediaRemovalMonitor( aDrive,
-                                                                 aFs,
-                                                                 aObserver );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CVRMediaRemovalMonitor::~CVRMediaRemovalMonitor()
-    {
-    Cancel();
-    }
-
-    
-// ---------------------------------------------------------------------------
-// Service the request
-// ---------------------------------------------------------------------------
-//
-void CVRMediaRemovalMonitor::RunL()
-    {
-    // Re-subscribe to event.
-    TNotifyType notType(ENotifyDisk);
-    iFs.NotifyChange( notType, iStatus );
-    SetActive();
-    
-    // Check state
-    TDriveInfo drive;
-	User::LeaveIfError(iFs.Drive(drive, TInt(iDrive)));
-	
-	  // Notify Observer
-    switch(drive.iType)
-        {
-        case EMediaNotPresent:
-            {
-            if (!iDiskRemoved)
-                {
-                iObserver->HandleMMCEjectEventL( );
-                }
-                iDiskRemoved = ETrue;
-            break;
-            }
-        default:
-            {
-            if ( iDiskRemoved &&
-        		 ( drive.iMediaAtt & ( KMediaAttLockable|KMediaAttLocked|KMediaAttHasPassword ) ) != 
- 				 ( KMediaAttLockable|KMediaAttLocked|KMediaAttHasPassword ) ) 
-                {
-                //do nothing
-                iDiskRemoved = EFalse;
-                }
-            break;
-            }
-        }
-    
-    }
-    
-// ---------------------------------------------------------------------------
-// Cancel NotifyChange request from file system
-// ---------------------------------------------------------------------------
-//
-void CVRMediaRemovalMonitor::DoCancel()
-    {
-    iFs.NotifyChangeCancel();
-    }
-    
-// ----------------------------------------------------------------------------
-// Handles a leave occurring in the request completion event handler RunL()
-// Don't care if client has a User::Leave() in RunL(), keep monitoring for events
-// ----------------------------------------------------------------------------
-//
-TInt CVRMediaRemovalMonitor::RunError(TInt aError)
-    {
-    return KErrNone;
-    }           
--- a/voicerecorder/RecViewSrc/CVRMediaRemovalMonitor.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,102 +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:  Monitors for media removal events
-*
-*/
-
-
-#ifndef CVRMEDIAREMOVALMONITER_H
-#define CVRMEDIAREMOVALMONITER_H
-
-#include <e32base.h>
-#include "MVRMediaRemovalObserver.h"
-
-/**
- *  Class to monitors for File System dismount events
- *  @lib Harvester
- *  @since S60 3.0
- */
-NONSHARABLE_CLASS( CVRMediaRemovalMonitor ) : public CActive
-    {
-
-public:
-
-    /**
-    * Two-phase constructor
-    * @param aDrive drive to monitor
-    * @param aFs file server session
-    * @param aObserver observer to the event
-    */
-    static CVRMediaRemovalMonitor* NewL(  TInt aDrive, 
-                                          RFs& aFs,
-                                          MVRMediaRemovalObserver* aObserver );
-    /**
-    * Two-phase constructor
-    * @param aDrive drive to monitor
-    * @param aFs file server session
-    * @param aObserver observer to the event
-    */
-    static CVRMediaRemovalMonitor* NewLC(  TInt aDrive, 
-                                           RFs& aFs,
-                                           MVRMediaRemovalObserver* aObserver );
-
-    /**
-    * Virtual destructor
-    */
-    virtual ~CVRMediaRemovalMonitor();
-
-protected: // From base class 
-    
-    /*
-    * From CActive
-    */
-    void RunL();
-    
-    /*
-    * From CActive
-    */
-    void DoCancel();
-
-    /**
-    *  From CActive
-    */
-    TInt RunError(TInt aError);    
-        
-private:
-
-    /**
-    *  C++ constructor
-    * @param aDrive drive to monitor
-    * @param aFs file server session
-    * @param aObserver observer to the event
-    */
-    CVRMediaRemovalMonitor(  TInt aDrive,
-                             RFs& aFs,  
-                             MVRMediaRemovalObserver* aObserver );
-
-    void ConstructL();
-
-private: // data
-    
-    TInt iDrive;        // Drive that is being monitored
-    RFs& iFs;           // File Session, not owned
-    TBool iDiskRemoved; // Is the disk inserted
-    
-    /*
-    * Observer interface to callback to an observer
-    */
-    MVRMediaRemovalObserver* iObserver;
-    };
-
-#endif // CVRMEDIAREMOVALMONITER_H
--- a/voicerecorder/RecViewSrc/CVRMemo.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,690 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class represents a voice memo. It is able to create new files,
-*     rename and delete existing files, and to save them to permanent storage.
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <eikapp.h>
-#include <eikappui.h>
-#include <eikenv.h>
-#include <AknWaitDialog.h>
-#include <AknQueryDialog.h>
-#include <StringLoader.h>
-#include <bautils.h>
-#include <AknGlobalNote.h>
-#include <sysutil.h>
-#include <pathinfo.h>
-#include <systemwarninglevels.hrh>
-#include <AknNotifyStd.h>
-#include <coeutils.h>
-
-#include <voicerecorder.rsg>
-#include <VoiceRecorderUID.h>
-#include "CVRMemo.h"
-#include "VRConsts.h"
-#include "TVRRename.h"
-#include "VRUtils.h"
-
-// CONSTANTS
-// Max length is 300 millisecs over one minute so possible cropping
-// of the file after stop doesn't drop the length under one minute
-const TInt KVRMMSMemoMaxRecordLength( 60300000 );
-const TInt KVREstimateDelayDuration( 10000000 );
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// CVRMemo::CVRMemo
-// 
-// ---------------------------------------------------------------------------
-//
-CVRMemo::CVRMemo()
-	: iDuration( 0 ), iPosition( 0 ), iMaxDuration( KVRDefaultMaxLength ),
-	iQuality( EQualityMMSOptimized ),iIsRecorded( EFalse )
-	{
-#ifndef RD_MULTIPLE_DRIVE	
-     iStoragePlace = EMemoStorePhoneMemory;
-#else
-     TRAP_IGNORE(iStorageDrive = VRUtils::DefaultMemoDriveL());
-#endif
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::~CVRMemo
-// 
-// ---------------------------------------------------------------------------
-//
-CVRMemo::~CVRMemo()
-	{
-	DeleteEmptyFile();
-	
-	// Close the file handle and file server session
-	iFile.Close();
-	iFs.Close();
-
-	delete iFileMan;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMemo::ConstructL(TInt aDefaultAudioFormat)
-	{
-	User::LeaveIfError( iFs.Connect() );
-	iFs.ShareProtected();
-	
-	iFileMan = CFileMan::NewL( iFs );
-
-	iVRAudioFormat = aDefaultAudioFormat;
-
-	iQuality = VRUtils::QualityL();
-	if ( !VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting )
-	     || iEmbedded )
-		{
-		iMaxDuration = KVRMMSMemoMaxRecordLength;
-		iQuality = EQualityMMSOptimized;
-		}
-	else 
-		{
-		TInt64 max( VRUtils::MaxLengthL() );
-		max = max * KVRMinuteAsMicroSeconds;
-		iMaxDuration = max;
-		}
-	
-	// Current storage place
-#ifndef RD_MULTIPLE_DRIVE	
-	iStoragePlace = VRUtils::MemoStoreL();	
-#else
-    iStorageDrive = VRUtils::MemoDriveL();
-#endif	
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::SetName
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMemo::SetName( const TDesC& aFilename )
-	{
-	iFilename.Copy( aFilename );
-	TParsePtrC parse( iFilename );
-	iNamePtr.Set( parse.Name().Left( VRMEMONAMEMAXLENGTH ) );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::SetTemporaryNameL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMemo::SetTemporaryNameL( TBool aEmbedded )
-	{
-	iEmbedded = aEmbedded;
-
-	// We can use the same handle, no need to create new name	
-	// Empty the file so it can be overwritten with new memo
-	if ( iEmbedded && !iExternalFileHandle )
-		{
-		if ( iFile.SubSessionHandle() )
-			{
-			iFile.SetSize( 0 );
-			return;
-			}
-		}		
-	
-	// Checks if the file handle can be found i.e if file is created 	
-	if ( iFile.SubSessionHandle() )
-		{	
-		// Retrieving new settings
-		TVRQuality newQuality( VRUtils::QualityL() );
-
-#ifndef RD_MULTIPLE_DRIVE
-		TVRMemoStore newStoragePlace ( VRUtils::MemoStoreL() );			
-
-		// If the current file is empty, we can reuse it if quality or 
-		// the storage place hasn't changed
-		if ( iQuality == newQuality && iStoragePlace == newStoragePlace )	
-		    {
-    	    TInt size( 0 );		
-    		iFile.Size( size );
-			
-			// If current file has already been recorded to, a new file has 
-			// to be generated 
-    		if ( !IsRecorded() )    		
-    			{
-    			iFile.SetSize( 0 );
-    			return;
-    			}
-    		}
-    	// The file has been created but the settings have been changed 
-    	// before using the file -> delete file and create a new one
-	    else
-	    	{
-	    	DeleteEmptyFile();
-	    	}
-
-#else
-        // for Multiple drives
-		TInt newStorageDrive ( VRUtils::MemoDriveL() );			
-
-		// If the current file is empty, we can reuse it if quality or 
-		// the storage place hasn't changed
-		if ( iQuality == newQuality && iStorageDrive == newStorageDrive )	
-		    {
-    	    TInt size( 0 );		
-    		iFile.Size( size );
-			
-			// If current file has already been recorded to, a new file has 
-			// to be generated 
-    		if ( !IsRecorded() )    		
-    			{
-    			iFile.SetSize( 0 );
-    			return;
-    			}
-    		}
-    	// The file has been created but the settings have been changed 
-    	// before using the file -> delete file and create a new one
-	    else
-	    	{
-	    	DeleteEmptyFile();
-	    	}
-
-
-#endif
-	    }
-
-	TFileName memoName;	
-    // Retrieve storage path
-	if ( iSavingLocation.Length() > 0 )
-		{
-		memoName = iSavingLocation;
-		}
-	else
-		{
-		VRUtils::MemoStoreDirectoryL( memoName );
-		}
-
-	// Recheck the quality before naming memo
-	if ( !VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting )
-	     || iEmbedded )
-		{
-		iQuality = EQualityMMSOptimized;
-		}
-    else
-        {
-	    iQuality = VRUtils::QualityL();
-        }
-	
-	// Current storage place
-#ifndef RD_MULTIPLE_DRIVE		
-	iStoragePlace = VRUtils::MemoStoreL();
-#else
-    iStorageDrive = VRUtils::MemoDriveL();
-#endif
-
-    // Choose the file type
-	// Use amr if quality is MMS Optimized or we are recording
-	// in embedded mode, wav otherwise    
-	TVRFiletype type( EVRFileAmr );
-    if( iEmbedded || iQuality == EQualityMMSOptimized )
-		{
-		type = EVRFileAmr;
-		}
-		
-// **** updated for new CR, if it QualitySetting is Normal, save as WAV
-
-#ifdef  __AAC_ENCODER_PLUGIN
-    else if (iQuality == EQualityNormal)
-		{
-		type = EVRFileWav;
-		}
-		
-// ****  the following are updated for new CR, if it QualitySetting is High, save as mp4
-    else if (iQuality == EQualityHigh)
-		{
-		type = EVRFileAAC_LC;
-		}
-#else
-
-	else
-		{
-		type = EVRFileWav;
-		}
-
-#endif
-	
-    TFileName memoNameTemp;  
-    memoNameTemp = memoName;
-    memoNameTemp.Delete(memoName.Length()-1, 1);
-
-    TBool boolTemp = EFalse;
-
-    TInt intTemp = BaflUtils::IsFolder( iFs, memoNameTemp, boolTemp );
-    
-    if( ! boolTemp )
-        {
-        if( BaflUtils::FileExists( iFs, memoNameTemp ) )
-            {
-            if( intTemp != KErrNone )
-            	{
-            	User::LeaveIfError(intTemp);
-            	}
-            else
-            	{
-            	User::LeaveIfError(iFs.Delete( memoNameTemp ));
-            	}
-            }
-        }
-    
-	// Generate unique final file name
-    VRUtils::GenerateUniqueFilenameL( iFs, memoName, type );
-
-	// Make sure that file handles are not leaked
-	if ( iFile.SubSessionHandle() )
-		{
-		iFile.Close();
-		}
-	
-	// Ensure that path exists
-	BaflUtils::EnsurePathExistsL( iFs, memoName );
-	
-// Open the memo file
- 
-#ifdef  __AAC_ENCODER_PLUGIN 
-    if((iQuality == EQualityHigh))  //for mp4 format	, 3gplib does not support EFileShareExclusive so EFileShareAny is used here
-    	{
-        User::LeaveIfError( iFile.Create( iFs, memoName, EFileWrite|EFileShareAny) );
-    	}
-    else  // for other formats
-    	{
-        User::LeaveIfError( iFile.Create( iFs, memoName, EFileShareExclusive|EFileWrite ) );		
-
-    	}
-#else  // it is not mp4, so still use the old flag
-        User::LeaveIfError( iFile.Create( iFs, memoName, EFileShareExclusive|EFileWrite ) );		
- 
-#endif
-
-    TInt error = iFile.SetAtt(KEntryAttHidden, KEntryAttNormal );	  		
-	SetName( memoName );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::QueryAndDeleteL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRMemo::QueryAndDeleteL()
-	{
-	//Delete?\n%U" �qtn.query.common.conf.delete�
-	TParsePtrC parse( iFilename );
-	HBufC* text = StringLoader::LoadLC( R_QTN_QUERY_COMMON_CONF_DELETE,
-										parse.Name() );
-
-	// Show confirm note
-    CAknQueryDialog* dlg = CAknQueryDialog::NewL();
-    TInt result( dlg->ExecuteLD( R_VR_CONFIRMATION_QUERY, *text ) );
-    CleanupStack::PopAndDestroy( text );
-
-	if ( result )
-		{
-		DeleteL();
-		return ETrue;
-		}
-
-	return EFalse;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::DeleteL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMemo::DeleteL()
-	{
-	if ( iFile.SubSessionHandle() )
-		{
-		if ( iExternalFileHandle )
-			{
-			// We shouldn't delete the file handle, so let's
-			// just empty the file
-			iFile.SetSize( 0 );
-			}
-		else
-			{
-			TFileName fileName( KNullDesC );
-			iFile.FullName( fileName );
-			iFile.Close();
-
-			TInt err( iFileMan->Delete( fileName ) );
-			if ( err != KErrNone && err != KErrNotFound )
-				{
-				// Try to open the file again so we wont end up
-				// in goofy state without open file
-				User::LeaveIfError( iFile.Open( iFs, fileName,
-				                      EFileShareReadersOnly ) );
-				User::LeaveIfError( err );
-				}
-			}
-		}
-	SetName( KNullDesC );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::QueryAndRenameL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRMemo::QueryAndRenameL()
-	{
-	TVRRename renamer( iFs );
-	if ( renamer.RenameL( iFile, R_QTN_FLDR_ITEM_NAME_PRMPT ) )
-		{
-		TFileName name( KNullDesC );
-		iFile.FullName( name );
-		SetName( name );
-		
-		return ETrue;
-		}
-	return EFalse;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::SavePermanentlyL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMemo::SavePermanentlyL( CAknGlobalNote* /*aWaitNote*/, 
-								TInt& /*aNoteId*/,
-								const TDesC& /*aLabel*/, 
-								TBool /*aProduceCopy*/ )
-
-	{
-	// Don't do anything if recording to external file handle
-	if ( iExternalFileHandle )
-	    {
-	    return;
-	    }
-	
-	// Change file open mode to read
-	TFileName name( KNullDesC );
-	iFile.FullName( name );
-	iFile.Close();
-	User::LeaveIfError( iFile.Open( iFs, 
-									name, 
-									EFileRead|EFileShareReadersOnly) );	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::IsValid
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRMemo::IsValid() const
-	{
-	return iFile.SubSessionHandle() == 0 ? EFalse : ETrue;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::UpdateModifiedDate
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMemo::UpdateModifiedDate()
-	{
-	if ( IsValid() )
-		{
-		TLocale locale;
-		iFile.Modified( iDateCreated );		
-		iDateCreated += locale.UniversalTimeOffset();
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::SetSavingLocationL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRMemo::SetSavingLocationL( const TDesC& aPath )
-	{
-	iSavingLocation = aPath;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::DeleteEmptyFile
-// Deletes an empty file that hasn't been recorded into. After deleting 
-// also decreases central repository's memo count value
-// ---------------------------------------------------------------------------
-//	
-TBool CVRMemo::DeleteEmptyFile()
-	{
-	if ( iFile.SubSessionHandle() != 0 )
-		{
-		TInt size( 0 );
-        
-        // Error code ignored
-        iFile.Size( size );
-		
-		if ( !iIsRecorded )
-		    {
-		    TFileName name( KNullDesC );
-		    iFile.FullName( name );
-		    
-			iFile.Close();
-			iFileMan->Delete( name );			
-	
-			// Central repository value has to be decreased by one because it 
-			// was increased earlier, when current filename was generated
-			VRUtils::SetMemoCount( VRUtils::MemoCount() - 1 );
-			
-			return ETrue;
-    	    }
-		}
-		return EFalse;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::SetFileHandle
-// 
-// ---------------------------------------------------------------------------
-//	
-void CVRMemo::SetFileHandle( RFile& aFile, const TBool aEmbedded )
-	{
-	iEmbedded = aEmbedded;
-	iExternalFileHandle = ETrue;
-	
-	iFile = aFile;
-
-	// Set the correct name for UI
-	TFileName name( KNullDesC );
-	iFile.FullName( name );
-	SetName( name );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::MaxDuration
-// Returns in microseconds the maximum time that can be still recorded with 
-// current settings (codecs and mem storage place)
-// ---------------------------------------------------------------------------
-//	
-const TTimeIntervalMicroSeconds& CVRMemo::MaxDuration()
-	{
-	if ( iEmbedded || 
-		 !VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) ||
-	     iQuality == EQualityMMSOptimized )
-		{
-		//Voice Recorder change to remove 1 Min. limit for AMR for Stand alone recording
-		//if embedded allow 1 min recording for EQualityMMSOptimized(AMR)
-		//else allow 1 hour recording
-		if(iEmbedded)
-			{
-			iMaxDuration = KVRMMSMemoMaxRecordLength;
-			return iMaxDuration;
-			}		
-		}
-
-	// Make the first estimate after KVRFirstEstimateTime seconds recording
-	if ( Duration() < KVRFirstEstimateTime )
-		{
-		// Fetch the setting for high quality max length
-		TInt64 max( 0 );
-		TRAPD( err, max = VRUtils::MaxLengthL() );
-		if ( err != KErrNone )
-		    {
-		    max = KVRMMSMemoMaxRecordLength;
-		    }
-
-		max = max * KVRMinuteAsMicroSeconds;
-		iMaxDuration = max;
-
-		// Reset the time of last estimate
-		TDateTime date;
-		date.SetYear( -1 );
-		iLastEstimate = date; // invalid
-		
-		return iMaxDuration;
-		}
-
-	// Make new estimate if there's no last estimate or if 10 secs have passed
-	// from the previous estimate
-	TTime currentTime;
-	currentTime.HomeTime();
-	if ( iLastEstimate.DateTime().Year() == -1 ||
-		currentTime.MicroSecondsFrom( iLastEstimate ) >=
-		        TTimeIntervalMicroSeconds( KVREstimateDelayDuration ) )
-		{
-		iLastEstimate = currentTime;
-		
-		TEntry fileEntry;
-		TFileName name( KNullDesC );
-		iFile.FullName( name );		
-
-		TInt err = iFs.Entry( name, fileEntry );
-		if( err != KErrNone )
-			{
-			return iMaxDuration;
-			}
-
-		// Retrieve free space
-		TVolumeInfo volInfo;
-
-// old storage
-#ifndef RD_MULTIPLE_DRIVE   
-		TVRMemoStore memoStore( EMemoStorePhoneMemory );
-		TRAP( err, memoStore = VRUtils::MemoStoreL() );
-        if ( err != KErrNone )
-            {
-            memoStore = EMemoStorePhoneMemory;
-		    }
- 
-		    if ( memoStore == EMemoStorePhoneMemory )
-			{
-			err = iFs.Volume( volInfo, EDriveC );			
-			}
-		else // memostore is MMC 
-			{
-			err = iFs.Volume( volInfo, EDriveE );
-			}
-			
-// multiple drive
-#else
-
-        TInt drive = 0;
-        TRAP_IGNORE(drive = VRUtils::DefaultMemoDriveL());
-		TRAP( err, drive = VRUtils::MemoDriveL() );
-        if ( err != KErrNone )
-            {
-            TRAP_IGNORE(drive = VRUtils::DefaultMemoDriveL());
-		    }       
-		err = iFs.Volume( volInfo, drive );			
-
-#endif
-
-		if( err != KErrNone )
-			{
-
-			return iMaxDuration;
-			}
-			
-		// Calculate the current disk consumption "speed" of the memo
-		TReal speed( fileEntry.iSize / ( Duration().Int64() / 
-			KVRSecondAsMicroSeconds ) );
-		
-		// The total free memory
-		TInt64 freeSpace(volInfo.iFree);
-		// Free memory if Critical Memory isn't taken into account
-		TInt64 freeSpaceMinusCrlevel( freeSpace -  KDRIVECCRITICALTHRESHOLD);
-		
-		// Estimate the time left
-		TInt64 value( freeSpaceMinusCrlevel / speed );
-		TTimeIntervalMicroSeconds estimate( value * KVRSecondAsMicroSeconds );
-
-		// Estimate should include also the length of clip
-		estimate = TTimeIntervalMicroSeconds( estimate.Int64()
-										 + Duration().Int64() );
-		if ( estimate < iMaxDuration)
-			{
-			iMaxDuration = estimate;
-			}
-		}
-
-	return iMaxDuration;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRMemo::IsRecorded
-// Returns the attribute iIsRecorded value that indicates if the recording of
-// the clip currently open is started or not
-// ---------------------------------------------------------------------------
-//	
-TBool CVRMemo::IsRecorded() const
-	{
-	return iIsRecorded;
-	}	 
-		
-
-// ---------------------------------------------------------------------------
-// CVRMemo::SetRecorded
-// Sets the value of iIsRecorded attribute
-// ---------------------------------------------------------------------------
-//		
-void CVRMemo::SetRecorded( TBool aRecorded )
-	{
-	iIsRecorded = aRecorded;
-	}
-	
-// End of file
--- a/voicerecorder/RecViewSrc/CVRMemo.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,344 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class represents a voice memo. It is able to create new files,
-*     rename and delete existing files, and to save them to permanent storage.
-*
-*/
-
-
-#ifndef __CVRMEMO_H__
-#define __CVRMEMO_H__
-
-// INCLUDES
-#include <f32file.h>
-#include "voicerecorder.hrh"
-#include "VRConsts.h"
-
-// FORWARD DECLARATIONS
-class CAknWaitDialog;
-class CAknGlobalNote;
-
-// CLASS DEFINITION
-/**
-* This class represents a voice memo. It is able to create new files,
-* rename and delete existing files, and to save them to permanent storage.
-*/
-NONSHARABLE_CLASS( CVRMemo )
-	: public CBase
-	{
-
-    public: // enumerations
-
-        /*
-        * File format of voice recorder
-        * Possible values = 0 (AMR).
-        */
-        enum TVRFileFormat
-	        {
-	        EVRFormatAMR = 0	        
-	        };
-
-	public: // constructors and destructor
-
-		/**
-		* Default constructor.
-		*/
-		CVRMemo();
-
-		/**
-		* Destructor.
-		*/
-		~CVRMemo();
-
-		/**
-		* 2nd phase constructor.
-        * @param aDefaultAudioFormat Default audio file format of VR
-        *        Is really defined as TVRFileFormat, but for legacy reasons
-        *        not used that way yet.
-		*/
-		void ConstructL(TInt aDefaultAudioFormat);
-	
-	public: // new methods
-
-		/**
-		* Changes the file name of this memo object.
-		* @param aFilename New file name.
-		*/
-		void SetName( const TDesC& aFilename );
-
-		/**
-		* Sets the file name to a non-existent, new, name.
-		* @param aEmbedded is true if creating temporary name for embedded
-		* 				recording (different path)
-		*/
-		void SetTemporaryNameL( TBool aEmbedded = EFalse );
-
-		/**
-		* Shows a confirmation query and deletes the memo file
-		* if user accepts.
-		* @return ETrue if deletion was confirmed.
-		*/
-		TBool QueryAndDeleteL();
-
-		/**
-		* Deletes the current memo file.
-		* The memo file name is set to KNullDesC
-		*/
-		void DeleteL();
-
-		/**
-		* Queries the user for a new name for the current memo file.
-		* @return ETrue if rename was confirmed.
-		*/
-		TBool QueryAndRenameL();
-
-		/**
-		* Saves this memo to permanent storage. Removes the original
-		* copy from RAM unless otherwise requested.
-		* @param aProduceCopy Specify ETrue if you want to leave the
-		*                     original memo file intact.
-		*/
-		void SavePermanentlyL( CAknGlobalNote* aWaitNote, TInt& aNoteId,
-							   const TDesC& aLabel, TBool aProduceCopy = EFalse );
-
-		/**
-		* Checks wether the memo file represented by this object exists or not
-		* @return ETrue if the file exists
-		*/ 
-		TBool IsValid() const;
-
-		/**
-		* Re-reads the file modification timestamp.
-		*/
-		void UpdateModifiedDate();
-
-		/**
-		* Returns the duration of the memo in microseconds.
-		* @return Duration
-		*/
-		inline const TTimeIntervalMicroSeconds& Duration() const;
-
-		/**
-		* Sets the duration of the memo in microseconds.
-		* This is for data storage only (does not affect playback).
-		* @param aDuration The new duration.
-		*/
-		inline void SetDuration( const TTimeIntervalMicroSeconds& aDuration );
-
-		/**
-		* Returns the current playing position of the memo in microseconds.
-		* @return Playing position
-		*/
-		inline const TTimeIntervalMicroSeconds& Position() const;
-
-		/**
-		* Sets the current playing position of the memo in microseconds.
-		* This is for data storage only (does not affect playback).
-		* @param aPosition The new position
-		*/
-		inline void SetPosition( const TTimeIntervalMicroSeconds& aPosition );
-
-		/**
-		* Returns the maximum duration of the memo in microseconds.
-		* @return Maximum duration (for recording)
-		*/
-		const TTimeIntervalMicroSeconds& MaxDuration();
-
-		/**
-		* Returns the complete file name (path and everything).
-		* @return Reference to the memo name.
-		*/
-		inline const TDesC& Filename() const;
-
-		/**
-		* Returns the name portion of the complete file name.
-		* @return Reference to the memo name.
-		*/
-		inline const TPtrC& Name() const;
-
-		/**
-		* Returns the creation date of this file.
-		* @return Reference to the date.
-		*/
-		inline const TTime& DateCreated() const;
-
-		void SetSavingLocationL( const TDesC& aPath );
-		
-		/**
-		* Returns the handle of the memo file.
-		* You may have to check the SubSessionHandle() to
-		* now if the file has been opened
-		* @return Reference to the file handle
-		*/
-		inline RFile& File();
-
-		/**
-		* Returns the active quality setting.
-		* @return Quality setting of the active memo
-		*/
-		inline TVRQuality Quality() const;
-
-		/**
-		* Used to set the target file handle.
-		* @param aFile File handle
-		* @param aEmbedded True if recording for external application and
-		*		 handle must be kept open all the time
-		*/
-		void SetFileHandle( RFile& aFile, const TBool aEmbedded = EFalse );
-
-		/**
-		* Check if quality setting has changed and memo needs to be renamed.
-		* Should be called at least before starting to record first memo
-		* after application launch.
-		*/
-		void CheckQualityL();
-		
-		/**
-		* Sets the attribute iIsRecorded ETrue if recording is started. EFalse
-		* if memo is attached but recording isn't started.
-		* @param aRecorded ETrue when recording is started
-		*/
-		void SetRecorded( TBool aRecorded );
-		
-		/**
-		* Returns the current memo store.
-		* .
-		*/
-		inline TVRMemoStore MemoStore() const;
-
-		/**
-		* Returns the creation date of this file.
-		* @return Reference to the date.
-		*/
-		inline TInt StorageDrive() const;
-		
-		
-		
-	private:
-		/**
-		* Checks if iFile has an empty file open
-		* and deletes it, leaving iFile closed
-		* @return returns ETrue if file was deleted
-		*/
-		TBool DeleteEmptyFile();
-		
-		/**
-		* Checks if recording to the currently open memo is started
-		* Returns ETrue if recording is started, EFalse if not
-		*/
-		TBool IsRecorded() const;
-
-	private: // data
-
-		/**
-		* Length of this memo in microseconds.
-		*/
-		TTimeIntervalMicroSeconds iDuration;
-
-		/**
-		* Length of this memo in microseconds.
-		*/
-		TTimeIntervalMicroSeconds iPosition;
-
-		/**
-		* Maximum length for all memos.
-		*/
-		TTimeIntervalMicroSeconds iMaxDuration;
-
-		/**
-		* The final path and file name of the memo.
-		* Memo is moved to this path from temp drive when 
-		* when it's saved
-		*/
-		TFileName iFilename;
-
-		/**
-		* Handle to actual file system file
-		*/
-		RFile iFile;
-
-		/**
-		* The name of this memo (the file name minus extension).
-		* This is a ptr descriptor to the iFileName;
-		*/
-		TPtrC iNamePtr;
-
-		/**
-		* The creation time of this memo.
-		*/
-		TTime iDateCreated;
-
-		/**
-		* A reference to a connected file server session.
-		* Used as a short cut. Not owned.
-		*/
-		RFs iFs;
-
-		/**
-		* Pointer to a file manager object. Owned.
-		*/
-		CFileMan* iFileMan;
-
-		/**
-		* The directory where memos will be saved.
-		*/
-		TFileName iSavingLocation;
-
-		/**
-		* Default audio format for recording audio clip
-		*/
-		TInt iVRAudioFormat;
-        
-		/**
-		* Are we in embedded mode
-		*/        
-		TBool iEmbedded;
-		
-		/**
-		* Is the RFile received from outside or should we close it
-		*/        
-		TBool iExternalFileHandle;		
-
-        /**
-        * Cached quality setting
-        */
-        TVRQuality iQuality;
-		
-		/**
-		* Cached storage place setting
-		*/
-		TVRMemoStore iStoragePlace;
-
-		/**
-		* Cached storage drive setting
-		*/
-		TInt iStorageDrive;
-		
-		/**
-		* Last time that the estimate was updated
-		*/
-		TTime iLastEstimate;
-		
-		/**
-		* Tells if recording of current open memo is started. 
-		* EFalse: not recording started
-		* ETrue: recording is started
-		*/
-		TBool iIsRecorded;
-	};
-
-#include "CVRMemo.inl"
-
-#endif	// __CVRMEMO_H__
--- a/voicerecorder/RecViewSrc/CVRMemo.inl	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2005-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:  Inline versions of some member functions
-*
-*/
-
-
-inline const TTimeIntervalMicroSeconds& CVRMemo::Duration() const
-	{
-	return iDuration;
-	}
-
-inline void CVRMemo::SetDuration( const TTimeIntervalMicroSeconds& aDuration )
-	{
-	iDuration = aDuration;
-	}
-
-inline const TTimeIntervalMicroSeconds& CVRMemo::Position() const
-	{
-	return iPosition;
-	}
-
-inline void CVRMemo::SetPosition( const TTimeIntervalMicroSeconds& aPosition )
-	{
-	iPosition = aPosition;
-	}
-
-
-inline const TDesC& CVRMemo::Filename() const
-	{
-	return iFilename;
-	}
-
-inline const TTime& CVRMemo::DateCreated() const
-	{
-	return iDateCreated;
-	}
-
-inline const TPtrC& CVRMemo::Name() const
-	{
-	return iNamePtr;
-	}
-
-inline RFile& CVRMemo::File()
-	{
-	return iFile;
-	}
-
-inline TVRQuality CVRMemo::Quality() const
-	{
-	return iQuality;
-	}
-
-	
-inline TVRMemoStore CVRMemo::MemoStore() const
-   {
-   return iStoragePlace;
-   }
-
-inline TInt CVRMemo::StorageDrive() const
-  {
-  return iStorageDrive;
-  }
-
-// End of file
--- a/voicerecorder/RecViewSrc/CVRRecView.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1136 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*      Voice Recorder Record View
-*
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <aknViewAppUi.h>
-#include <AknQueryDialog.h>
-#include <avkon.hrh>
-#include <barsread.h>
-#include <eikbtgpc.h>
-#include <eikmenub.h>
-#include <StringLoader.h>
-#include <apparc.h>
-#include <eikenv.h>
-#include <eikappui.h>
-#include <eikapp.h>
-#include <CommonContentPolicy.h>
-#include <vwsdef.h>
-#include <pathinfo.h>
-#include <sendui.h>
-#include <avkon.rsg>
-#include <featmgr.h>
-#include <VoiceRecorderUID.h>
-#include <voicerecorder.rsg>
-#include <e32property.h> 
-#include <coreapplicationuisdomainpskeys.h>
-#include <AknLaunchAppService.h>
-#include <AiwGenericParam.h>
-#include <sysutil.h>
-#include <aknnotewrappers.h>
-
-#include "voicerecorder.hrh"
-#include "CVRRecView.h"
-#include "CVRRecViewContainer.h"
-#include "CVRRecViewActivationContainer.h"
-#include "CVRRecViewModel.h"
-#include "VRUtils.h"
-#include "VRUSBStateHanlder.h"
-
-// CONSTANTS
-const TUid KUidMmsEditor =
-    {
-    0x100058DE
-    };
-const TUid KUidMailEditor =
-    {
-    0x101F4CD6
-    };
-
-inline TBool ShowDialogForWaitUSBPluggingOutL()
-    {
-    HBufC* text = StringLoader::LoadLC(R_QTN_USB_MODE_NOTE_MODE);
-    CAknQueryDialog* dlg = CAknQueryDialog::NewL();
-    TInt result(dlg->ExecuteLD(R_INSERT_F_USB_PLUG_IN_DIALOG, *text));
-    CleanupStack::PopAndDestroy(text);
-    if (result)
-        {
-        return ETrue;
-        }
-    return EFalse;
-    }
-
-inline TInt WaitDialogForUSBPluggingOut(CAknWaitDialog*& aDialog)
-    {
-    aDialog = new (ELeave) CAknWaitDialog(
-            (REINTERPRET_CAST(CEikDialog**,&aDialog)));
-    aDialog->SetTone(CAknNoteDialog::EConfirmationTone);
-    return aDialog->ExecuteLD(R_VOREC_USB_CONNECTED_DIALOG);
-    }
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewModelActivator::CVRRecViewModelActivator
-// 
-// ---------------------------------------------------------------------------
-//
-CVRRecView::CVRRecViewModelActivator::CVRRecViewModelActivator(
-        CVRRecViewModel* aModel) :
-    CAsyncOneShot(EPriorityNormal), iModel(aModel), iContext(
-            EContextEmptyNormal)
-    {
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewModelActivator::~CVRRecViewModelActivator
-// 
-// ---------------------------------------------------------------------------
-//
-CVRRecView::CVRRecViewModelActivator::~CVRRecViewModelActivator()
-	{
-	Cancel();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewModelActivator::RunL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CVRRecViewModelActivator::RunL()
-	{
-	if(iModel->GetIsDriveReady())
-	    {
-        // Activate model in correct context
-	    iModel->SetMemoNameNewL( iContext == EContextRecordNewForRemote);
-	    iModel->EnterContextL( iContext );
-	    iModel->ActivateL();
-	    } 
-	
-	// Notify recview
-	iCallback.CallBack();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewModelActivator::Activate
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CVRRecViewModelActivator::Activate( 
-		TVRRecViewContexts aContext, TCallBack aCallback )
-	{
-	iContext = aContext;
-	iCallback = aCallback;
-	Call();
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewModelActivator::DoCancel
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CVRRecViewModelActivator::DoCancel()
-    {
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewDialogActivator::CVRRecViewDialogActivator
-// 
-// ---------------------------------------------------------------------------
-//
-CVRRecView::CVRRecViewDialogActivator::CVRRecViewDialogActivator( CVRRecViewModel* aModel)
-:CAsyncOneShot(EPriorityNormal), iModel(aModel)
-    {
-    
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewDialogActivator::~CVRRecViewDialogActivator
-// 
-// ---------------------------------------------------------------------------
-//
-CVRRecView::CVRRecViewDialogActivator::~CVRRecViewDialogActivator()
-    {
-    Cancel();
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewDialogActivator::~CVRRecViewDialogActivator
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CVRRecViewDialogActivator::SetDialogType(TDialogTypeID aType)
-    {
-    iType = aType;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewDialogActivator::SetViewContexts
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CVRRecViewDialogActivator::SetViewContexts(TVRRecViewContexts aContext)
-    {
-    iContext = aContext;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewDialogActivator::DoCancel
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CVRRecViewDialogActivator::DoCancel()
-    {
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CVRRecViewNoteActivator::RunL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CVRRecViewDialogActivator::RunL()
-    {
-    if(iType == EDialogForWaitStorageCard)
-        {
-        TInt driveRemovableMassStorage = VRUtils::GetRemovableMassStorageL();
-        while ( !VRUtils::DriveValid( (TDriveNumber) driveRemovableMassStorage ) )
-            {
-            if (!ShowDialogForWaitStorageCardL())
-                {
-                iModel->SendExitEvent();
-                }
-            }
-        // Come to here when driveRemovableMassStorage is valid
-        VRUtils::SetMemoDriveL( (TDriveNumber) driveRemovableMassStorage );    
-        
-        /***** check if memory is below min value, if yes, close app*****/
-        RFs& fs(CEikonEnv::Static()->FsSession());
-        if (SysUtil::DiskSpaceBelowCriticalLevelL(&fs, 0, VRUtils::MemoDriveL()))
-           {
-           HBufC* errorText = StringLoader::LoadLC(
-                   R_VR_MEMORY_LOW_STOP_WARNING);
-           CAknErrorNote* dlg = new (ELeave) CAknErrorNote(ETrue);
-           dlg->ExecuteLD(*errorText);
-           CleanupStack::PopAndDestroy(errorText);
-           iModel->SendExitEvent();
-           }
-        // check memory size end
-        
-        // To activate view model
-        iModel->SetMemoNameNewL( iContext == EContextRecordNewForRemote);
-        iModel->SetIsDriveReady(ETrue);
-        iModel->EnterContextL( iContext );
-        iModel->ActivateL();
-        }
-    else if(iType == EDialogForWaitUSBPluggingOut)
-        {
-        ShowDialogForWaitUSBPluggingOutL();
-        iModel->SendExitEvent();
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::NewLC
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CVRRecView* CVRRecView::NewLC( TInt aViewResourceId,
-										TInt aModelResourceId )
-	{
-	CVRRecView* recview = new( ELeave ) CVRRecView;
-	CleanupStack::PushL( recview );
-	recview->ConstructL( aViewResourceId, aModelResourceId );
-
-	return recview;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::~CVRRecView
-// 
-// ---------------------------------------------------------------------------
-//
-CVRRecView::~CVRRecView()
-	{
-	if ( iContainer )
-		{
-		AppUi()->RemoveFromViewStack( *this, iContainer );
-		}
-
-	if ( iActivationContainer )
-		{
-		AppUi()->RemoveFromViewStack( *this, iActivationContainer );
-		}
-
-    delete iContainer;
-    delete iActivationContainer;
-    delete iDialogActivator;
-    delete iModel;
-    delete iSendUi;
-    delete iModelActivator;
-    delete iLaunchService;
-    delete iUSBStateHandler;
-
-    if (iUsbWaitDialog)
-        {
-        TRAP_IGNORE(iUsbWaitDialog->ProcessFinishedL());
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::ConstructL( TInt aViewResourceId, TInt aModelResourceId )
-	{
-	BaseConstructL( aViewResourceId );
-
-	iModel = new( ELeave ) CVRRecViewModel;
-	TResourceReader reader;
-	iEikonEnv->CreateResourceReaderLC( reader, aModelResourceId );
-	iModel->ConstructFromResourceL( reader );
-	CleanupStack::PopAndDestroy(); // reader;
-
-    // Create SendUi (Send as MMS, E-Mail, etc...)
-    iSendUi = CSendUi::NewL();
-
-    iModelActivator = new (ELeave) CVRRecViewModelActivator(iModel);
-
-    iUSBStateHandler = CVRUSBStateHanlder::NewL(this);
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::Id
-// 
-// ---------------------------------------------------------------------------
-//
-TUid CVRRecView::Id() const
-    {
-    const TUid KVRRecViewUID =
-        {
-        KVRRecorderViewUID
-        };
-
-	return KVRRecViewUID;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::HandleCommandL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::HandleCommandL( TInt aCommandId )
-	{
-	// This command must be acceptable all times.
-	if ( aCommandId == ECmdCancelNote )
-		{
-        iCommand = aCommandId;
-		if( iModel )
-			{
-			iModel->HandleCommandL( aCommandId );			
-			}
-		return;
-		}
-
-	if ( !iModel->CanAcceptCommands() )
-		{
-		return;
-		}
-	
-	switch ( aCommandId )
-		{
-		// Don't do anything in case of a Task Swapper command
-		case EAknCmdTaskSwapper:
-			{
-			break;	
-			}
-		// No operation	
-		case ECmdNOP: 
-			{
-			break;	
-			}	
-		// Go back to voice memo list view
-		case EAknSoftkeyBack:
-			{
-			AppUi()->HandleCommandL( EEikCmdExit );
-			break;
-			}
-		case ECmdSettings:
-			{
-			// Saving the volume control state before entering settings
-			TBool hasVolumeControl( iModel->HasVolumeControl() );
-			// Disabling volume control 
-			iModel->EnableVolumeControl( EFalse );
-			iContainer->Update();
-			
-			AppUi()->HandleCommandL( aCommandId );
-			
-			// Set volume control as it was before settings dialog
-			iModel->EnableVolumeControl( hasVolumeControl );
-			iContainer->Update();
-			break;
-			}
-	     case ECmdGoToMyClips:
-	        {
-            delete iLaunchService;
-            iLaunchService = NULL;
-
-	        TFileName path;
-	        VRUtils::MemoStoreDirectoryL( path );
-	        TInt sortMode = 0;
-
-            CAiwGenericParamList* inParams = CAiwGenericParamList::NewLC();
-            inParams->AppendL(TAiwGenericParam(EGenericParamDir, TAiwVariant(
-                    path)));
-            inParams->AppendL(TAiwGenericParam(EGenericParamDir, TAiwVariant(
-                    sortMode)));
-            iLaunchService = CAknLaunchAppService::NewL(
-                    TUid::Uid(0x101F84EB), NULL, inParams);
-            CleanupStack::PopAndDestroy(inParams);
-            break;
-            }
-        case ECmdSendVia:
-            {
-            iModel->SendViaL(iSendUi);
-            break;
-            }
-
-            // Handles Middle SoftKey presses in this view
-        case ECmdMSK:
-            {
-            // Don't forward the command if dimmed button was clicked or 
-            // if model can't handle commands
-            if (iModel->ButtonState(iContainer->FocusedButton()) == EDimmed
-                    || !iModel->CanHandleCommands())
-                {
-                break;
-                }
-
-            // Fetch the command to execute 
-            TInt commandId(iModel->CommandId(iContainer->FocusedButton()));
-
-            iModel->HandleCommandL(commandId);
-            AppUi()->HandleCommandL(commandId);
-
-            iContainer->UpdateButtonPanel(EVRUpdateStateChange);
-            break;
-            }
-        case ECmdUSBChange:
-            if (iUsbWaitDialog)
-                {
-                iUsbWaitDialog->ProcessFinishedL();
-                }
-            iContainer->UpdateButtonPanel(EVRUpdateStateChange);
-            break;
-        default:
-            {
-            iModel->HandleCommandL(aCommandId);
-            AppUi()->HandleCommandL(aCommandId);
-            break;
-            }
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::DynInitMenuPaneL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
-	{
-
-	switch ( aResourceId )
-		{
-		case R_VR_REC_MENUPANE_DEFAULT:
-			{
-            // Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-            if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-                {
-                aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-                }
-            if (CVRUSBStateHanlder::IsUsbActive())
-                {
-                aMenuPane->SetItemDimmed(ECmdRecord, ETrue);
-                aMenuPane->SetItemDimmed(ECmdDelete, ETrue);
-                aMenuPane->SetItemDimmed(ECmdRename, ETrue);
-                aMenuPane->SetItemDimmed(ECmdGoToMyClips, ETrue);
-                }
-
-			TRAP_IGNORE(AddSendToMenuL( aResourceId, aMenuPane ));
-			
-			break;
-			}
-
-		case R_VR_REC_MENUPANE_VIEWER:
-			{
-			TUid appuid( KNullUid );
-			CEikAppUi* container = iEikonEnv->EikAppUi()->ContainerAppUi();
-			if ( container )
-				{
-                // Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-                if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-                  {
-                  aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-                  }
-
-                if (CVRUSBStateHanlder::IsUsbActive())
-                    {
-                    aMenuPane->SetItemDimmed(ECmdSaveAttachment, ETrue);
-                    }
-
-                appuid = container->Application()->AppDllUid();
-                if ((appuid == KUidMmsEditor) || (appuid == KUidMailEditor))
-                    {
-                    aMenuPane->SetItemDimmed(ECmdSaveAttachment, ETrue);
-                    }
-                else
-                    {
-					TRAP_IGNORE(AddSendToMenuL(aResourceId, aMenuPane));
-                    }
-                }
-
-			break;
-			}
-		case R_VR_SETTINGS_MENUPANE:
-			{
-			// Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-			if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-				{
-				aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-				}
-            break; 
-			}
-
-		case R_VR_REC_MENUPANE_DELETED:
-			{
-			// Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-  			if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-				{
-				aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-				}
-
-            if (CVRUSBStateHanlder::IsUsbActive())
-                {
-                aMenuPane->SetItemDimmed(ECmdRecord, ETrue);
-                aMenuPane->SetItemDimmed(ECmdGoToMyClips, ETrue);
-
-                }
-
-            // if recording already started, not allow to start recording again.    
-            if (iModel->GetInRecordingFlag())
-                {
-                aMenuPane->SetItemDimmed(ECmdRecord, ETrue);
-                aMenuPane->SetItemDimmed(ECmdSettings, ETrue);
-                iModel->SetInRecordingFlag(EFalse);
-                }
-
-            if (CVRUSBStateHanlder::IsUsbActive())
-                {
-                aMenuPane->SetItemDimmed(ECmdRecord, ETrue);
-                aMenuPane->SetItemDimmed(ECmdGoToMyClips, ETrue);
-                }
-
-            break;
-            }
-
-        case R_VR_REC_MENUPANE_INCALL_RECORDING_DISABLED:
-            {
-            // Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-            if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-                {
-                aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-                }
-
-            if (CVRUSBStateHanlder::IsUsbActive())
-                {
-                aMenuPane->SetItemDimmed(ECmdGoToMyClips, ETrue);
-                }
-            break;
-            }
-
-		case R_VOREC_GS_SETTINGS_MENUPANE:
-			{
-			// Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-			if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-				{
-				aMenuPane->SetItemDimmed(EAknCmdHelp, ETrue);
-				}
-            break; 
-			}
-
-		default:
-			{
-			break;
-			}
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::GetSelectedFilesLC
-// 
-// ---------------------------------------------------------------------------
-//
-MDesCArray* CVRRecView::GetSelectedFilesLC( TVRSelectionStyle& aStyle ) const
-	{
-	aStyle = EFocusedItem;
-	return iModel->GetSelectedFilesLC();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::DoActivateL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::DoActivateL(const TVwsViewId& aPrevViewId,
-        TUid aCustomMessageId, const TDesC8& aCustomMessage)
-    {
-    TRAP_IGNORE( ReallyDoActivateL( aPrevViewId,
-                    aCustomMessageId,
-                    aCustomMessage ) );
-
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::DoDeactivate
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::DoDeactivate()
-	{
-	iModel->Deactivate();
-
-	iModel->LeaveContext();
-
-	CAknViewAppUi* appUi = AppUi();
-	if ( iContainer )
-		{
-		appUi->RemoveFromViewStack( *this, iContainer );
-		delete iContainer;
-		iContainer = NULL;
-		}
-
-	if ( iActivationContainer )
-		{
-		appUi->RemoveFromViewStack( *this, iActivationContainer );
-		delete iActivationContainer;
-		iActivationContainer = NULL;	
-		}
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::ViewDeactivated
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::ViewDeactivated()
-	{	
-#ifdef _DEBUG    
-	RDebug::Print( _L( "CVRRecView::ViewDeactivated" ));
-#endif
-
-    TInt err = 0;
-
-    if (!iModel->IncomingCall() && (iModel->VisualStateId() == EStatePlaying
-            || iModel->VisualStateId() == EStateRecording))
-        {
-
-        if (iModel->VisualStateId() == EStateRecording && iCommand
-                == ECmdCancelNote)
-            {
-            TRAP_IGNORE (iModel->HandleCommandL( ECmdSaveAttachment ));
-            }
-
-        // Is autolock activating? 
-        RProperty prop;
-        TInt val;
-        prop.Get( KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, val );
-                
-        if ( val == EAutolockOff && //Do not pause when focus is lost because of autolock
-             !iModel->GetIfStopCalled())
-    		{
-    		
-		//messy, if it is ACC format, stop it. in the future when Pause is supported, it needs change 
-#ifdef    __AAC_ENCODER_PLUGIN 
-            if ((iModel->Quality() == EQualityHigh) && (GetStateId()
-                    == EStateRecording))
-                {
-                TRAP_IGNORE (iModel->HandleCommandL( ECmdAutoStopInterrupted ));
-                }
-            else
-                {
-                TRAP( err, iModel->HandleCommandL( ECmdPause ) );
-                }
-
-#else			
-	    		TRAP( err, iModel->HandleCommandL( ECmdPause ) );	
-#endif
-
-		
-				if( err )
-					{	
-#ifdef _DEBUG
-                RDebug::Print(
-                        _L("CVRRecView::ViewDeactivated, PauseError Id: %d"),
-                        err);
-#endif      
-                }
-            }
-
-		}
-	else
-		{
-			TRAP_IGNORE( iModel->HandleCommandL( ECmdAutoStopInterrupted ) );		
-		}	
-
-	CAknView::ViewDeactivated();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::ViewActivatedL
-// The model's ActivateL() function is called to invoke any functionality 
-// required when the UI is activated (e.g., for In-call recording diabling 
-// feature)
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::ViewActivatedL(const TVwsViewId& aPrevViewId,
-        TUid aCustomMessageId, const TDesC8& aCustomMessage)
-    {
-    // dismiss sound player / file manager if it was active so that recording
-    // view becomes visible
-    delete iLaunchService;
-    iLaunchService = NULL;
-
-	iModel->ActivateL();
-
-	CAknView::ViewActivatedL(aPrevViewId, aCustomMessageId, aCustomMessage);
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::Cba
-// 
-// ---------------------------------------------------------------------------
-//
-CEikButtonGroupContainer* CVRRecView::Cba() const
-	{
-	return CAknView::Cba();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::AddSendToMenuL
-// Use CSendAppUi to display the Send cascade
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::AddSendToMenuL(TInt aResourceId, CEikMenuPane* aMenuPane)
-    {
-    // If the focused file is closed content (e.g. a DRM file or a protected
-    // MIDI file), the whole Send option mustn't be shown.
-    CCommonContentPolicy* ccp = CCommonContentPolicy::NewLC();
-    MDesCArray* filenames = iModel->GetSelectedFilesLC();
-    if (filenames->MdcaCount() > 0 && !ccp->IsClosedFileL(
-            filenames->MdcaPoint(0)))
-        {
-        // Set proper capabilities
-        TSendingCapabilities capabilities(0, KVRSendUiMsgSize,
-                TSendingCapabilities::ESupportsAttachments);
-
-        // We want the send menuitem after a specific item
-        TInt itemPosForSend(0);
-        if (aResourceId == R_VR_REC_MENUPANE_DEFAULT)
-            {
-            aMenuPane->ItemAndPos(ECmdRename, itemPosForSend);
-            }
-        else if (aResourceId == R_VR_REC_MENUPANE_VIEWER)
-            {
-            aMenuPane->ItemAndPos(ECmdSaveAttachment, itemPosForSend);
-            }
-        itemPosForSend++;
-        if (!CVRUSBStateHanlder::IsUsbActive())
-            {
-            iSendUi->AddSendMenuItemL(*aMenuPane, itemPosForSend,
-                    ECmdSendVia, capabilities);
-            }
-        }
-    CleanupStack::PopAndDestroy(2); // ccp, filenames
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::LayoutChangedL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::LayoutChangedL( TInt aType )
-	{
-	if ( iContainer )
-	    {
-    	iContainer->SetRect( ClientRect() );
-    	iContainer->HandleResourceChangeL( aType );
-	    }
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::ReallyDoActivateL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::ReallyDoActivateL(const TVwsViewId& /*aPrevViewId*/,
-        TUid aCustomMessageId, const TDesC8& /*aCustomMessage*/)
-    {
-    // Don't do anything if activation is ongoing
-    if (iActivationContainer)
-        {
-        return;
-        }
-
-    // If container exists, we have already been activated
-    // Deactivate needed before new activation.
-    if (iContainer)
-        {
-        DoDeactivate();
-        }
-
-	// Display an empty UI container until model has been fully activated
-	iActivationContainer = new( ELeave ) CVRRecViewActivationContainer;
-	iActivationContainer->ConstructL( ClientRect() );
-	CAknViewAppUi* appUi = AppUi();
-	appUi->AddToViewStackL( *this, iActivationContainer );
-	iActivationContainer->ActivateL();
-
-	iDialogActivator = new( ELeave ) CVRRecViewDialogActivator(iModel);
-	CheckDriveState();
-
-    // Activate model in correct context asynchronically.
-    // iContainer will be activated trough callback after model activation
-    TCallBack cb(ActivationCallBack, this);
-    iContext = static_cast<TVRRecViewContexts> (aCustomMessageId.iUid);
-    iDialogActivator->SetViewContexts(iContext);
-    iModelActivator->Activate(iContext , cb);
-
-    // Construct the real container
-    iContainer = new (ELeave) CVRRecViewContainer;
-    iContainer->ConstructL(ClientRect(), iModel, iModel, iModel, this);
-    iContainer->SetKeyObserver(iModel);
-    iContainer->SetVolumeChangeObserver(iModel);
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::CheckDriveState
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::CheckDriveState()
-    {
-    TInt memoDrive = VRUtils::MemoDriveL();
-    if (VRUtils::DriveValid(memoDrive))
-        {
-        VRUtils::SetMemoDriveL((TDriveNumber) memoDrive);
-        }
-    else
-        {
-        TInt defaultDrive = VRUtils::DefaultMemoDriveL(); //eMMC
-        if (defaultDrive == memoDrive)
-            {
-            SetDriveL();
-            }
-        else
-            {
-            if (VRUtils::DriveValid(defaultDrive))
-                {
-                VRUtils::SetMemoDriveL((TDriveNumber) defaultDrive);
-                }
-            else
-                {
-                SetDriveL();
-                }
-            }
-        }
-
-    
-    if (iModel->GetIsDriveReady() && CVRUSBStateHanlder::IsUsbActive())
-        {
-        iModel->SetIsDriveReady(EFalse);
-        iDialogActivator->SetDialogType(EDialogForWaitUSBPluggingOut);
-        iDialogActivator->Call();
-        }
-    
-    
-    if(iModel->GetIsDriveReady()) 
-        {
-        /***** check if memory is below min value, if yes, close app*****/
-        RFs& fs(CEikonEnv::Static()->FsSession());
-        if (SysUtil::DiskSpaceBelowCriticalLevelL(&fs, 0, VRUtils::MemoDriveL()))
-            {
-            HBufC* errorText = StringLoader::LoadLC(
-                    R_VR_MEMORY_LOW_STOP_WARNING);
-            CAknErrorNote* dlg = new (ELeave) CAknErrorNote(ETrue);
-            dlg->ExecuteLD(*errorText);
-            CleanupStack::PopAndDestroy(errorText);
-            iModel->SendExitEvent();
-            }
-        // check memory size end
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// Make user insert the SD card, and choose SD card as the memo storage
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::SetDriveL()
-    {
-    TInt driveRemovableMassStorage = VRUtils::GetRemovableMassStorageL();
-    if ( VRUtils::DriveValid( (TDriveNumber) driveRemovableMassStorage ) )
-        {
-        VRUtils::SetMemoDriveL( (TDriveNumber) driveRemovableMassStorage );
-        }
-    else
-        {
-        iModel->SetIsDriveReady(EFalse);
-        if (CVRUSBStateHanlder::IsUsbActive())
-            {
-            iDialogActivator->SetDialogType(EDialogForWaitUSBPluggingOut);
-            iDialogActivator->Call();
-            }
-        else
-            {
-            iDialogActivator->SetDialogType(EDialogForWaitStorageCard);
-            iDialogActivator->Call();
-            }
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// This method show a dialog to warn user to insert the SD card.
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecView::ShowDialogForWaitStorageCardL()
-    {
-    HBufC* text = StringLoader::LoadLC( R_QTN_CCOR_INSERT_MMC );
-    CAknQueryDialog* dlg = CAknQueryDialog::NewL();
-    TInt result( dlg->ExecuteLD( R_INSERT_F_CARD_DIALOG, *text ) );
-    CleanupStack::PopAndDestroy( text );
-
-    if ( result )
-        {
-        return ETrue;
-        }
-    return EFalse;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecView::SetFileHandle
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecView::SetFileHandle( RFile& aFile )
-	{
-	iModel->SetFileHandle( aFile );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::GetFile
-// 
-// ---------------------------------------------------------------------------
-//	
-RFile& CVRRecView::GetFile()
-	{
-	return iModel->MemoFileHandle();
-	}	
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::ActivationCallBack
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecView::ActivationCallBack( TAny* aRecView )
-	{
-	CVRRecView* view = reinterpret_cast< CVRRecView* >( aRecView );
-	TRAP_IGNORE( view->ActivateContainerL() );
-	return ETrue;	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::ActivateContainerL
-// 
-// ---------------------------------------------------------------------------
-//	
-void CVRRecView::ActivateContainerL()
-	{
-	// Activate the actual container and remove
-	// the one used during model construction
-	CAknViewAppUi* appUi = AppUi();
-	appUi->AddToViewStackL( *this, iContainer );	
-	iContainer->ActivateL();	
-
-	// Delete the empty container, it's not needed anymore
-	if ( iActivationContainer )
-		{
-		appUi->RemoveFromViewStack( *this, iActivationContainer );
-		delete iActivationContainer;
-		iActivationContainer = NULL;	
-		}
-
-	}
-
-TUint CVRRecView::GetStateId() const
-	{
-//	    if (iModel)
-		return iModel->VisualStateId();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecView::IsEmbedded
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecView::IsEmbedded() const
-	{
-	
-	return iModel->IsEmbedded();
-	
-	}
-
-
-// ---------------------------------------------------------------------------
-//Returns the active quality setting.
-//return Quality setting of the active memo
-// ---------------------------------------------------------------------------
-TVRQuality CVRRecView::Quality() const
-	{
-		return iModel->Quality();
-	}
-
-TInt CVRRecView::HandleUsbPlugInL()
-    {
-	if(MenuBar()->IsDisplayed())
-		{
-		MenuBar()->StopDisplayingMenuBar();
-		MenuBar()->TryDisplayMenuBarL();
-		}
-	
-    if (EStateRecording == iModel->VisualStateId() || EStateRecordingPaused
-            == iModel->VisualStateId() || EStatePlaying
-            == iModel->VisualStateId() || EStatePlayingPaused
-            == iModel->VisualStateId())
-        {
-        HandleCommandL(ECmdStop);
-        }
-
-    if (EStateIdleEmbedded == iModel->VisualStateId() || EStateRecordEmbedded
-            == iModel->VisualStateId() || EStateIdleRecordEmbedded
-            == iModel->VisualStateId())
-        {
-        ShowDialogForWaitUSBPluggingOutL();
-        AppUi()->Exit();
-        }
-
-    HandleCommandL(ECmdUSBChange);
-    if(iUsbWaitDialog == NULL)
-        WaitDialogForUSBPluggingOut(iUsbWaitDialog);
-    return KErrNone;
-    }
-
-TInt CVRRecView::HandleUsbPlugOutL()
-    {
-	if(MenuBar()->IsDisplayed())
-		{
-		MenuBar()->StopDisplayingMenuBar();
-		MenuBar()->TryDisplayMenuBarL();
-		}
-	
-
-    HandleCommandL(ECmdUSBChange);
-    
-    if(!VRUtils::DriveValid(VRUtils::MemoDriveL()))
-        {
-        iModel->SendExitEvent();
-        }
-    return KErrNone;
-    }
-
-void CVRRecView::DialogDismissedL(TInt /*aButtonId*/)
-    {
-    HandleCommandL(ECmdUSBChange);
-    }
-
-// ---------------------------------------------------------------------------
-// Called by UI Framework when view switches to and from foreground
-// ---------------------------------------------------------------------------
-/*
-void CVRRecView::HandleForegroundEventL( TBool aForeground )
-    {
-    // If the view is going to background, pause recording for stand alone
-    // application mode
-    if ( !aForeground && !iModel->IsEmbedded() && iCommand != ECmdCancelNote )
-        {
-        TInt err(0);
-	    if ( !iModel->IncomingCall() && ( iModel->VisualStateId() == EStatePlaying ||iModel->VisualStateId() == EStateRecording ) )
-		    {
-		//messy, if it is ACC format, stop it. in the future when Pause is supported, it needs change 
-#ifdef    __AAC_ENCODER_PLUGIN 
-                if  ((iModel->Quality() == EQualityHigh) && (GetStateId() == EStateRecording))
-		        {
-		        TRAP_IGNORE (iModel->HandleCommandL( ECmdAutoStopInterrupted ));
-		        }
-                else
-    	        {
-		        TRAP( err, iModel->HandleCommandL( ECmdPause ) );	    		
-    	        }
-
-#else			
-	            TRAP( err, iModel->HandleCommandL( ECmdPause ) );	
-#endif
-
-	 	        if( err )
-			    {	
-#ifdef _DEBUG
-		        RDebug::Print( _L("CVRRecView::ViewDeactivated, PauseError Id: %d"), err );
-#endif		
-			     }
-		     }
-	    else
-		     {
-		    TRAP_IGNORE( iModel->HandleCommandL( ECmdAutoStopInterrupted ) );		
-		     }	
-                }
-
-  //   iCommand = 0;
-
-    // Forward to handle default event handling.
-    CAknView::HandleForegroundEventL(aForeground);
-    }
-*/
--- a/voicerecorder/RecViewSrc/CVRRecViewActivationContainer.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,168 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     An empty control that is displayed until application is fully
-*	  constructed
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <AknDef.h> // For layout change event definitions
-#include <AknsUtils.h>
-#include <AknsDrawUtils.h>
-#include <AknsBasicBackgroundControlContext.h>
-
-#include "CVRRecViewActivationContainer.h"
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::CVRRecViewActivationContainer
-//
-// ---------------------------------------------------------------------------
-//
-CVRRecViewActivationContainer::CVRRecViewActivationContainer()
-	{
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::~CVRRecViewActivationContainer
-//
-// ---------------------------------------------------------------------------
-//
-CVRRecViewActivationContainer::~CVRRecViewActivationContainer()
-	{
-	delete iBackgroundSkinContext;	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::ConstructL
-//
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewActivationContainer::ConstructL( const TRect& aRect )
-	{
-	CreateWindowL();
-
-	// Get the skin instance
-	iSkinInstance = AknsUtils::SkinInstance();
-
-	// Create background control context for skinning the background
-	iBackgroundSkinContext = CAknsBasicBackgroundControlContext::NewL( 
-			KAknsIIDQsnBgAreaMain, aRect, ETrue );
-
-    SetRect( aRect );
-	} 
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::HandleResourceChange
-//
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewActivationContainer::HandleResourceChange(TInt /*aType*/)
-	{
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::CountComponentControls
-//
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecViewActivationContainer::CountComponentControls() const
-	{
-	return 0;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::ComponentControl
-//
-// ---------------------------------------------------------------------------
-//
-CCoeControl* CVRRecViewActivationContainer::ComponentControl( 
-													TInt /*aIndex*/ ) const
-	{
-	return NULL;
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::OfferKeyEventL
-//
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CVRRecViewActivationContainer::OfferKeyEventL( 
-		const TKeyEvent& /*aKeyEvent*/, TEventCode /*aType*/ )
-	{
-	return EKeyWasNotConsumed;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::SizeChanged
-//
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewActivationContainer::SizeChanged()
-	{
-	TRect bgRect;
-	AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, bgRect);
-	iBackgroundSkinContext->SetRect( bgRect );		
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::Draw
-//
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewActivationContainer::Draw( const TRect& /*aRect*/ ) const
-	{
-	CWindowGc& gc = SystemGc();
-
-	// Fill the background with the background bitmap from the skin
-	// Note: if the skin doesn't define a background the area is simply
-	// cleared (which is OK for us).
-	AknsDrawUtils::Background( iSkinInstance, iBackgroundSkinContext,
-			this, gc, Rect() );
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewActivationContainer::MopSupplyObject
-//
-// ---------------------------------------------------------------------------
-//
-TTypeUid::Ptr CVRRecViewActivationContainer::MopSupplyObject(TTypeUid aId)
-	{
-	
-	if ( aId.iUid == MAknsControlContext::ETypeId )
-		{
-		// Return the control context for the childs
-		return MAknsControlContext::SupplyMopObject( aId, 
-													 iBackgroundSkinContext );
-		
-		}
-	return CCoeControl::MopSupplyObject( aId );
-	}
-
--- a/voicerecorder/RecViewSrc/CVRRecViewActivationContainer.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,148 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     An empty control that is displayed until application is fully
-*	  constructed
-*
-*/
-
-
-#ifndef CVRRECVIEWACTIVATIONCONTAINER_H
-#define CVRRECVIEWACTIVATIONCONTAINER_H
-
-// INCLUDES
-#include <bldvariant.hrh>
-#include <coecntrl.h>
-#include "MVRObserver.h"
-#include <remconcoreapitargetobserver.h>
-#include <remconinterfaceselector.h>
-#include <remconcoreapitarget.h>
-#include <AknUtils.h>
-
-// FORWARD DECLARATIONS
-class CVRButtonPanel;
-class CVRStateInfoPanel;
-class MVRButtonPanelModel;
-class MVRDecoratorModel;
-class MVRStateInfoModel;
-class MVRKeyObserver;
-class MVRVolumeChangeObserver;
-class CVRRecView;
-class CAknNavigationDecorator;
-class CAknNavigationControlContainer;
-class MAknsSkinInstance;
-class CAknsBasicBackgroundControlContext;
-
-
-// CLASS DEFINITION
-/**
-* An empty control that is displayed until application is fully
-* constructed
-*/
-NONSHARABLE_CLASS( CVRRecViewActivationContainer )
-	: public CCoeControl
-	{
-	public:	// Constructors and destructor
-
-		/**
-		* Default constructor.
-		*/
-		CVRRecViewActivationContainer();
-
-		/**
-		* Destructor
-		*/
-		~CVRRecViewActivationContainer();
-
-		/**
-		* 2nd phase constructor
-		* @param aRect The screen rectangle for this component
-		*/
-		void ConstructL( const TRect& aRect );
-	public: // from CCoeControl
-		/*
-		*
-		*/
-		void HandleResourceChange(TInt aType); 
-
-	public:
-		// from CCoeControl
-
-		/**
-		* Called by the framework to get the number of sub-components
-		* contained in this component.
-		* @return The number of component controls contained by this control
-		*/
-		TInt CountComponentControls() const;
-
-		/**
-		* Called by the framework to get a specified sub-component
-		* of this component.
-		* @param aIndex The index of the component to get.
-		* @return The component control with an index of aIndex.
-		*/
-		CCoeControl* ComponentControl( TInt aIndex ) const;
-
-		/**
-		* When a key event occurs, the control framework calls this function
-		* for each control on the control stack, until one of them can process
-		* the key event (and returns EKeyWasConsumed).
-		* @param aKeyEvent The key event.
-		* @param aType The type of key event: EEventKey, EEventKeyUp
-		*              or EEventKeyDown
-		* @return Indicates whether or not the key event was used by this
-		*         control
-		*/
-		TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent,
-									 TEventCode aType );
-
-	private: // from CCoeControl
-
-		/*
-		* From CCoeControl
-		* @see CCoeControl
-		*/
-		void SizeChanged();
-
-		/**
-		* Draws this control.
-		* @param aRect The area that needs updating. Ignored.
-		*/
-		void Draw( const TRect& aRect ) const;
-
-		/*
-		* From CCoeControl
-		* @see CCoeControl
-		*/
-		TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
-
-		/**
-		* Handles a change to the application's resources
-		* @param aType The type of changed resource
-		*/
-		void HandleResourceChangeL( TInt aType );
-
-	private: // data
-	    /**
-	    * Skin instance from AknsUtils. Not owned.
-	    */
-		MAknsSkinInstance* iSkinInstance;
-
-        /**
-        * Background context for clearing screen. Owned.
-        */
-		CAknsBasicBackgroundControlContext* iBackgroundSkinContext;	
-	};
-
-#endif // CVRRECVIEWACTIVATIONCONTAINER_H
--- a/voicerecorder/RecViewSrc/CVRRecViewContainer.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,707 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     A compound control class. It is responsible for owning CVRButtonPanel
-*     and CVRStateInfoPanel. It also handles the changing of softkeys, menubar
-*     and volume control.
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <eikenv.h>
-#include <bldvariant.hrh>
-
-#include <aknnavi.h>
-#include <aknnavide.h>
-#include <eikspane.h>
-#include <avkon.rsg>
-#include <avkon.hrh>
-#include <aknappui.h>
-#include <aknsoundsystem.h>
-#include <aknview.h>
-#include <eikbtgpc.h>
-#include <eikmenub.h>
-#include <AknUtils.h>
-#include <AknsUtils.h>
-#include <AknsDrawUtils.h>
-#include <AknsBasicBackgroundControlContext.h>
-#include <akncontext.h>
-#include <applayout.cdl.h>
-#include <voicerecorder.rsg>
-#include <AknDef.h>		// For layout change event definitions
-#include <AknVolumePopup.h>
-#include <featmgr.h>	// Feature manager
-
-#include "CVRRecViewContainer.h"
-#include "CVRButtonPanel.h"
-#include "CVRStateInfoPanel.h"
-#include "MVRDecoratorModel.h"
-#include "MVRVolumeChangeObserver.h"
-#include "CVRRecView.h"
-#include "MVRKeyObserver.h"
-#include "CVRRemConObserver.h"
-#include "VRConsts.h"
-
-#include <VoiceRecorderUID.h>
-
-#include "VRUtils.h"
-
-// ================= MEMBER FUNCTIONS =========================================
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::CVRRecViewContainer
-//
-// ----------------------------------------------------------------------------
-//
-CVRRecViewContainer::CVRRecViewContainer()
-	{
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::~CVRRecViewContainer
-//
-// ----------------------------------------------------------------------------
-//
-CVRRecViewContainer::~CVRRecViewContainer()
-	{
-	if ( iModel )
-		{
-		iModel->SetDecoratorObserver( NULL );
-		}
-	delete iButtonPanel;
-	delete iStateInfoPanel;
-	delete iIhfVolumeControl;
-	delete iEarPieceVolumeControl;
-
-	delete iBackgroundSkinContext;
-	
-	delete iRemConObserver;
-
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::ConstructL
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::ConstructL( const TRect& aRect,
-									  MVRButtonPanelModel* aButtonModel,
-									  MVRDecoratorModel* aDecoratorModel,
-									  MVRStateInfoModel* aStateInfoModel,
-									  CVRRecView* aOwningView )
-	{
-	CreateWindowL();
-
-	iRemConObserver = CVRRemConObserver::NewL( this );
-
-	// Get the skin instance
-	iSkinInstance = AknsUtils::SkinInstance();
-	if ( !iSkinInstance )
-	    {
-	    User::Leave( KErrNoMemory );
-	    }
-
-	// Create background control context for skinning the background
-	iBackgroundSkinContext = CAknsBasicBackgroundControlContext::NewL( 
-			KAknsIIDQsnBgAreaMain, aRect, ETrue );
-
-	// Refer to Series 60 European Application LAF for coordinate descriptions
-	iButtonPanel = new( ELeave ) CVRButtonPanel( aButtonModel, 
-												 aOwningView->Id() );
-	iButtonPanel->SetContainerWindowL( *this );
-	iButtonPanel->ConstructL();
-	iButtonPanel->SetMopParent( this );
-	TAknWindowLineLayout buttonPanelLayout = AppLayout::grid_vorec_pane();   
-    AknLayoutUtils::LayoutControl( iButtonPanel, Rect(), buttonPanelLayout );
-
-	// Refer to Series 60 European Application LAF for coordinate descriptions
-	iStateInfoPanel = new( ELeave ) CVRStateInfoPanel( aStateInfoModel, 
-													   aOwningView->Id() );
-	iStateInfoPanel->SetContainerWindowL( *this );
-	iStateInfoPanel->ConstructL();
-    iStateInfoPanel->SetRect( TRect( TPoint( 0,0 ), aRect.Size() ) );
-
-	// Set state info panel's MOP-parent so that it can get hold of the bg 
-	// control context
-	iStateInfoPanel->SetMopParent( this );
-
-	iNaviPane = static_cast< CAknNavigationControlContainer* >(
-				iEikonEnv->AppUiFactory()->StatusPane()->ControlL(
-				TUid::Uid( EEikStatusPaneUidNavi ) ) );
-
-
-	// Volume indicator with IHF icon
-	iIhfVolumeControl = iNaviPane->CreateVolumeIndicatorL(
-										 R_AVKON_NAVI_PANE_VOLUME_INDICATOR );
-    // when touch UI is enabled
-    if ( AknLayoutUtils::PenEnabled() )
-        {
-        static_cast<CAknVolumeControl*>
-                  ( iIhfVolumeControl->DecoratedControl() )->SetObserver( this );     
-        }
-										     
-    iEarPieceVolumeControl = iNaviPane->CreateVolumeIndicatorL(
-	                            R_AVKON_NAVI_PANE_EARPIECE_VOLUME_INDICATOR );
-
-    // when touch UI is enabled
-    if ( AknLayoutUtils::PenEnabled() )
-        {
-        static_cast<CAknVolumeControl*>
-                  ( iEarPieceVolumeControl->DecoratedControl() )->SetObserver( this );     
-        }
-
-    iIhfVolumeControl->MakeVisible( ETrue );
-    iEarPieceVolumeControl->MakeVisible( ETrue );
-
-	iModel = aDecoratorModel;
-	iModel->SetDecoratorObserver( this );
-
-	iOwningView = aOwningView;
-
-    SetRect( aRect );
-	// Update child control rects and other co-ordinates for current
-	// layout ( Euro/APAC/Arabic&Hebrew )
-	UpdateLayoutL();
-	} 
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::GetHelpContext
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-	{
-	aContext.iMajor = TUid::Uid( KVoiceRecorderAppUID3 );
-	if ( iModel )
-		{
-		iModel->GetHelpContext( aContext );
-		}
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::CountComponentControls
-//
-// ----------------------------------------------------------------------------
-//
-TInt CVRRecViewContainer::CountComponentControls() const
-	{
-	return 2;
-
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::ComponentControl
-//
-// ----------------------------------------------------------------------------
-//
-CCoeControl* CVRRecViewContainer::ComponentControl( TInt aIndex ) const
-	{
-	switch ( aIndex )
-		{
-		case 0:
-			{
-			return iButtonPanel;
-			}
-		case 1:
-			{
-			return iStateInfoPanel;
-			}
-
-		case 2:
-			{
-			return iIhfVolumeControl->DecoratedControl();
-			}
-		case 3:
-			{
-            return iEarPieceVolumeControl->DecoratedControl();
-			} 
-
-		default:
-			{
-			return NULL;
-			}
-		}
-	}
-
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::OfferKeyEventL
-//
-// ----------------------------------------------------------------------------
-//
-TKeyResponse CVRRecViewContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent,
-												  TEventCode aType )
-	{
-	TBool consumed( EFalse );
-
-			if ( aType == EEventKeyDown )
-				{
-				aType = aType;
-				}
-
-	if ( iKeyObserver )
-		{
-		consumed = iKeyObserver->ProcessKeyEventL( aKeyEvent, aType );
-		}
-
-	if ( !consumed )
-		{
-		if ( iActiveVolumeControl && iVolumeChangeObserver->CanSetVolume() && 
-			   !FeatureManager::FeatureSupported( KFeatureIdSideVolumeKeys ) )
-			{
-			if ( ( aKeyEvent.iCode == EKeyLeftArrow ) ||
-				 ( aKeyEvent.iCode == EKeyRightArrow ) )
-				{
-				HandleVolumeChangeL( aKeyEvent, aType );
-				}
-			}
-
-		return iButtonPanel->OfferKeyEventL( aKeyEvent, aType );
-		}
-
-	return EKeyWasNotConsumed;
-
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::SizeChanged
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::SizeChanged()
-	{
-	iStateInfoPanel->SetRect( Rect() );
-
-	TRect bgRect;
-	AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, bgRect);
-	iBackgroundSkinContext->SetRect( bgRect );	
-
-	TAknWindowLineLayout buttonPanelLayout = AppLayout::grid_vorec_pane();   
-    AknLayoutUtils::LayoutControl( iButtonPanel, Rect(), buttonPanelLayout );
-
-	TAknWindowLineLayout statusPaneLayout = 
-								AknLayout::status_pane( Rect(), 0 );
-								
-    TAknLayoutRect statusPanelRect;
-    statusPanelRect.LayoutRect( Rect(), statusPaneLayout );
-
-	TAknWindowLineLayout verticalLineLayout = 
-								AppLayout::Voice_Recorder_elements_Line_2();
-								
-	iVerticalLineRect.LayoutRect( statusPanelRect.Rect(), verticalLineLayout );
-
-	TAknWindowLineLayout horizontalLineLayout = 
-								AppLayout::Voice_Recorder_elements_Line_3();
-								
-	iHorizontalLineRect.LayoutRect( statusPanelRect.Rect(), 
-									horizontalLineLayout );
-	}
-
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::Draw
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::Draw( const TRect& /*aRect*/ ) const
-	{
-	CWindowGc& gc = SystemGc();
-
-	// Fill the background with the background bitmap from the skin
-	// Note: if the skin doesn't define a background the area is simply
-	// cleared (which is OK for us).
-	AknsDrawUtils::Background( iSkinInstance, iBackgroundSkinContext,
-			this, gc, Rect() );
-
-	iVerticalLineRect.DrawRect( gc );
-	iHorizontalLineRect.DrawRect( gc );
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::SetKeyObserver
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::SetKeyObserver( MVRKeyObserver* aObserver )
-	{
-	iKeyObserver = aObserver;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::SetVolumeChangeObserver
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::SetVolumeChangeObserver(
-										  MVRVolumeChangeObserver* aObserver )
-	{
-	iVolumeChangeObserver = aObserver;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::Update
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::Update( TVRUpdateCommand aCommand )
-	{
-	
-	if ( aCommand == EVRUpdateCBA )
-		{
-		UpdateCBA();
-		return;
-		}
-		
-	// Change menubar
-	iOwningView->MenuBar()->SetMenuTitleResourceId(
-												iModel->MenuBarResourceId() );
-	
-	// error ignored, this rarely leaves but just to make sure
-	TRAP_IGNORE( iNaviPane = static_cast< CAknNavigationControlContainer* >(iEikonEnv->AppUiFactory()->StatusPane()->ControlL( // CSI: 42 #
-				TUid::Uid( EEikStatusPaneUidNavi ) ) ) ); 
-
-	iNaviPane->DrawNow();
-	
-	UpdateCBA();
-
-	TRAP_IGNORE( UpdateVolumeControlL() );
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::UpdateCBA
-// Updates the CBA buttons (LSK, MSK & RSK) according to the current state and 
-// draws them
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::UpdateCBA()
-	{
-	// Change CBA buttons
-	// Ignore any errors. SetCommandSetL() will leave if there is
-	// not enough memory
-	CEikButtonGroupContainer* cba = iOwningView->Cba();
-	
-	// e.g. recording is about to start and options menu shouldn't be opened
-	if ( iModel->CbaResourceId() == R_VR_SOFTKEYS_OPTIONS_EXIT_SELECT &&
-			!iModel->CBAEnabled() )
-		{
-		// Same texts remain but disables LSK and RSK use
-		TRAP_IGNORE( cba->SetCommandSetL( 
-						R_VR_SOFTKEYS_OPTIONS_EXIT_SELECT_NO_COMMAND ) );
-		}
-	
-	// jeffery: added for CR to disable "Pause" key, will remove it later when plugin is updatedd
-
-#ifdef  __AAC_ENCODER_PLUGIN   
-	if (!iOwningView->IsEmbedded() && (iOwningView->Quality() == EQualityHigh) && (iOwningView->GetStateId() == EStateRecording ))
-
-    	{
-    	TRAP_IGNORE(cba->SetCommandSetL(R_VR_SOFTKEYS_STOP_SELECT));    	 
-    	} 
-#endif
-	
-	else
-		{
-		// Normal behaviour
-		TRAP_IGNORE( cba->SetCommandSetL( iModel->CbaResourceId() ) );	
-		}	
-	
-	cba->DrawNow();
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::UpdateVolumeControlL
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::UpdateVolumeControlL()
-	{
-    TVRVolumeControlState state; 	
-    TInt volume;
-
-    // Get volume control data from model
-    iModel->GetVolumeControlState( state, volume );
-
-    if ( iActiveVolumeControl )
-	    {
-	    // pop the previous volume control if there was one
-	    iNaviPane->Pop();
-	    }
-
-    switch ( state )
-	    {
-	    case EDisabled:
-		    {
-		    iActiveVolumeControl = NULL;
-		    break;
-		    }
-
-	    case EIhf:
-		    {
-
-		    iActiveVolumeControl = iIhfVolumeControl;
-
-		    break;
-		    }
-
-	    case EEarPiece:
-		    {
-
-		    iActiveVolumeControl = iEarPieceVolumeControl;
-		    break;
-		    }
-        }
-
-    if ( state != EDisabled )
-        if(iActiveVolumeControl != NULL)
-	    {
-	    iNaviPane->PushL( *iActiveVolumeControl );
-	    CAknVolumeControl* control = static_cast< CAknVolumeControl* >(
-								    iActiveVolumeControl->DecoratedControl() );
-	    
-	    
-	    control->SetValue( volume );
-	    }
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::UpdateLayoutL
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::UpdateLayoutL()
-	{
-	SizeChanged();
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::MopSupplyObject
-//
-// ----------------------------------------------------------------------------
-//
-TTypeUid::Ptr CVRRecViewContainer::MopSupplyObject(TTypeUid aId)
-	{
-	if ( aId.iUid == MAknsControlContext::ETypeId )
-		{
-		// Return the control context for the childs
-		return MAknsControlContext::SupplyMopObject( aId, iBackgroundSkinContext );
-		}
-	return CCoeControl::MopSupplyObject( aId );
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::HandleResourceChangeL
-//
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::HandleResourceChangeL( TInt aType )
-	{
-	CCoeControl::HandleResourceChange( aType );
-	
-	if ( aType == KEikDynamicLayoutVariantSwitch )
-		{
-		UpdateLayoutL();
-		}
-	else if ( aType == KAknsMessageSkinChange )
-		{
-		// New skin instance is loaded
-		iSkinInstance = AknsUtils::SkinInstance();
-		}
-	
-	// Inform other controls	
-	iButtonPanel->HandleResourceChangeL( aType );
-	iStateInfoPanel->HandleResourceChangeL( aType );	
-		
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRecViewContainer::HandleVolumeChangeL
-//
-// ----------------------------------------------------------------------------
-//
-TInt CVRRecViewContainer::HandleVolumeChangeL( const TKeyEvent& aKeyEvent,
-											   TEventCode aType )
-	{
-	
-	if( iActiveVolumeControl == NULL || iVolumeChangeObserver == NULL || !iVolumeChangeObserver->CanSetVolume() )
-		{
-		// Can't process volume change yet
-		return KErrNotReady;
-		}
-	
-	CAknAppUi* appUi = static_cast< CAknAppUi* >(
-										  iEikonEnv->EikAppUi() );
-	CAknVolumeControl* control = static_cast< CAknVolumeControl* >
-					( iActiveVolumeControl->DecoratedControl() );
-
-	TInt prevLevel( control->Value() );
-	
-	control->OfferKeyEventL( aKeyEvent, aType );
-
-	// Values range from 1 to 10 so the cast is ok
-	TUint8 newValue( ( TUint8 ) control->Value() );
-
-	if ( iVolumeChangeObserver )
-		{
-		iVolumeChangeObserver->SetVolume( newValue,
-										  KVRMaxVolumeSteps );
-		}
-
-	// determine if the volume was already at either end
-	// (of the scale)
-	// play a system sound in that case.
-	if ( prevLevel == control->Value() )
-		{
-		TInt sid( EAvkonSIDVolumeMaxTone );
-		if ( prevLevel == 1 )
-			{
-			sid = EAvkonSIDVolumeMinTone;
-			}
-		appUi->KeySounds()->PlaySound( sid );
-		return KErrTooBig;
-		}	
-		
-	return KErrNone;
-	}
-	
-
-// ---------------------------------------------------------------------------
-// CVRRecViewContainer::HandlePointerEventL
-// Handles pointer events by passing them on to controls
-// ---------------------------------------------------------------------------
-//		
-void CVRRecViewContainer::HandlePointerEventL( const TPointerEvent& aPointerEvent )
-	{
-	if( AknLayoutUtils::PenEnabled() )
-		{
-		CCoeControl::HandlePointerEventL(aPointerEvent);	
-		iButtonPanel->HandlePointerEventL(aPointerEvent);
-
-		if ( iActiveVolumeControl && iVolumeChangeObserver->CanSetVolume() )
-	    	{
-	    	if ( (iOwningView->GetStateId() == EStatePlayingPaused ) || (iOwningView->GetStateId() == EStatePlaying ) )
-	    		{
-	    		// pop the previous volume control if there was one
-	    		CAknVolumeControl* control = static_cast< CAknVolumeControl* >
-	    						( iActiveVolumeControl->DecoratedControl() );
-	    		CAknVolumePopup* popup = static_cast<CAknVolumePopup*> ( control->Parent() );
-	    		TRect volumePopupRect( popup->Rect() );
-	    		volumePopupRect.Move( popup->Position() );
-	    		if( volumePopupRect.Contains(aPointerEvent.iParentPosition) )
-	    			{
-	    			TRAP_IGNORE( popup->ShowVolumePopupL() );
-	    			}
-		    	}
-	    	}
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CVRRecViewContainer::FocusedButton
-// Returns the currently focused button in Button Panel
-// ---------------------------------------------------------------------------
-//		
-TInt CVRRecViewContainer::FocusedButton() const
-	{
-	return iButtonPanel->FocusedButton();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewContainer::UpdateButtonPanel
-// Gives the update command to Button Panel
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewContainer::UpdateButtonPanel( TVRUpdateCommand aCommand )
-	{
-	iButtonPanel->Update( aCommand );
-	}
-
-	
-// ----------------------------------------------------------------------------
-// void CVRRecViewContainer::HandleControlEventL
-// ----------------------------------------------------------------------------
-//
-void CVRRecViewContainer::HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType )
-	{
-    // Added for touch UI to adjust volume
-	if( AknLayoutUtils::PenEnabled() )
-		{			
-		switch( aEventType )
-			{
-			case EEventStateChanged:
-				{
-				if ( iActiveVolumeControl && aControl == static_cast< CAknVolumeControl*>(iActiveVolumeControl->DecoratedControl()))
- 				    {
-						if(iVolumeChangeObserver == NULL || !iVolumeChangeObserver->CanSetVolume() )
-						{
-						// Can't process volume change yet
-						User::Leave(KErrNotReady);
-						}
-	
-						CAknAppUi* appUi = static_cast< CAknAppUi* >(iEikonEnv->EikAppUi() );
-						CAknVolumeControl* control = static_cast< CAknVolumeControl* >(iActiveVolumeControl->DecoratedControl() );
-
-						TInt prevLevel( control->Value() );
-	
-						// Values range from 1 to 10 so the cast is ok
-						TUint8 newValue( ( TUint8 ) control->Value() );
-
-						if ( iVolumeChangeObserver )
-							{
-							iVolumeChangeObserver->SetVolume( newValue, KVRMaxVolumeSteps );
-							}
-
-						TInt sid( EAvkonSIDStandardKeyClick );
-
-						if ( prevLevel <= KVRVolumeControlMin )
-							{
-							sid = EAvkonSIDVolumeMinTone;
-							}
-						else if ( prevLevel >= KVRVolumeControlMax )
-							{
-							sid = EAvkonSIDVolumeMaxTone;
-							}
-						appUi->KeySounds()->PlaySound( sid );
-						User::Leave(KErrTooBig);
-						
- 				    }
-				else if(iActiveVolumeControl == NULL)
-					{
-						User::Leave(KErrNotReady);
-					}
-                }
-			default:
-				break;                
-            }
-        }
-    }
--- a/voicerecorder/RecViewSrc/CVRRecViewContainer.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,315 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     A compound control class. It is responsible for owning CVRButtonPanel
-*     and CVRStateInfoPanel. It also handles the changing of softkeys, menubar
-*     and volume control.
-*
-*/
-
-
-#ifndef __CVRRECVIEWCONTAINER_H__
-#define __CVRRECVIEWCONTAINER_H__
-
-// INCLUDES
-#include <bldvariant.hrh>
-#include <coecntrl.h>
-#include "MVRObserver.h"
-#include "MVRVolumeEventObserver.h"
-#include <AknUtils.h>
-
-// FORWARD DECLARATIONS
-class CVRButtonPanel;
-class CVRStateInfoPanel;
-class MVRButtonPanelModel;
-class MVRDecoratorModel;
-class MVRStateInfoModel;
-class MVRKeyObserver;
-class MVRVolumeChangeObserver;
-class MVRVolumeEventObserver;
-class CVRRecView;
-class CAknNavigationDecorator;
-class CAknNavigationControlContainer;
-class MAknsSkinInstance;
-class CAknsBasicBackgroundControlContext;
-class CVRRemConObserver;
-
-
-// CLASS DEFINITION
-/**
-* A compound control class. It is responsible for owning CVRButtonPanel
-* and CVRStateInfoPanel. It also handles the changing of softkeys, menubar,
-* volume control and navipane. It also observers volume changes through
-* MRemConCoreApiTargetObserver interface.
-*/
-NONSHARABLE_CLASS( CVRRecViewContainer )
-	: public CCoeControl, 
-	  public MVRObserver, 
-	  public MVRVolumeEventObserver,
-	  public MCoeControlObserver
-	{
-	public:	// Constructors and destructor
-
-		/**
-		* Default constructor.
-		*/
-		CVRRecViewContainer();
-
-		/**
-		* Destructor
-		*/
-		~CVRRecViewContainer();
-
-		/**
-		* 2nd phase constructor
-		* @param aRect The screen rectangle for this component
-		* @param aButtonModelPointer to a button panel observer (or NULL)
-		* @param aDecoratorModel Pointer to a decorator observer (or NULL)
-		* @param aStateInfoModel Pointer to a state info observer (or NULL)
-		* @param aOwningView Pointer to the view that owns us.
-		*/
-		void ConstructL( const TRect& aRect,
-						 MVRButtonPanelModel* aButtonModel,
-						 MVRDecoratorModel* aDecoratorModel,
-						 MVRStateInfoModel* aStateInfoModel,
-						 CVRRecView* aOwningView );
-
-	public: // from CCoeControl
-
-		/**
-		* Specifies the help context for this form.
-		* @param aContext the context IDs are placed here
-		*/
-		void GetHelpContext( TCoeHelpContext& aContext ) const;
-
-	public:
-		// from CCoeControl
-
-		/**
-		* Called by the framework to get the number of sub-components
-		* contained in this component.
-		* @return The number of component controls contained by this control
-		*/
-		TInt CountComponentControls() const;
-
-		/**
-		* Called by the framework to get a specified sub-component
-		* of this component.
-		* @param aIndex The index of the component to get.
-		* @return The component control with an index of aIndex.
-		*/
-		CCoeControl* ComponentControl( TInt aIndex ) const;
-
-		/**
-		* When a key event occurs, the control framework calls this function
-		* for each control on the control stack, until one of them can process
-		* the key event (and returns EKeyWasConsumed).
-		* @param aKeyEvent The key event.
-		* @param aType The type of key event: EEventKey, EEventKeyUp
-		*              or EEventKeyDown
-		* @return Indicates whether or not the key event was used by this
-		*         control
-		*/
-		TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent,
-									 TEventCode aType );
-
-	private: // from CCoeControl
-
-		/*
-		* From CCoeControl
-		* @see CCoeControl
-		*/
-		void SizeChanged();
-
-		/**
-		* Draws this control.
-		* @param aRect The area that needs updating. Ignored.
-		*/
-		void Draw( const TRect& aRect ) const;
-
-		/*
-		* From CCoeControl
-		* @see CCoeControl
-		*/
-		TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
-		
-		/*
-		* From CCoeControl
-		* @see CCoeControl
-		*/
-		void HandlePointerEventL( const TPointerEvent& aPointerEvent );
-
-	    /**
-		*From MCoeControlObserver. To handle the volume events for touch UI.
-		*/
-    	void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType );
-
-
-
-	public: // from MVRObserver
-
-		/**
-		* Called to notify a change in the observed subject's state.
-		*/
-		void Update( TVRUpdateCommand aCommand = EVRUpdate );
-
-	public: // from MVRVolumeEventObserver
-
-		/**
-		* Handles volume change event received from either side volume
-		* keys or left-right rocker presses.
-		* @param aKeyEvent The key event. Will be forwarded to CAknVolumeControl
-		* @param aType The type of key event: EEventKey, EEventKeyUp
-		*              or EEventKeyDown. Will be forwarded to CAknVolumeControl
-		*/
-
-		TInt HandleVolumeChangeL( const TKeyEvent& aKeyEvent,
-									 TEventCode aType );		
-
-
-	public: // new methods
-
-		/**
-		* Registers an observer for receiving
-		* key event notifications from this class.
-		* @param aObserver The observer object.
-		*/
-		void SetKeyObserver( MVRKeyObserver* aObserver );
-
-		/**
-		* Registers an observer for receiving
-		* audio volume change notifications from this class.
-		* @param aObserver The observer object.
-		*/
-		void SetVolumeChangeObserver( MVRVolumeChangeObserver* aObserver );
-
-		/**
-		* Updates the layout of all child controls to current active
-		* layout (Euro, Apac, Arabic/Hebrew)
-		*/
-		void UpdateLayoutL();
-
-		/**
-		* Handles a change to the application's resources
-		* @param aType The type of changed resource
-		*/
-		void HandleResourceChangeL( TInt aType );
-		
-		/**
-		* Returns the currently focused button index in Button Panel
-		* @return The focused button index
-		*/
-		TInt FocusedButton() const;
-		
-		/**
-		* Gives the update command to Button Panel
-		* @param Update command
-		*/
-		void UpdateButtonPanel( TVRUpdateCommand aCommand );
-
-
-	private:
-
-		/**
-		* Tells the volume observer to update the volume
-		*/
-		void UpdateVolumeObserver();
-
-		/**
-		* Updates the navipane according to the current IHF setting
-		*/
-		void UpdateVolumeControlL();
-		
-		/**
-		* Updates the CBA Buttons (LSK, RSK, MSK)
-		*/
-		void UpdateCBA();
-
-	private: // data
-
-		/**
-		* The ihf volume control (in navi pane),
-		*/
-		CAknNavigationDecorator* iIhfVolumeControl;
-
-		/**
-		* The ear piece volume control (in navi pane),
-		*/
-		CAknNavigationDecorator* iEarPieceVolumeControl;
-
-		/**
-		* A pointer to the active volume control (ihf or ear piece)
-		*/
-		CAknNavigationDecorator* iActiveVolumeControl;
-
-		/**
-		* Pointer to the navi pane,
-		* used as a short cut. Not owned.
-		*/
-		CAknNavigationControlContainer* iNaviPane;
-
-		/**
-		* Pointer to the button panel component. Owned.
-		*/
-		CVRButtonPanel* iButtonPanel;
-
-		/**
-		* Pointer to the state info panel component. Owned.
-		*/
-		CVRStateInfoPanel* iStateInfoPanel;
-
-		/**
-		* Pointer to the view that owns us. Not owned.
-		*/
-		CVRRecView* iOwningView;
-
-		/**
-		* Pointer to the decorator data model. Not owned.
-		*/
-		MVRDecoratorModel* iModel;
-
-		/**
-		* Pointer to the key event observer (or NULL). Not owned.
-		*/
-		MVRKeyObserver* iKeyObserver;
-
-		/**
-		* Pointer to the audio volume change observer (or NULL). Not owned.
-		*/
-		MVRVolumeChangeObserver* iVolumeChangeObserver;
-
-		TRect iHorizontalLine;
-		TRect iVerticalLine;
-
-		TAknLayoutRect	iHorizontalLineRect;
-		TAknLayoutRect	iVerticalLineRect;
-		TAknLayoutRect	iButtonPanelRect;
-
-	    /**
-	    * Skin instance from AknsUtils. Not owned.
-	    */
-		MAknsSkinInstance* iSkinInstance;
-
-        /**
-        * Background context for clearing screen. Owned.
-        */
-		CAknsBasicBackgroundControlContext* iBackgroundSkinContext;	
-		
-		/**
-		* Notifier for side volume key events. Owned.
-		*/
-		CVRRemConObserver* iRemConObserver;
-	};
-
-#endif // __CVRRECVIEWCONTAINER_H__
--- a/voicerecorder/RecViewSrc/CVRRecViewModel.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2476 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class is the data model and state machine of the Recorder View.
-*     The state machine is defined by a VR_STATEMACHINE resource structure.
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <bldvariant.hrh>
-#include <e32cmn.h>
-#include <ctsydomainpskeys.h>
-#include <UsbWatcherInternalPSKeys.h>
-#include <usbpersonalityids.h>
-#include <barsread.h>
-#include <eikenv.h>
-#include <eikappui.h>
-#include <avkon.rsg>
-#include <StringLoader.h>
-#include <bautils.h>
-#include <avkon.hrh>		// Key definitions
-#include <AknGlobalNote.h>
-#include <sendui.h>
-#include <AknLayoutDef.h>
-#include <AknUtils.h>
-#include <featmgr.h>
-#include <data_caging_path_literals.hrh>
-#include <CMessageData.h>
-
-#include <featmgr.h>	// Feature manager
-#include <SendUiConsts.h>          // Disable e-mail  
-#include "MessagingDomainCRKeys.h" // Disable e-mail variation flag
-
-#include <centralrepository.h> // link against centralrepository.lib
-#ifdef RD_MULTIPLE_DRIVE
-#include <driveinfo.h>
-#endif
-#include "VoiceRecorderInternalCRKeys.h"
-
-#include <voicerecorder.rsg>
-#include "CVRMemo.h"
-#include "TVRState.h"
-#include "CVRMdaRecorder.h"
-#include "VRConsts.h"
-#include "CVRSystemEventHandler.h"
-#include "CVRMediaRemovalMonitor.h"
-#include "VRUtils.h"
-#include "CVRRecViewModel.h"
-#include <csxhelp/vorec.hlp.hrh>
-
-#include "VRUSBStateHanlder.h"
-
-
-// CONSTANTS
-const TInt KAllowInCallRecording( 1 );
-
-// Shown if maximum recording time is not known
-_LIT( KVRBeforeFirstEstimateLabel, "--:--:--" );
-// MMS/High text is inserted here
-_LIT( placeForQuality, "%U" );
-
-
-// ================= MEMBER FUNCTIONS ========================================
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CVRRecViewModel
-// 
-// ---------------------------------------------------------------------------
-//
-CVRRecViewModel::CVRRecViewModel()
-	: iStateArray( 2 ),
-	iLabelSets( 2 ),
-	iPreviousCallState( EPSCTsyCallStateNone ),
-	iCanHandleCommands( ETrue ),
-	iCBAEnabled( ETrue ),
-	iIsDriveReady( ETrue )
-	{
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::~CVRRecViewModel
-// 
-// ---------------------------------------------------------------------------
-//
-CVRRecViewModel::~CVRRecViewModel()
-	{
-	// It might be possible to make this method leaving and put it
-	// somewhere else than destructor
-	SaveVolumeSettings();
-	iLabelSets.ResetAndDestroy();
-	iStateArray.Reset();
-
-	delete[] iLabelLayoutLinks;
-	delete iMemo;
-	delete iRecorder;
-	if ( iGlobalNote && iIsNoteLaunched )
-		{
-		// nothing much to do but ignore.
-		TRAP_IGNORE( iGlobalNote->CancelNoteL( iNoteId ) );
-		}
-
-	delete iGlobalNote;
-	
-	if (iCurrentCallHandler) 
-		{
-		delete iCurrentCallHandler;
-		}
-	delete iCurrentMMCEjectHandler;
-	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ConstructFromResourceL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::ConstructFromResourceL( TResourceReader& aReader )
-	{
-
-	TRAP_IGNORE( iCurrentCallHandler = CVRSystemEventHandler::NewL() );
-	iCurrentCallHandler->Listen( KPSUidCtsyCallInformation, KCTsyCallState, 
-								 this );
-	//listen MMC eject
-	TInt driveRemovableMassStorage = VRUtils::GetRemovableMassStorageL();
-	iCurrentMMCEjectHandler = CVRMediaRemovalMonitor::NewL(driveRemovableMassStorage, CEikonEnv::Static()->FsSession(), this);
-
-	if ( FeatureManager::FeatureSupported( KFeatureIdKeypadNoVoiceKey ) &&
-		FeatureManager::FeatureSupported( 
-						KFeatureIdApplicationControllableAudioRouting ) )
-		{
-		ReadDefaultSpeakerL();
-		}
-	else
-		{
-		iIhfState = ETrue;
-		}
-
-	LoadVolumeSettingsL();
-   // Connecting and initialization:
-    CRepository* myRepSession = CRepository::NewLC( KCRUidVoiceRecorder );
-
-    // Get the values from the repository
-    User::LeaveIfError( myRepSession->Get( KVRDefaultAudioFormat, 
-    									   iVRAudioFormat ) );
-    									   
-    User::LeaveIfError( myRepSession->Get( KVRAllowInCallRecording, 
-    									   iVRAllowInCallRecording ) );
-    CleanupStack::PopAndDestroy( myRepSession ); 
-
-	iGlobalNote = CAknGlobalNote::NewL();
-
-	iMemo = new( ELeave ) CVRMemo;
-	iMemo->ConstructL( iVRAudioFormat );
-
-	TInt numLabelSets( aReader.ReadInt16() );
-	TInt i;
-
-	for ( i = 0; i < numLabelSets; i++ )
-		{
-		CDesCArray* labelSet;
-		TInt numLabels( aReader.ReadInt16() );
-
-		if ( numLabels > 0 )
-			{
-			// TResourceReader re-reads the length, have to rewind
-			aReader.Rewind( sizeof( TInt16 ) );
-			labelSet = aReader.ReadDesCArrayL();
-			}
-		else
-			{
-			// create an empty array "by hand",
-			// TResourceReader is not able to do this
-			labelSet = new( ELeave ) CDesCArrayFlat( 1 );
-			}
-
-		CleanupStack::PushL( labelSet );
-		iLabelSets.AppendL( labelSet );
-		CleanupStack::Pop( labelSet);
-		}
-
-	TInt linkCount( aReader.ReadInt16() );
-	iLabelLayoutLinks = new( ELeave ) TVRLabelLayoutLink[ linkCount ];
-	for ( i = 0; i < linkCount; i++ )
-		{
-		iLabelLayoutLinks[ i ].ReadFromResource( aReader );
-		}
-
-	TInt numUiStates( aReader.ReadInt16() );
-
-	TVRState uistate;
-	for ( i = 0; i < numUiStates; i++ )
-		{
-		uistate.ReadFromResource( aReader );
-		uistate.iId =  i;
-		iStateArray.AppendL( uistate );
-		}
-
-	iState = &iStateArray.At( 0 );
-
-	TInt numContexts( aReader.ReadInt16() );
-	for ( i = 0; i < numContexts; i++ )
-		{
-		TInt id( aReader.ReadInt8() );
-		TVRContext* context = &iContexts[ id ];
-		context->iValid = ETrue;
-		context->iInitialTransition.iCommandId = aReader.ReadUint8();
-		context->iInitialTransition.iNewState = aReader.ReadUint8();
-		context->iInitialTransition.iFunctionId = aReader.ReadUint8();
-		context->iInitialTransition.iValid = ETrue;
-
-
-		TInt numStates( aReader.ReadInt16() );
-		for ( TInt j = 0; j < numStates; j++ )
-			{
-			TInt id( aReader.ReadInt8() );
-			TVRContext::TState* state = &context->iStates[ id ];
-			state->iValid = ETrue;
-			TInt numTransitions( aReader.ReadInt16() );
-			__ASSERT_DEBUG( numTransitions <= KVRMaxTransitions,
-						User::Panic( KVRPanic, EPanicTooManyTransitions ) );
-
-			for ( TInt k = 0; k < numTransitions; k++ )
-				{
-				TVRContext::TTransition* trans = &state->iTransitions[ k ];
-				trans->iCommandId = aReader.ReadUint8();
-				trans->iNewState = aReader.ReadUint8();
-				trans->iFunctionId = aReader.ReadUint8();
-				trans->iValid = ETrue;
-				}
-			}
-		}
-
-	StringLoader::Load( iDateUsualWithZero, R_QTN_DATE_USUAL_WITH_ZERO );
-	StringLoader::Load( iTimeUsualWithZero, R_QTN_TIME_USUAL_WITH_ZERO );
-	StringLoader::Load( iTimeDuratLong,	R_QTN_TIME_DURAT_LONG );	
-	StringLoader::Load( iTimeDuratMinSecWithZero,
-										R_QTN_TIME_DURAT_MIN_SEC_WITH_ZERO );
-										
-										
-	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ProcessKeyEventL
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::ProcessKeyEventL( const TKeyEvent& aKeyEvent,
-										 const TEventCode aType )
-	{
-	TBool retval( EFalse );
-	if ( aType != EEventKey )
-		{
-		return retval;
-		}
-
-	switch ( aKeyEvent.iCode )
-		{
-		case EKeyPhoneEnd:
-			{
-			TInt currentState( iCurrentCallHandler->StateL(KPSUidCtsyCallInformation, KCTsyCallState) );
-        										
-			if ( ( currentState != EPSCTsyCallStateNone ) )
-				{
-				HandleCommandL( ECmdDisconnectCall );
-				retval = EKeyWasNotConsumed;
-				}
-			else
-				{
-				// Voice recorder wasn't here =), retval stays EFalse
-				iIsEndKey = ETrue;	
-				
-				// Exit if app is not fully initialized
-				if ( !iContextEntered )
-					{
-					CEikonEnv::Static()->EikAppUi()->
-											HandleCommandL( EEikCmdExit );
-					}
-				}
-			break;
-			}
-		case EKeyBackspace:
-			{
-			HandleCommandL( ECmdDelete );
-			retval = ETrue;
-			break;
-			}
-		case EKeyYes:
-			{
-			if( aKeyEvent.iRepeats > 0 )
-				{
-				if( VisualStateId() == EStateRecording ||
-						VisualStateId() == EStatePlaying )
-					{
-					HandleCommandL( ECmdPause );
-					}
-				}
-			break;
-			}
-		case EKeySide:
-            {
-            retval = ETrue;
-            
-            if ( aKeyEvent.iRepeats )
-                {
-                switch ( iState->iId )
-                    {
-                    case EStateIdle:
-                        {
-                        HandleCommandL( ECmdPlay );
-                        break;
-                        }
-                    case EStateRecording:
-                    case EStateRecordEmbedded:
-                    case EStateRecordingPaused:
-                    case EStatePlaying:
-                    case EStatePlayingPaused:
-                        {
-                        HandleCommandL( ECmdStop );
-                        break;
-                        }
-                    case EStateDeleted:
-                    default:
-                        {
-                        retval = EFalse;
-                        break;
-                        }
-                    }
-                }
-            else
-                {
-                switch ( iState->iId )
-                    {
-                    case EStateIdle:
-                    case EStateDeleted:
-                    case EStateRecordingPaused:
-                        {
-                        HandleCommandL( ECmdRecord );
-                        break;
-                        }
-                    case EStateRecording:
-                    case EStateRecordEmbedded:
-                    case EStatePlaying:
-                        {
-                        HandleCommandL( ECmdPause );
-                        break;
-                        }
-                    case EStatePlayingPaused:
-                        {
-                        HandleCommandL( ECmdPlay );
-                        break;
-                        }
-                    default:
-                        {
-                        retval = EFalse;
-                        break;
-                        }
-                    }
-                }
-            break;
-            }
-		default:
-			{
-			break;
-			}
-		}
-	return retval;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::HandleCommandL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::HandleCommandL( TInt aCommandId )
-	{
-	// This command must be acceptable all times.
-	if ( aCommandId == ECmdCancelNote )
-		{
-		if ( iIsNoteLaunched )
-			{
-			// nothing much to do but ignore.
-			TRAP_IGNORE( iGlobalNote->CancelNoteL( iNoteId ) );
-			}
-		return;
-		}
-
-	if ( !CanAcceptCommands() )
-		{
-		return;
-		}
-
-	if ( !CanHandleCommands() )
-		{
-		return;
-		}
-	if ( EStateRecording == iState->iId && ECmdRecord == aCommandId ||
-			EStateRecording == iState->iId && ECmdRename == aCommandId )
-		{
-		return;
-		}
-	
-	switch ( aCommandId )
-		{
-		case ECmdHelp:
-			{
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( aCommandId );
-			break;
-			}	
-		case EEikCmdExit:
-			{
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( EAknSoftkeyExit);
-			break;
-			}
-		
-		case EAknSoftkeyExit:
-			{
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( aCommandId );
-			break;
-			}
-		case ECmdSendVia:
-			{
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( aCommandId );
-			break;
-			}
-		case ECmdSaveAttachment:
-			{
-			__ASSERT_DEBUG( iRecorder, User::Panic( KVRPanic, KErrNotFound ) );
-			iRecorder->DetachMemo();
-			// Save permanently but do not remove the original
-
-			HBufC* label = StringLoader::LoadLC( R_VR_SAVE_WAITNOTE_LABEL );
-
-			iIsNoteLaunched = ETrue;
-			iMemo->SavePermanentlyL( iGlobalNote, iNoteId, *label, ETrue );
-
-			if ( iStateInfoObserver )
-				{
-				iStateInfoObserver->Update();
-				}
-			iRecorder->AttachToMemoL( iMemo );
-
-			// Remove the waitnote
-			iGlobalNote->CancelNoteL( iNoteId );
-			iIsNoteLaunched = EFalse;
-
-			CleanupStack::PopAndDestroy( label );
-			break;
-			}
-		// FLOWTHROUGH
-		// in case of end key, different command must be given to state
-		// machine - recview gives ECmdAutoStopInterrupted
-		case ECmdAutoStopInterrupted:
-			{
-			if ( iIsEndKey )
-				{
-				aCommandId = ECmdEndKey;
-				iIsEndKey = EFalse;
-				}
-			}
-		// Other commands are given to the state machine
-		default:
-			{
-			TVRContext::TTransition transition;
-			GetTransition( transition, aCommandId );
-			TBool functionOK( ETrue );
-			TRAPD( err, functionOK = 
-								CallFunctionByIdL( transition.iFunctionId ) );
-			
-			if ( err != KErrNone )
-				{
-				// This is done to enable button events
-				iCanHandleCommands = ETrue;
-				}
-				
-			// We may have detached memo and we must reattach
-			if ( err == KErrInUse )
-				{
-				__ASSERT_DEBUG( iRecorder, 
-								User::Panic( KVRPanic, KErrNotFound ) );
-				iRecorder->AttachToMemoL( iMemo );
-				}
-
-			if ( err == KErrNotReady && iIsNoteLaunched && iGlobalNote )
-				{
-				// nothing much to do but ignore.
-				TRAP_IGNORE( iGlobalNote->CancelNoteL( iNoteId ) );
-				}
-
-			// If the disk gets full while saving, the next state is deleted
-			if ( err == KErrDiskFull || err == KErrArgument )
-				{
-				if ( iContext == EContextRecordNewNormal ||
-					 iContext == EContextNormal ||
-					 iContext == EContextEmptyNormal )
-					{
-					ChangeState( EStateDeleted, ETrue );
-					}
-				else
-					{
-					// In record new embedded context the UI is left in
-					// idle state, so the memo must be attached
-					// (EFunctionOK detaches it)
-					__ASSERT_DEBUG( iRecorder, 
-									User::Panic( KVRPanic, KErrNotFound ) );
-					if(!dynamic_cast<CVRMdaRecorder*>(iRecorder)->IsAttachedToMemo())
-						{
-					    iRecorder->AttachToMemoL( iMemo );	
-						}
-					}
-
-				if ( err == KErrDiskFull )
-					{
-					// Maybe an error note should be shown
-					return;
-					}
-
-				// Propagate to the error handler to show a note.
-				User::Leave( err );
-				}
-			else
-				{
-				// The LeaveIfError must be here because CallFunctionByIdL
-				// might have called Exit() (leaving with -1002) and the
-				// framework might be half-dead leading to access violation,
-				// if the UI state is changed
-				User::LeaveIfError( err );
-				if ( functionOK )
-					{
-					// If the in-call recording disabling feature is active,
-					// then the state of the UI will have to reflect that
-					TUint newState(transition.iNewState);
-
-					if ( iVRAllowInCallRecording != KAllowInCallRecording )
-						{
-						TInt currentState( iCurrentCallHandler->StateL(	KPSUidCtsyCallInformation, KCTsyCallState ) );
-												
-						if ( currentState != EPSCTsyCallStateNone )
-							{
-							currentState = iCurrentCallHandler->StateL(
-												KPSUidCtsyCallInformation, KCTsyCallType );
-
-							switch ( currentState )
-								{
-								case EPSCTsyCallTypeCSVoice:
-								case EPSCTsyCallTypeHSCSD:
-								case EPSCTsyCallTypeH324Multimedia:
-								case EPSCTsyCallTypeVoIP:
-									{
-									newState = EStateDisableButtons;										
-									break;
-									}
-								default:
-									{
-									break;										
-									}
-								}
-														
-							}
-						}
-
-					// Function didn't want to cancel the state change
-					ChangeState( newState );
-					}
-				}
-
-			break;
-			}
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetTransition
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::GetTransition( TVRContext::TTransition& aTransition,
-									 TUint aCommandId ) const
-	{
-	__ASSERT_DEBUG( iContexts[ iContext ].iValid, User::Panic( KVRPanic,
-					EPanicInvalidContext ) );
-	__ASSERT_DEBUG( iContexts[ iContext ].iStates[ iState->iId ].iValid,
-					User::Panic( KVRPanic, EPanicInvalidState ) );
-
-	const TVRContext::TState* state =
-							&(iContexts[ iContext ].iStates[ iState->iId ]);
-	for ( TInt i = 0; i < KVRMaxTransitions; i++ )
-		{
-		const TVRContext::TTransition* transition = &state->iTransitions[ i ];
-		if ( ( transition->iCommandId == aCommandId ) &&
-			( transition->iValid ) )
-			{
-			aTransition = *transition;
-			return;
-			}
-		}
-
-	User::Panic( KVRPanic, EPanicInvalidTransition );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetTransition
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::GetTransition(
-								TVRContext::TTransition& aTransition ) const
-	{
-	aTransition = iContexts[ iContext ].iInitialTransition;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ChangeState
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::ChangeState( TUint aNewState, TBool aForced )
-	{
-	if ( !aForced )
-		{
-		if ( ( aNewState == iState->iId ) || ( aNewState == EStateInitial ) )
-			{
-			return;
-			}
-		}
-
-	iState = &iStateArray.At( aNewState );
-
-	if ( iStateInfoObserver )
-		{
-		iStateInfoObserver->Update();
-		}
-	if ( iButtonPanelObserver )
-		{
-		iResetButtons = ETrue;
-		iButtonPanelObserver->Update( EVRUpdateStateChange );
-		}
-	if ( iDecoratorObserver )
-		{
-		iDecoratorObserver->Update();
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::EnterContextL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::EnterContextL( const TVRRecViewContexts& aContext )
-	{
-	iContextEntered = EFalse;
-	if ( iRecorder )
-		{
-		delete iRecorder;
-		iRecorder = NULL;
-		}
-
-	CVRMdaRecorder* recorder = new( ELeave ) CVRMdaRecorder();
-	CleanupStack::PushL( recorder );
-	recorder->ConstructL();
-	CleanupStack::Pop();
-	iRecorder = recorder;
-
-	iRecorder->RegisterObserver( iStateInfoObserver );
-	iRecorder->SetAutoStopObserver( this );
-
-	LeaveContext();
-	iContext = aContext;
-
-	iRecorder->AttachToMemoL(iMemo);
-
-	TVRContext::TTransition transition;
-	GetTransition( transition );
-
-	ChangeState( transition.iNewState, ETrue );
-	CallFunctionByIdL( transition.iFunctionId );
-
-	iContextEntered = ETrue;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::LeaveContext
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::LeaveContext()
-	{
-	iContextEntered = EFalse;
-	if( iRecorder )
-		{
-		iRecorder->UnregisterObserver( iStateInfoObserver );
-		iRecorder->UnregisterObserver( iButtonPanelObserver );
-
-		iRecorder->DetachMemo();
-
-		iRecorder->RegisterObserver( iStateInfoObserver );
-		iRecorder->RegisterObserver( iButtonPanelObserver );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CbaResourceId
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecViewModel::CbaResourceId() const
-	{
-	return iState->iCbaResourceId;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetHelpContext
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::GetHelpContext( TCoeHelpContext& aContext ) const
-	{
-       if (FeatureManager::FeatureSupported(KFeatureIdHelp))
-  	   {   
-		  if ( iState->iId == EStateDeleted )
-			{
-			aContext.iContext = KVOREC_HLP_EMPTY_RECORDER;
-			}
-		   else
-			{
-			aContext.iContext = KVOREC_HLP_MAIN;
-			}
-    	}
-	}
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetDecoratorObserver
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetDecoratorObserver( MVRObserver* aObserver )
-	{
-	iDecoratorObserver = aObserver;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::MenuBarResourceId
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecViewModel::MenuBarResourceId() const
-	{
-	return iState->iMenubarResourceId;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ButtonCount
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecViewModel::ButtonCount() const
-	{
-
-	return iState->iButtonCount;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CBAEnabled
-// from MVRDecoratorModel
-// ---------------------------------------------------------------------------
-//	
-TBool CVRRecViewModel::CBAEnabled() const
-	{
-	return iCBAEnabled;	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ButtonState
-// Checks and returns whether the state of the button should be in active or 
-// dimmed state. aButtonId tells the index of the button to be checked. Few 
-// special cases (end and the beginning of the clip) can be handled here.
-// ---------------------------------------------------------------------------
-//	
-TInt CVRRecViewModel::ButtonState( TInt aButtonId ) const
-	{
-    if(CVRUSBStateHanlder::IsUsbActive() || !iIsDriveReady)
-        {
-            return EDimmed;
-        }
-	// Disable rewind button if there's nothing to rewind
-	if ( aButtonId == EButtonRewind &&
-		( Position().Int64() / KVRSecondAsMicroSeconds ) < 1 )
-		{
-		return EDimmed;
-		}
-	
-	// Disable forward button if position is at the end or the length of the
-	// clip is smaller than 1	
-	if ( aButtonId == EButtonForward && ( Position() == Duration() || 
-			( Duration().Int64() / KVRSecondAsMicroSeconds ) < 1 ) )
-		{
-		return EDimmed;
-		}
-
-    // Jeffery: the following ifs are temperary.  they need to be removed after "Pause" is supported in plugin
-#ifdef    __AAC_ENCODER_PLUGIN 
-    if  ( iState->iId == EStateRecording &&  aButtonId == EButtonRecord  && iMemo->Quality() == EQualityHigh)
-		{
-		return EDimmed;
-		}
-#endif
-		
-	return iState->ButtonState( aButtonId );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CommandId
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecViewModel::CommandId( TInt aButtonId ) const
-	{
-	return iState->ButtonCommandId( aButtonId );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::InitialFocusButtonId
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecViewModel::InitialFocusButtonId() const
-	{
-	return iState->iFocusButtonId;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetButtonPanelObserver
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetButtonPanelObserver( MVRObserver* aObserver )
-	{
-	if ( iRecorder )
-		{
-		if ( iButtonPanelObserver )
-			{
-			iRecorder->RegisterObserver( aObserver );
-			}
-		else
-			{
-			iRecorder->UnregisterObserver( iButtonPanelObserver );
-			}
-		}
-		
-		iButtonPanelObserver = aObserver;	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ResetNeeded
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::ResetNeeded()
-	{
-	if ( iResetButtons )
-		{
-		iResetButtons = EFalse;
-		return ETrue;		
-		}
-
-	return iResetButtons; // EFalse always
-	}
-
-	
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::VisualStateId()
-// Returns the id of VR current (visual) state
-// ---------------------------------------------------------------------------
-//	
-TUint CVRRecViewModel::VisualStateId() const
-	{
-	return iState->iStateId;	
-	}
-
-	
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CanHandleCommands()
-// Returns ETrue if model can handle new commands, EFalse otherwise
-// ---------------------------------------------------------------------------
-//	
-TBool CVRRecViewModel::CanHandleCommands() const
-	{
-	return iCanHandleCommands;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::Duration
-// 
-// ---------------------------------------------------------------------------
-//	
-TTimeIntervalMicroSeconds CVRRecViewModel::Duration() const
-	{
-	if ( ( iState->iId == EStateRecording ) ||
-		 ( iState->iId == EStateRecordingPaused ) )
-		{
-		return iMemo->MaxDuration();
-		}
-	return iMemo->Duration();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::Position
-// 
-// ---------------------------------------------------------------------------
-//
-TTimeIntervalMicroSeconds CVRRecViewModel::Position() const
-	{
-	if ( ( iState->iId == EStateRecording ) ||
-		 ( iState->iId == EStateRecordingPaused ) )
-		{
-		return iMemo->Duration();
-		}
-	return iMemo->Position();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetLabel
-// Non-leaving version
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::GetLabel( TDes& aName, TInt aLabelIndex ) const
-	{
-	TRAP_IGNORE( GetLabelL( aName, aLabelIndex ) );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetLabelL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::GetLabelL( TDes& aName, TInt aLabelIndex ) const
-	{
-	if ( !iMemo->IsValid() )
-		{
-		aName.SetLength( 0 );
-		return;
-		}
-
-	CDesCArray* labels = iLabelSets.At( iState->iLabelSetId );
-	User::LeaveIfNull( labels );
-
-	if ( aLabelIndex < labels->Count() )
-		{
-		TInt index = aLabelIndex;
-
-		TBuf< VRLABELMAXLENGTH > formatStr(
-										labels->MdcaPoint( index ) );
-		TBuf< VRLABELMAXLENGTH > formattedTime;
-
-		switch ( aLabelIndex )
-			{
-			case ELabelMemoName:
-				{
-				//StringLoader::Format( aName, formatStr, -1, iMemo->Name() );
-                                aName.Copy(iMemo->Name());
-				break;
-				}
-			case ELabelMemoDate:
-				{
-				iMemo->DateCreated().FormatL( formattedTime,
-											  iDateUsualWithZero );
-				StringLoader::Format( aName, formatStr, 0, formattedTime );
-
-				iMemo->DateCreated().FormatL( formattedTime,
-											  iTimeUsualWithZero );
-				formatStr.Copy( aName );
-				StringLoader::Format( aName, formatStr, 1, formattedTime );
-				AknTextUtils::LanguageSpecificNumberConversion( aName );
-				break;
-				}
-			case ELabelMemoQuality:
-				{
-				// Display empty row if feature is not on
-                if ( !VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-                    {
-                    aName.Copy( KNullDesC );
-                    break;
-                    }
-				
-				aName.Copy( formatStr );
-				break;
-				}
-			case ELabelQualityText:	
-				{
-					// Display empty row if feature is not on
-                if ( !VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-                    {
-                    aName.Copy( KNullDesC );
-                    break;
-                    }
-                    
-				formatStr.Copy( placeForQuality );
-					
-					switch( iMemo->Quality() )
-				    {
-				    case EQualityMMSOptimized:
-				        {
-				        StringLoader::Load( formattedTime, R_VOREC_QUALITY_MMS_OPTIMIZED );
-				        StringLoader::Format( aName, formatStr, -1, formattedTime );
-				        break;
-				        }
-				        
-				        // EQualityNormal is used only when mp4 is supported.  In this case the file is saved as wav.
-#ifdef  __AAC_ENCODER_PLUGIN
-				    case EQualityNormal:
-				        {
-				        StringLoader::Load( formattedTime, R_VOREC_QUALITY_NORMAL );				        
-				        StringLoader::Format( aName, formatStr, -1, formattedTime );				        
-				        break;
-				        }
-#endif
-
-				    case EQualityHigh:
-				        {
-				        StringLoader::Load( formattedTime, R_VOREC_QUALITY_HIGH );				        
-				        StringLoader::Format( aName, formatStr, -1, formattedTime );				        
-				        break;
-				        }
-				    default:
-				        {
-				        aName.Copy( KNullDesC );
-				        break;
-				        }
-				    }
-				break;
-				}
-			case ELabelBarMin:
-				{
-				aName.Copy( KNullDesC );
-				break;
-				}
-			case ELabelBarMax:
-				{
-				// This label layout is nowadays taking automatically care of 
-				// string mirroring in the case of mirrored layout. So use of 
-				// AknLayoutUtils::LayoutMirrored() isn't needed anymore
-				
-				TTimeIntervalMicroSeconds max( 0 );
-				if ( ( iState->iId == EStateRecording ) ||
-				 ( iState->iId == EStateRecordingPaused ) )
-					{
-					max = iMemo->MaxDuration();
-					}
-				else
-					{
-					max = iMemo->Duration().Int64();
-
-					if ( max.Int64() < 0 )
-						{
-						max = 0;
-						}
-					}
-
-				TTime lengthAsTime( max.Int64() );
-				TTime positionAsTime( iMemo->Position().Int64() );
-				TBuf< VRLABELMAXLENGTH > formattedPosition;
-
-				// current memo quality 
-				TVRQuality quality( iMemo->Quality() );
-				
-				// Show --:--:-- if estimate for maximum recording time is not
-				// known yet. Done only when memo quality is High
-				if ( ( ( iState->iId == EStateRecording ) || 
-					   ( iState->iId == EStateRecordingPaused )) && 
-					   ( Position() < KVRFirstEstimateTime ) && 
-					   ( quality == EQualityHigh ) &&
-					   ( max.Int64() < 0) )
-					{
-					formattedTime.Append( KVRBeforeFirstEstimateLabel );
-					}
-				// Show normal maximum time	
-				else	
-					{
-					// Show longer format if time is more than 1 hour
-					FormatTimeL( lengthAsTime, formattedTime );		
-					}
-	
-				// Show longer format if time is more than 1 hour
-				FormatTimeL( positionAsTime, formattedPosition );
-						
-				StringLoader::Format( aName, formatStr, 0, formattedPosition );
-				formatStr.Copy( aName );
-				StringLoader::Format( aName, formatStr, 1, formattedTime );
-				AknTextUtils::LanguageSpecificNumberConversion( aName );
-
-				break;						
-				}
-			case ELabelStatus:
-				{
-				aName.Copy( iState->iStatus );
-				break;
-				}
-			default:
-				{
-				break;
-				}
-			}
-		}
-	else
-		{
-		aName.SetLength( 0 );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ResourceIdForLabel
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRRecViewModel::ResourceIdForLabel( TInt aLabelIndex,
-										  TAknLayoutId aLayout ) const
-	{
-	switch ( aLayout )
-		{
-		case EAknLayoutIdELAF:
-		default:
-			return iLabelLayoutLinks[ aLabelIndex ].iEuroId;
-
-		case EAknLayoutIdABRW:
-			return iLabelLayoutLinks[ aLabelIndex ].iArabicHebrewId;
-
-		case EAknLayoutIdAPAC:
-			return iLabelLayoutLinks[ aLabelIndex ].iApacId;
-
-		}
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetStateInfoObserver
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetStateInfoObserver( MVRObserver* aObserver )
-	{
-	iStateInfoObserver = aObserver;
-	if( iRecorder )
-		{
-		iRecorder->RegisterObserver( iStateInfoObserver );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetStateInfoPanelObserver
-// Observes changes in state info panel
-// ---------------------------------------------------------------------------
-//	
-void CVRRecViewModel::SetStateInfoPanelObserver( MVRStateInfoObserver* 
-																	aObserver )
-	{
-	iStateInfoPanelObserver = aObserver;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::HasProgressBar
-// 
-// ---------------------------------------------------------------------------
-//	
-TBool CVRRecViewModel::HasProgressBar() const
-	{
-	return iState->iHasProgressBar;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetSelectedFilesLC
-// 
-// ---------------------------------------------------------------------------
-//
-MDesCArray* CVRRecViewModel::GetSelectedFilesLC() const
-	{
-	CDesCArray* array = new( ELeave ) CDesCArrayFlat( 1 ); // granularity = 1
-	CleanupStack::PushL( array );
-	array->AppendL( iMemo->Filename() );
-	return array;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetVolume
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetVolume( TInt aStep, TInt aMaxSteps )
-	{
-	iIhfVolume = aStep;
-    iRecorder->SetVolume( aStep, aMaxSteps );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetMemoName
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetMemoName( const TDesC& aFilename )
-	{
-	iMemo->SetName( aFilename );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetMemoNameNewL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetMemoNameNewL( TBool aEmbedded )
-	{
-	iMemo->SetTemporaryNameL( aEmbedded );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::Filename
-// 
-// ---------------------------------------------------------------------------
-//
-const TDesC& CVRRecViewModel::Filename() const
-	{
-	return iMemo->Filename();
-	}
-
-void CVRRecViewModel::SetSavingLocationL( const TDesC& aPath )
-	{
-	iMemo->SetSavingLocationL( aPath );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::Update
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::Update( TVRUpdateCommand /*aCommand*/ )
-	{
-	// Error is propagated to error handling method
-	TRAPD( err, HandleCommandL( ECmdAutoStopAtEnd ) );
-
-	// Ignore further errors
-	TRAP_IGNORE( HandleUpdateErrorL( err ) );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::IsEmbedded
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::IsEmbedded() const
-	{
-	return ( iContext == EContextRecordNewForRemote )
-			|| ( iContext == EContextViewer );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CanAcceptCommands
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::CanAcceptCommands() const
-	{
-	return ( iContextEntered != EFalse ) && iRecorder->CanAcceptCommands();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SendViaL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SendViaL( CSendUi* aSendUi )
-	{
-	// Don't accept commands during sending operation
-	iContextEntered = EFalse;
-	
-	iRecorder->DetachMemo();
-	// Detaching resets the clip position so button panel needs to be updated
-	iButtonPanelObserver->Update( EVRUpdatePositionChange );
-	
-	TSendingCapabilities capabilities
-			(0, KVRSendUiMsgSize, TSendingCapabilities::ESupportsAttachments);
-	CMessageData* messageData = CMessageData::NewL();
-	CleanupStack::PushL( messageData );
-
-	messageData->AppendAttachmentHandleL( iMemo->File() );
-	
-	// Get an array of the services that should be dimmed
-	CArrayFixFlat< TUid >* servicesToDim = SendViaServicesToDimLC();
-
-	// For some reason this function leaves when 'NO' is selected in bluetooth 
-	// case's activation question. If this is not Trapped iContextEntered stays
-	// EFalse and no commands can be executed
-	TRAPD( err, aSendUi->ShowQueryAndSendL( messageData, 
-											capabilities, 
-											servicesToDim ) );
-	
-	CleanupStack::PopAndDestroy( servicesToDim );
-	CleanupStack::PopAndDestroy( messageData );
-
-	iRecorder->AttachToMemoL( iMemo );
-	
-	iContextEntered = ETrue;
-	
-	// This is done so we get possible "Feature not supported" 
-	// infonote from the framework
-	User::LeaveIfError( err );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SendViaServicesToDimLC
-// Generates an array of the services (Uids) that should be dimmed from Send
-// via menu. Returns a pointer to that array. Configuration in Messaging 
-// central repository defines services to dim.
-// ---------------------------------------------------------------------------
-//	
-CArrayFixFlat<TUid>* CVRRecViewModel::SendViaServicesToDimLC()
-	{
-	CArrayFixFlat< TUid >* servicesToDim = 
-									new( ELeave ) CArrayFixFlat< TUid >( 1 );
-    CleanupStack::PushL( servicesToDim );
-     
-    CRepository* repository = 
-    					CRepository::NewL( KCRUidMuiuMessagingConfiguration );
-    TInt configuration = 0;
-    if ( !repository->Get( KMuiuSendUiConfiguration, configuration ) )
-        {
-        configuration = configuration & KMuiuEmailDisabledInMultimedia;
-        }
-    delete repository;
-
-  	if ( configuration )
-    	{
-    	servicesToDim->AppendL( KSenduiMtmSmtpUid );		// normal email
-    	servicesToDim->AppendL( KSenduiMtmSyncMLEmailUid );	// sync email
-    	}
-    	
-    return servicesToDim;	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CallFunctionByIdL
-// 
-// ---------------------------------------------------------------------------
-//	
-/*
-IMPLEMENTATION NOTE:
-This method needs refactoring with CVRMemo and CVRMdaRecorder.
-Probably most of the logic should be transferred to CVRMemo.
-*/
-TBool CVRRecViewModel::CallFunctionByIdL( TInt aFunctionId )
-	{
-	switch ( aFunctionId )
-		{
-		case EFunctionPlay:
-			{
-			CVRMdaRecorder* iRecorderUtility = NULL;
-			iRecorderUtility = dynamic_cast<CVRMdaRecorder*>(iRecorder);
-			if ( VRUtils::UnsupportedCallTypeOngoing( ETrue ) || iRecorderUtility == NULL || !iRecorderUtility->IsAttachedToMemo())
-				{
-				return EFalse;
-				}
-
-			iIgnoreNextIhfChange = EFalse;
-			SetRecorderVolume();
-			SetIHFIfCallNotActive( iIhfState );
-			TInt mediaservErr( KErrNone );
-			
-			// Don't accept CBA commands
-			iCBAEnabled = EFalse;
-			// Update CBAs
-			iDecoratorObserver->Update( EVRUpdateCBA );
-			TRAPD( leaveErr, mediaservErr = iRecorder->PlayL() );
-			
-			// Accept CBAs again. CBAs are updated when state is changed
-			iCBAEnabled = ETrue;
-			
-			if ( leaveErr == KErrNotReady )
-				{
-				ShowNoteL( R_VR_CORRUPT_INFONOTE_LABEL, EAknGlobalErrorNote );
-				return EFalse;
-				}
-
-			if ( mediaservErr != KErrNone )
-				{
-				// cancel the state change
-				// the error note is shown in CVRMdaRecorder
-				return EFalse;
-				}
-			User::LeaveIfError( leaveErr );
-			break;
-			}
-		case EFunctionStop:
-			{
-			// Turn off the IHF after playing
-			SetIHFIfCallNotActive( EFalse );
-			iRecorder->Stop();
-			CheckIhfState();
-			break;
-			}
-		case EFunctionStopWithNote:
-			{
-			// No need to do anything to IHF here since this is
-			// called after recording (IHF is not used)
-			iRecorder->Stop();
-			ShowNoteL( R_VR_STOP_INFONOTE_LABEL, EAknGlobalInformationNote );
-			break;
-			}
-		case EFunctionStopAndSave:
-			{
-			// No need to do anything to IHF here since this is
-			// called after recording (IHF is not used)
-			StopAndSaveL( 0 );
-			break;
-			}
-		case EFunctionAutoStopAndSave:
-			{
-			// No need to do anything to IHF here since this is
-			// called after recording (IHF is not used)
-			StopAndSaveL( R_VR_STOP_INFONOTE_LABEL );
-			break;
-			}
-		case EFunctionSilentStopAndSave:
-			{
-			// No need to do anything to IHF here since this is
-			// called after recording (IHF is not used)
-			StopAndSaveL( 0 );
-			break;
-			}
-
-		case EFunctionAutoStop:
-			{
-			// Turn off the IHF after playing
-			SetIHFIfCallNotActive( EFalse );
-			iRecorder->Stop();
-			CheckIhfState();
-			break;
-			}
-		case EFunctionSaveBeforeExit:
-			{
-			StopAndCloseL( R_VR_STOP_SAVE_WAITNOTE_LABEL );
-			break;
-			}
-		case EFunctionRecord:
-			{
-			CVRMdaRecorder* iRecorderUtility = NULL;
-			if ( VRUtils::UnsupportedCallTypeOngoing( ETrue ) )
-				{
-				return EFalse;
-				}			
-         
-			//if ( iRecorder->RecordL() != KErrNone )
-			//	{
-			//	return EFalse;
-			//	}
-			
-			if(iCurrentCallHandler->StateL(KPSUidCtsyCallInformation,KCTsyCallState )==EPSCTsyCallStateConnected)
-				{
-				iRecorderUtility = dynamic_cast<CVRMdaRecorder*>(iRecorder);
-				if(iRecorderUtility != NULL)
-					{
-					iRecorderUtility->SetAudioInputL(CAudioInput::EVoiceCall);	
-					iRecorderUtility->ConfigSampleRateOfVoiceCallL();
-					}
-				}
-			//Audioinput can't be changed after Record
-			if ( iRecorder->RecordL() != KErrNone )
-				{
-				return EFalse;
-				}	
-			break;
-			}
-		case EFunctionPause:
-			{
-			
-			iRecorder->Pause();
-			// Turn off the IHF after playing
-			SetIHFIfCallNotActive( EFalse );         
-			break;
-			}
-		case EFunctionForward:
-			{
-			TInt result = iRecorder->ForwardL();
-
-			// The volume setting is lost when the media server client object
-			// is stopped.
-			SetRecorderVolume();
-
-			if ( result )
-				{
-				return EFalse;
-				}
-			break;
-			}
-		case EFunctionRewind:
-			{
-			iRecorder->RewindL();
-			if ( iButtonPanelObserver )
-			    {
-			    iButtonPanelObserver->Update();
-			    }
-
-			// The volume setting is lost when the media server client object
-			// is stopped
-			SetRecorderVolume();
-			break;
-			}
-		case EFunctionRecordNew:
-			{
-			CVRMdaRecorder* iRecorderUtility = NULL;
-			if ( VRUtils::UnsupportedCallTypeOngoing( ETrue ) )
-				{
-				return EFalse;
-				}
-			iRecorderUtility = dynamic_cast<CVRMdaRecorder*>(iRecorder);
-			if(iRecorderUtility == NULL)
-				{
-				return EFalse;
-				}
-			iRecorderUtility->SetInRecordingFlag(ETrue);
-            
-			iCanHandleCommands = EFalse;
-			// Don't accept CBA commands
-			iCBAEnabled = EFalse;
-			// Update CBAs
-			iDecoratorObserver->Update( EVRUpdateCBA );
-            
-		    iRecorder->DetachMemo();
-			
-			TRAPD( leaveErr1, SetMemoNameNewL( 
-					iContext == EContextRecordNewForRemote ) );
-			
-			// Can't attach if memo name couldn't be generated
-			TInt leaveErr2( KErrNone );
-			if( !leaveErr1 )
-				{
-				TRAP( leaveErr2, iRecorder->AttachToMemoL( iMemo ) );	
-				}
-			
-			TBool ifAttach = iRecorderUtility->IsAttachedToMemo();		
-	
-			if ( leaveErr1 || leaveErr2 || !ifAttach)
-				{
-				iCanHandleCommands = ETrue;
-				iCBAEnabled = ETrue;
-				if ( leaveErr1 == KErrDiskFull || leaveErr2 == KErrDiskFull )	
-					{
-					if ( iMemo->StorageDrive() == VRUtils::GetRemovableMassStorageL())
-						{
-		 				VRUtils::ShowMemoryFullConfirmationQuery(ETrue);
-						}
-					else
-						{
-				 		VRUtils::ShowMemoryFullConfirmationQuery();
-						}
-					}
-				}
-			
-			User::LeaveIfError( leaveErr1 );
-			User::LeaveIfError( leaveErr2 );
-			if(!ifAttach)
-				{
-			    User::Leave(KErrNotReady);	
-				}
-				
-			// Indicates that a new memo is attached but not yet recording 
-			// started -> handle can be reused and memo can be deleted in exit
-			iMemo->SetRecorded( EFalse );
-			
-			TInt recError( KErrNone );
-
-			//TRAPD( recLeaveErr, recError = iRecorder->RecordL() );
-			if(iCurrentCallHandler->StateL(KPSUidCtsyCallInformation,KCTsyCallState )==EPSCTsyCallStateConnected)
-				{
-				iRecorderUtility->SetAudioInputL(CAudioInput::EVoiceCall);
-				iRecorderUtility->ConfigSampleRateOfVoiceCallL();
-				}
-			//Change for CS call:Audio input can't be changed after Record
-            TRAPD( recLeaveErr, recError = iRecorder->RecordL() );
-            
-            if (GetInRecordingFlag())
-            	{
-            	iRecorderUtility->SetInRecordingFlag(EFalse);
-            	}
-            	
-			if ( recError != KErrNone || recLeaveErr )
-				{
-				iCanHandleCommands = ETrue;
-				iCBAEnabled = ETrue;
-				if ( recLeaveErr )
-					{
-					User::LeaveIfError( recLeaveErr );					
-					}
-				else
-					{
-					return EFalse;	
-					}
-				}
-			
-			
-			iCanHandleCommands = ETrue;	
-			// Accept CBAs again. CBAs are updated when state is changed
-			iCBAEnabled = ETrue;
-			break;
-			}
-		case EFunctionDelete:
-			{
-			iRecorder->DetachMemo();
-			// Detaching resets the clip position so button panel 
-			// needs to be updated
-			iButtonPanelObserver->Update( EVRUpdatePositionChange );
-			if ( !iMemo->QueryAndDeleteL() )
-				{
-				iRecorder->AttachToMemoL( iMemo );
-				return EFalse;
-				}
-			break;
-			}
-		case EFunctionRename:
-			{
-			iRecorder->DetachMemo();
-			// Detaching resets the clip position so button panel 
-			// needs to be updated
-			iButtonPanelObserver->Update( EVRUpdatePositionChange );
-			if ( iMemo->QueryAndRenameL() )
-				{
-				if ( iStateInfoObserver )
-					{
-					iStateInfoObserver->Update();
-					}
-				}
-			iRecorder->AttachToMemoL( iMemo );
-			break;
-			}
-		case EFunctionOk:
-			{
-
-			HBufC* label = StringLoader::LoadLC( R_VR_SAVE_WAITNOTE_LABEL );
-
-			iRecorder->DetachMemo();
-			iIsNoteLaunched = ETrue;
-			iMemo->SavePermanentlyL( iGlobalNote, iNoteId, *label );
-
-			CEikonEnv::Static()->EikAppUi()->HandleCommandL( 
-												ECmdEmbeddedRecordingReady );
-
-			iGlobalNote->CancelNoteL( iNoteId );
-			iIsNoteLaunched = EFalse;
-#ifdef _DEBUG
-			RDebug::Print( _L( 
-						"VoiceRecorder: CVRRecViewModel Note cancelled" ) );
-#endif
-			CleanupStack::PopAndDestroy( label );
-
-			HandleCommandL( EEikCmdExit );
-			break;
-			}
-		case EFunctionCancel:
-			{
-			iRecorder->DetachMemo();
-			iMemo->DeleteL();
-			HandleCommandL( EEikCmdExit );
-			break;
-			}
-		case EFunctionNop:
-			{
-			// dummy command, do nothing
-			break;
-			}
-		case EFunctionNRTStop:
-			{
-			// Turn off the IHF after playing
-			SetIHFIfCallNotActive( EFalse );
-
-			iRecorder->Stop();
-			CheckIhfState();
-			break;
-			}
-		case EFunctionNRTAutoStop:
-			{
-			// Turn off the IHF after playing
-			SetIHFIfCallNotActive( EFalse );
-			CheckIhfState();
-			break;
-			}
-		case EFunctionSetNewPosition:	
-			{
-			TInt newValue( 0 );
-			if ( iStateInfoPanelObserver )
-				{
-				newValue = iStateInfoPanelObserver->ProgressBarPosition();		
-				}
-
-			iRecorder->SetPositionL( newValue );
-			
-			//Inform button Panel
-			if ( iButtonPanelObserver )
-			    {
-			    iButtonPanelObserver->Update( EVRUpdateStateChange );
-			    }
-			break;
-			}	
-		default:
-			{
-			User::Panic( KVRPanic, EPanicFunctionUnknown );
-			break;
-			}
-		}
-		return ETrue;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::StopAndSaveL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::StopAndSaveL( TInt aResourceId )
-	{
-	HBufC* label = NULL;
-
-	// Don't show the note if aResourceId was not defined
-	if ( aResourceId )
-		{
-		label = StringLoader::LoadLC( aResourceId );
-		}
-
-	iRecorder->DetachMemo();
-
-	if ( label )
-		{
-		iIsNoteLaunched = ETrue;
-		if(iMemo)
-			{
-		    iMemo->SavePermanentlyL( iGlobalNote, iNoteId, *label );	
-			}
-		
-		// There is no more note showing in SavePermanentlyL() -function
-		// the note is shown here
-		ShowNoteL( aResourceId, EAknGlobalInformationNote );
-		}
-	else
-		{
-		iIsNoteLaunched = ETrue;
-		if(iMemo)
-			{
-		    iMemo->SavePermanentlyL( iGlobalNote, iNoteId, KNullDesC );
-			}
-		}
-
-	TRAP_IGNORE(iRecorder->AttachToMemoL( iMemo ));
-
-	iGlobalNote->CancelNoteL( iNoteId );
-	iIsNoteLaunched = EFalse;
-
-	if ( aResourceId )
-		{
-		CleanupStack::PopAndDestroy( label );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::StopAndCloseL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::StopAndCloseL( TInt aResourceId )
-	{
-	HBufC* label = NULL;
-
-	// Don't show the note if aResourceId was not defined
-	if ( aResourceId )
-		{
-		label = StringLoader::LoadLC( aResourceId );
-		}
-
-	iRecorder->DetachMemo();
-
-	if ( label )
-		{
-		iIsNoteLaunched = ETrue;
-		if(iMemo)
-			{
-		    iMemo->SavePermanentlyL( iGlobalNote, iNoteId, *label );	
-			}
-		}
-	else
-		{
-		iIsNoteLaunched = ETrue;
-		if(iMemo)
-			{
-		    iMemo->SavePermanentlyL( iGlobalNote, iNoteId, KNullDesC );	
-			}
-		}
-
-	iGlobalNote->CancelNoteL( iNoteId );
-	iIsNoteLaunched = EFalse;
-
-	if ( aResourceId )
-		{
-		CleanupStack::PopAndDestroy( label );
-		}
-	}
-
-void CVRRecViewModel::ShowNoteL( TInt aResourceId,
-								 TAknGlobalNoteType aNoteType )
-	{
-	HBufC* label = StringLoader::LoadLC( aResourceId );
-	iGlobalNote->ShowNoteL( aNoteType, *label );
-	CleanupStack::PopAndDestroy( label );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetVolumeControlState
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::GetVolumeControlState( TVRVolumeControlState& aState,
-											TInt& aVolume )
-	{
-	// ignored
-	TRAP_IGNORE( ReadDefaultSpeakerL() );
-	if ( iState->iHasVolumeControl )
-		{
-		if ( iIhfState )
-			{
-			aState = EIhf;
-
-			}
-		else
-			{
-			aState = EEarPiece;
-			}
-		aVolume = iIhfVolume;
-		}
-	else
-		{
-		aState = EDisabled;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::LoadVolumeSettingsL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::LoadVolumeSettingsL()
-	{
-	iIhfVolume = VRUtils::DefaultVolumeL( ESpeakerIhf );
-	// Prevent using incorrect values
-	if ( iIhfVolume < KVRVolumeControlMin ||
-		iIhfVolume > KVRVolumeControlMax )
-		{
-		iIhfVolume = KVRDefaultVolume;
-		}		
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SaveVolumeSettings
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SaveVolumeSettings()
-	{
-	// Ignore all errors, because this will be called in destructor. It isn't 
-	// disastrous if new values aren't saved, the previous values will be there
-	TRAP_IGNORE( VRUtils::SetDefaultVolumeL( ESpeakerIhf, iIhfVolume ); );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::HandleSystemEventL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::HandleSystemEventL()
-	{
-	// Fetch the changed value from Pubsub
-	TInt currentState( iCurrentCallHandler->StateL(KPSUidCtsyCallInformation, KCTsyCallState ) );
-
-	if ( !iActive )
-		{
-		iPreviousCallState = currentState;
-		return;
-		}
-
-
-	// Actions to take when playing
-	if ( iState->iId == EStatePlaying )
-		{
-		switch ( currentState )
-			{
-			case EPSCTsyCallStateAlerting:
-			case EPSCTsyCallStateRinging:
-			case EPSCTsyCallStateAnswering:
-				{
-				HandleCommandL( ECmdAutoStopAtEnd );
-				break;
-				}
-			default:
-				{
-				break;
-				}
-			}			
-		}
-
-	// Actions to take when recording
-	if ( iState->iId == EStateRecording )
-		{
-		switch ( currentState )
-			{
-			case EPSCTsyCallStateAlerting:
-			case EPSCTsyCallStateRinging:
-			case EPSCTsyCallStateAnswering:
-			case EPSCTsyCallStateDisconnecting:
-				{
-				HandleCommandL( ECmdAutoStopAtEnd );
-				break;
-				}
-			case EPSCTsyCallStateNone:
-				{
-				if( iPreviousCallState == EPSCTsyCallStateConnected )
-					{
-					CVRMdaRecorder* iRecorderUtility = NULL;
-					iRecorderUtility = dynamic_cast<CVRMdaRecorder*>(iRecorder);
-					if(iRecorderUtility != NULL)
-						{
-						iRecorderUtility->SetAudioInputL(CAudioInput::EDefaultMic);					
-						}
-					HandleCommandL( ECmdAutoStopAtEnd );
-					}
-				break;										
-				}
-			default:
-				{
-				break;
-				}
-			}			
-		}		
-
-	if ( iState->iId == EStateIdle && 
-		 currentState == EPSCTsyCallStateNone )
-		{
-		iIhfState = ETrue;
-		}
-
-	/* -------------------------
-	 * Disable in-call recording
-	 * -------------------------
-	 */
-	if ( iVRAllowInCallRecording != KAllowInCallRecording )
-		{
-		if (( iState->iId == EStateIdle || iState->iId == EStateDeleted ) &&
-			 currentState == EPSCTsyCallStateAnswering)
-			{
-			// Disable record button
-			ChangeState( EStateDisableButtons, ETrue );
-			}
-		if (( iState->iId == EStateDisableButtons ) &&
-			 ((currentState == EPSCTsyCallStateDisconnecting)|| (currentState == EPSCTsyCallStateNone)))
-			{
-			if (iContext != EContextRecordNewForRemote)
-				{
-			// Enable record button
-			ChangeState( EStateDeleted, ETrue );
-				}
-		     else
-		        {
-		        if (!(iMemo->Duration() > TTimeIntervalMicroSeconds(0)))
-		        	{
-		        	ChangeState( EStateRecordEmbedded, ETrue );
-		        	}
-		        else
-		        	{
-		        	ChangeState( EStateIdleRecordEmbedded, ETrue );
-		        	}
-		        }
-			}
-		}
-		
-	iPreviousCallState = currentState;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetIHFIfCallNotActive
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetIHFIfCallNotActive( TBool aIhf )
-	{
-	if ( FeatureManager::FeatureSupported( 
-							KFeatureIdApplicationControllableAudioRouting ) )
-		{
-		TInt currentState( EPSCTsyCallStateNone );
-        // Ignore the error, ihf is not set
-		TRAP_IGNORE( currentState = iCurrentCallHandler->StateL( 
-									KPSUidCtsyCallInformation, KCTsyCallState ) );
-
-		if ( currentState == EPSCTsyCallStateNone )
-			{
-			if ( iRecorder->SetIhf( aIhf ) == KErrNone )
-				{
-				// So that the model knows that the next notify from shared 
-				// data client is not a voice key activated IHF change.
-				iIgnoreNextIhfChange = ETrue;
-				}
-			}
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CheckIhfState
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::CheckIhfState()
-	{
-	if ( FeatureManager::FeatureSupported( KFeatureIdKeypadNoVoiceKey ) &&
-		FeatureManager::FeatureSupported( 
-							KFeatureIdApplicationControllableAudioRouting ) )
-		{
-		if ( iDefaultSpeaker == ESpeakerIhf )
-			{
-			iIhfState = ETrue;
-			}
-		else
-			{
-			iIhfState = EFalse;
-			}
-		}
-	else
-		{
-		// IHF is default on phones with voice key
-		iIhfState = ETrue;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetRecorderVolume
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetRecorderVolume()
-	{
-	TInt activeVolume = iIhfVolume;
-	iRecorder->SetVolume( activeVolume, KVRMaxVolumeSteps );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ActivateL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::ActivateL()
-	{
-	iActive = ETrue;
-
-	if ( FeatureManager::FeatureSupported( KFeatureIdKeypadNoVoiceKey ) &&
-		FeatureManager::FeatureSupported( 
-				KFeatureIdApplicationControllableAudioRouting ) )
-		{
-		// The user has visited another view and possibly altered the
-		// settings
-		ReadDefaultSpeakerL();
-		}
-
-	// If the in-call disable recording feature has been enabled, then check 
-	// current status and enable/disable UI accordingly
-	if ( iVRAllowInCallRecording != KAllowInCallRecording )
-		{
-		TInt currentState( iCurrentCallHandler->StateL(
-			KPSUidCtsyCallInformation, KCTsyCallState ) );
-		if ( currentState != EPSCTsyCallStateNone )
-			{
-			ChangeState (EStateDisableButtons, ETrue);
-			}
-        }
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::Deactivate
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::Deactivate()
-	{
-	iActive = EFalse;
-	}
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::ReadDefaultSpeakerL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::ReadDefaultSpeakerL()
-	{
-	iDefaultSpeaker = VRUtils::DefaultSpeakerL();
-
-	if ( iDefaultSpeaker == ESpeakerIhf )
-		{
-		iIhfState = ETrue;
-		}
-	else
-		{
-		iIhfState = EFalse;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::TVRLabelLayoutLink::ReadFromResource
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::TVRLabelLayoutLink::ReadFromResource
-										( TResourceReader& aReader )
-	{
-	iEuroId = aReader.ReadUint32();
-	iApacId = aReader.ReadUint32();
-	iArabicHebrewId = aReader.ReadUint32();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::CanSetVolume
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::CanSetVolume()
-	{
-	return ETrue;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::HandleUpdateErrorL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::HandleUpdateErrorL( TInt aErr )
-	{
-	// Show error note.
-	if ( aErr == KErrDiskFull )
-		{
-
-#ifndef RD_MULTIPLE_DRIVE    
-		if ( VRUtils::MemoStoreL() == EMemoStorePhoneMemory )
-			{
-			ShowNoteL( R_VR_MEMORY_WARNING, EAknGlobalWarningNote );
-			}
-		else
-			{
-			ShowNoteL( R_VR_MEMORY_MMC_WARNING, EAknGlobalWarningNote );
-			}
-			
-//multiple drive
-#else
-		TInt memoDrive = VRUtils::MemoDriveL();
-		TUint status( 0 );
-		VRUtils::GetDriveInfo( memoDrive, status );
-		        
-		if ( status & DriveInfo::EDriveInternal )
-		    {
-			ShowNoteL( R_VR_MEMORY_WARNING, EAknGlobalWarningNote );
-			}
-		else
-			{
-			ShowNoteL( R_VR_MEMORY_MMC_WARNING, EAknGlobalWarningNote );
-			}
-#endif
-
-
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::MemoFileHandle
-// 
-// ---------------------------------------------------------------------------
-//
-RFile& CVRRecViewModel::MemoFileHandle()
-	{
-	return iMemo->File();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetFileHandle
-// 
-// ---------------------------------------------------------------------------
-//	
-void CVRRecViewModel::SetFileHandle( RFile& aFile )
-	{
-	// Use app startup type as embbedding flag
-	iMemo->SetFileHandle( aFile, CEikonEnv::Static()->StartedAsServerApp() );
-	if ( iRecorder )
-		{
-		// First detach if already attached
-		iRecorder->DetachMemo();
-		// The media server error will rise again somewhere where it's
-		// easier to handle if needed
-		TRAP_IGNORE( iRecorder->AttachToMemoL( iMemo ) );		
-		}
-
-	}	
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::FormatTimeL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::FormatTimeL( const TTime& aTime, TDes& aString ) const
-	{
-
-	// Show longer format if duration more than 1 hour
-	if ( aTime.DateTime().Hour() >= 1 )
-		{
-		aTime.FormatL( aString,
-			  iTimeDuratLong );						
-		}
-	else
-		{
-		aTime.FormatL( aString,
-			  iTimeDuratMinSecWithZero );						
-		}	
-	}
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::EnableVolumeControl
-// Enables/Disables the navi pane Volume Control drawing in the VR current 
-// visual state
-// ---------------------------------------------------------------------------
-//	
-void CVRRecViewModel::EnableVolumeControl( TBool aVolumeControl )
-	{
-	iState->iHasVolumeControl = aVolumeControl;
-	}
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::HasVolumeControl
-// Returns ETrue if volume setting is enabled in this VoiceRecorder state.
-// Otherwise returns EFalse
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::HasVolumeControl() const
-	{
-	if( iState->iHasVolumeControl )
-		{
-		return ETrue;
-		}
-	return EFalse;	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::IncomingCall
-// Returns ETrue if a phone call is coming.
-// Otherwise returns EFalse
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::IncomingCall() const
-	{
-#ifdef _DEBUG
-	RDebug::Print( _L("CVRRecViewModel::IncomingCall enter") );
-#endif	
-	
-	// Fetch the current value from Pubsub
-	TInt currentState = 0;
-	TRAP_IGNORE(currentState = iCurrentCallHandler->StateL( KPSUidCtsyCallInformation, KCTsyCallState ));
-	
-	if (currentState == EPSCTsyCallStateAlerting ||
-		currentState == EPSCTsyCallStateRinging ||
-		currentState == EPSCTsyCallStateAnswering )
-		{
-		return ETrue;
-		}
-	else
-		{
-		return EFalse;	
-		}	
-	}
-
-
-// ---------------------------------------------------------------------------
-//Returns the active quality setting.
-//return Quality setting of the active memo
-// ---------------------------------------------------------------------------
-TVRQuality CVRRecViewModel::Quality() const
-	{
-		return iMemo->Quality();
-	}
-
-
-// ---------------------------------------------------------
-// GetInRecordingFlag
-// 
-// ---------------------------------------------------------
-//		
-TBool CVRRecViewModel::GetInRecordingFlag()
-	{
-	if(iRecorder)
-		{
-		CVRMdaRecorder* iRecorderUtility = NULL;
-		iRecorderUtility = dynamic_cast<CVRMdaRecorder*>(iRecorder);	
-		if(iRecorderUtility != NULL)
-			{
-			return iRecorderUtility->GetInRecordingFlag();
-			}
-		return EFalse;
-		}
-	else
-		{
-		return EFalse;
-		}
-		
-	}
-	
-
-// ---------------------------------------------------------
-// GetIfStopCalled
-// 
-// ---------------------------------------------------------
-//		
-TBool CVRRecViewModel::GetIfStopCalled()
-	{
-	if(iRecorder)
-		{
-		CVRMdaRecorder* iRecorderUtility = NULL;
-		iRecorderUtility = dynamic_cast<CVRMdaRecorder*>(iRecorder);	
-		if(iRecorderUtility != NULL)
-			{
-			return iRecorderUtility->GetIfStopCalled();
-			}
-		return EFalse;
-		}
-	else
-		{
-		return EFalse;
-		}
-		
-	}
-
-	
-// ---------------------------------------------------------
-// SetInRecordingFlag
-// ---------------------------------------------------------
-//
-void CVRRecViewModel::SetInRecordingFlag(TBool aFlag)
-	{
-	if(iRecorder)
-		{
-		CVRMdaRecorder* iRecorderUtility = NULL;
-		iRecorderUtility = dynamic_cast<CVRMdaRecorder*>(iRecorder);	
-		if(iRecorderUtility != NULL)
-			{
-			return iRecorderUtility->SetInRecordingFlag(aFlag);
-			}		
-		}
-	}
-
-
-
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::HandleMMCEjectEventL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::HandleMMCEjectEventL()
-	{
-	
-	// Actions to take when recording
-	TInt storageDrive = VRUtils::MemoDriveL();   	 
-    if ( ( ( storageDrive == VRUtils::GetRemovableMassStorageL()) ||
-            ( iMemo != NULL && iMemo->StorageDrive() == VRUtils::GetRemovableMassStorageL() ) ) && 
-            ( !CVRUSBStateHanlder::IsUsbActive() ) )
-		{
-        //exit for mmc dismount	
-        SendExitEvent();   
-		}
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SendExitEvent
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SendExitEvent()
-    {
-    TWsEvent event;
-    event.SetType( EAknSoftkeyExit );
-    event.SetTimeNow();
-    event.SetHandle( CCoeEnv::Static()->WsSession().WsHandle() );
-    CCoeEnv::Static()->WsSession().SendEventToWindowGroup( CEikonEnv::Static()->RootWin().Identifier(), event );
-    return;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::SetIsDriveReady
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRRecViewModel::SetIsDriveReady(TBool aIsDriveReady)
-    {
-    iIsDriveReady = aIsDriveReady;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRRecViewModel::GetIsDriveReady
-// 
-// ---------------------------------------------------------------------------
-//
-TBool CVRRecViewModel::GetIsDriveReady()
-    {
-    return iIsDriveReady;
-    }
-
-
-// End of file
--- a/voicerecorder/RecViewSrc/CVRRecViewModel.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,761 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class is the data model and state machine of the Recorder View.
-*     The state machine is defined by a VR_STATEMACHINE resource structure.
-*
-*/
-
-
-#ifndef __CVRRECVIEWMODEL_H__
-#define __CVRRECVIEWMODEL_H__
-
-// INCLUDES
-#include <e32base.h>
-#include <e32std.h>
-#include <e32property.h> 
-#include <AknNotifyStd.h>
-#include <badesca.h>
-
-#include "MVRIHFObserver.h"
-#include "MVRKeyObserver.h"
-#include "MVRDecoratorModel.h"
-#include "MVRButtonPanelModel.h"
-#include "MVRStateInfoModel.h"
-#include "MVRObserver.h"
-#include "MVRSelectionProvider.h"
-#include "MVRVolumeChangeObserver.h"
-
-#include "MVRSystemEventObserver.h"
-#include "MVRMediaRemovalObserver.h"
-
-
-#include "TVRContext.h"
-#include "voicerecorder.hrh"
-
-#include "MVRStateInfoObserver.h"
-
-// FORWARD DECLARATIONS
-class CAknGlobalNote;
-class CSendUi;
-class MVRMdaRecorder;
-class CVRMemo;
-class MVRObserver;
-class TResourceReader;
-class TVRState;
-class CVRSystemEventHandler;
-class CVRMediaRemovalMonitor;
-
-
-// CLASS DEFINITION
-/**
-* This class is the data model and state machine of the Recorder View.
-* The state machine is defined by a VR_STATEMACHINE resource structure.
-*/
-NONSHARABLE_CLASS( CVRRecViewModel ): 
-	  public CBase,
-	  public MVRDecoratorModel, public MVRButtonPanelModel,
-	  public MVRStateInfoModel, public MVRObserver,
-	  public MVRKeyObserver, public MVRVolumeChangeObserver,
-      public MVRSystemEventObserver,
-      public MVRMediaRemovalObserver      
-	{
-	private:	// nested classes
-
-		class TVRLabelLayoutLink
-			{
-			public:
-				/**
-				* Constructs this object from a VR_LABEL_LINK resource
-				* @param aReader A resource reader object initialised
-				*		 to a resource.
-				*/
-				void ReadFromResource( TResourceReader& aReader );
-			public:
-
-				// Link to the latin layout
-				TInt iEuroId;
-				
-				// Link to the APAC layout
-				TInt iApacId;
-				
-				// Link to the A/H layout
-				TInt iArabicHebrewId;
-			};
-		
-	public: // Constructors and destructor
-
-		/**
-		* Default constructor.
-		*/
-		CVRRecViewModel();
-
-		/**
-		* Destructor
-		*/
-		~CVRRecViewModel();
-
-		/**
-		* Constructs the model from a VR_STATEMACHINE resource.
-		* @param aReader A resource reader object initialised to a resource.
-		*/
-		void ConstructFromResourceL( TResourceReader& aReader );
-
-	public: // from MVRKeyObserver
-
-		/**
-		* This function is called when a subject wants to report a key event.
-		* @param aKeyEvent The key event.
-		* @param aType The type of key event: EEventKey, EEventKeyUp
-		*              or EEventKeyDown
-		* @return Indicates whether or not the key event was used.
-		*/
-		TBool ProcessKeyEventL( const TKeyEvent& aKeyEvent,
-								const TEventCode aType );
-
-	public: // from MVRDecoratorModel
-
-		/**
-		* Returns the resource id for current softkeys
-		* @return Softkey resource identifier
-		*/
-		TInt CbaResourceId() const;
-
-		/**
-		* Returns the resource id for current menu bar
-		* @return Menu bar resource identifier.
-		*/
-		TInt MenuBarResourceId() const;
-
-		/**
-		* Used to get the state of the volume control component.
-		*/
-		void GetVolumeControlState( TVRVolumeControlState& aState,
-											TInt& aVolume );
-
-		/**
-		* Specifies the current help context.
-		* @param aContext the context IDs are placed here
-		*/
-		void GetHelpContext( TCoeHelpContext& aContext ) const;
-
-
-		/**
-		* Registers an observer for receiving
-		* update notifications from this interface.
-		* @param aObserver The observer object.
-		*/
-		void SetDecoratorObserver( MVRObserver* aObserver );
-		
-		/**
-		* Tells in return value if CBA Buttons should be enabled or not
-		* @return ETrue if buttons should be enabled, EFalse otherwise
-		*/
-		TBool CBAEnabled() const;
-		
-	public: // from MVRButtonPanelModel
-
-		/**
-		* Returns the number of buttons.
-		* @return number of buttons (>=0)
-		*/
-		TInt ButtonCount() const;
-
-		/**
-		* Returns the state of a specific button.
-		* @param aButtonId Button identifier
-		* @return ENormal or EDimmed
-		*/
-		TInt ButtonState( TInt aButtonId ) const;
-
-		/**
-		* Returns the command id of a specific button.
-		* @param aButtonId Button identifier
-		* @return One of TVRCommands
-		*/
-		TInt CommandId( TInt aButtonId ) const;
-
-		/**
-		* Returns the id of the button that should have initial focus.
-		* @return Button identifier
-		*/
-		TInt InitialFocusButtonId() const;
-
-		/**
-		* Registers an observer for receiving
-		* update notifications from this interface.
-		* @param aObserver The observer object.
-		*/
-		void SetButtonPanelObserver( MVRObserver* aObserver );
-
-		/**
-		* Checks if button panel model needs to reset the focus
-		* for example after a state change
-		* @return Is reset needed
-		*/		
-		TBool ResetNeeded();
-		
-		/**
-		* Returns an ID of the current visual state.
-		* @returns Visual state Id.
-		*/
-		TUint VisualStateId() const;
-		
-        /**
-		* Checks if there is a call incoming at the moment
-		* @return ETrue if call incoming, EFalse otherwise
-		*/
-        TBool IncomingCall() const;	
-
-		/**
-		* Checks if model is in a state where it can take and handle
-		* new commands
-		* @return Can model handle new commands
-		*/
-		TBool CanHandleCommands() const;
-
-	public: // from MVRStateInfoModel
-
-		/**
-		* Returns the length of the current memo
-		* @return The duration in microseconds.
-		*/
-		TTimeIntervalMicroSeconds Duration() const;
-
-		/**
-		* Returns the playing or recording position of the current memo.
-		* @return The position in microseconds.
-		*/
-		TTimeIntervalMicroSeconds Position() const;
-
-		/**
-		* Returns the text content for a label.
-		* @param aName Returned text is placed in this descriptor
-		* @param aLabelIndex Label identifier (>=0)
-		*/
-		void GetLabel( TDes& aName, TInt aLabelIndex ) const;
-
-		/**
-		* Returns the resource id for a label.
-		* @param aLabelIndex Label identifier (>=0)
-		* @return The resource id for the specified label
-		*/
-		TInt ResourceIdForLabel( TInt aLabelIndex, TAknLayoutId aLayout ) const;
-
-		/**
-		* Registers an observer for receiving
-		* update notifications from this interface.
-		* @param aObserver The observer object.
-		*/
-		void SetStateInfoObserver( MVRObserver* aObserver );
-		
-		/**
-		* Determines if model has a progress bar
-		* @return ETrue, if model has a progress bar, otherwise EFalse
-		*/
-		TBool HasProgressBar() const;
-		
-		/**
-		* Determines if model has a volume control in this state
-		* @return ETrue, if model has a volume control, otherwise EFalse
-		*/
-		TBool HasVolumeControl() const;
-		
-		/**
-		* Registers an observer to communicate about the changes in InfoPanel. 
-		* @param aObserver The observer object.
-		*/
-		void SetStateInfoPanelObserver( MVRStateInfoObserver* aObserver );
-
-	public: // from MVRObserver
-
-		/**
-		* Called to notify a change in the observed subject's state.
-		*/
-		void Update( TVRUpdateCommand aCommand );
-
-	public: // from MVRSelectionProvider
-
-		/**
-		* Returns the current memo name in an array
-		* Ownership is transferred. Caller must destroy the returned array.
-		* @return The array containing 0 or 1 names.
-		*/
-		MDesCArray* GetSelectedFilesLC() const;
-
-	public: // from MVRVolumeChangeObserver
-
-		/**
-		* Called to notify a change in volume settings.
-		* @param aStep Volume level in steps
-		* @param aMaxSteps How many steps there are (10 usually).
-		*/
-		void SetVolume( TInt aStep, TInt aMaxSteps );
-
-		/***
-		* Indicates if volume can be set, because rinto tone
-		* volume change has no effect if the tone is playing.
-		*/
-		TBool CanSetVolume();
-
-	public: // CVRSystemEventObserver
-	
-		void HandleSystemEventL();
-
-		void HandleMMCEjectEventL();
-		
-	public: // new methods
-
-		/**
-		* Handles a option menu / command button / softkey command.
-		* @param aCommandId Command identifier, one of TVRCommands
-		*/
-		void HandleCommandL( TInt aCommandId );
-		
-		/**
-		* Returns iInRecording flag
-		* @return True or False
-		*/
-        TBool GetInRecordingFlag();
-        
-       /**
-		* set iInRecording flag
-		* 
-		*/
-        void SetInRecordingFlag(TBool);
-
-
-		/**
-		* Check if stop has been called before
-		* @return True or False
-		*/
-        TBool GetIfStopCalled();
-
-
-		/**
-		* Enters a new state machine context.
-		* Executes the initial state transition defined by the context.
-		* @param aContext Identifies the new context.
-		*/
-		void EnterContextL( const TVRRecViewContexts& aContext );
-
-		/**
-		* Leaves the current state machine context.
-		*/
-		void LeaveContext();
-
-		/**
-		* Sets the memo name. Forwards the call to CVRMemo.
-		* @param aFilename The new file name
-		*/
-		void SetMemoName( const TDesC& aFilename );
-
-		/**
-		* Sets the memo name to a new, unique, one.
-		* Forwards the call to CVRMemo.
-		*/
-		void SetMemoNameNewL( TBool aEmbedded = EFalse );
-
-		/**
-		* Sets the path to directory where memos will be saved.
-		* Forwards the call to CVRMemo.
-		*/
-		void SetSavingLocationL( const TDesC& aPath );
-
-		/**
-		* Returns the complete file name (path and everything).
-		* @return Reference to the memo name.
-		*/
-		const TDesC& Filename() const;
-
-		/**
-		* Returns embedding status.
-		* @param ETrue if the current context is an embedded one.
-		*/
-		TBool IsEmbedded() const;
-
-		/**
-		* Indicates if we are in a state that can accept
-		* more commands (i.e. all async calls have completed).
-		* @return ETrue if it's ok to proceed calling methods.
-		*/
-		TBool CanAcceptCommands() const;
-
-		/**
-		* Sends the current memo via MMS/Infra/Bluetooth/Email
-		* @param aSendUi The CSendUi object used for sending
-		*/
-		void SendViaL( CSendUi* aSendUi );
-
-		/**
-		* Activates the recorder view model
-		*/
-		void ActivateL();
-
-		/**
-		* Deactivates the recorder view model
-		*/
-		void Deactivate();
-
-        /**
-        * Sets the file handle to record into
-        */
-        void SetFileHandle( RFile& aFile );
-
-        /**
-        * Returns the active file handle of CVRMemo object
-        */
-        RFile& MemoFileHandle();
-        
-        /**
-        * Enables or disables the Volume Control drawing in current
-        * visual state
-        * @param aVolumeControl ETrue if Volume Control should be enabled
-        * 						EFalse if disabled 
-        */
-        void EnableVolumeControl( TBool aVolumeControl );
-        
-        /**
-		* Returns the active quality setting.
-		* @return Quality setting of the active memo
-		*/
-		TVRQuality Quality() const;
-		
-        /**
-         * Send exit event to UI
-         */
-        void SendExitEvent();
-        
-        /**
-        * Set the value of iIsDriveReady.
-        * @param The new value of iIsDriveReady.
-        */
-        void SetIsDriveReady(TBool aIsDriveReady);
-                
-        /**
-        * Get the value of iIsDriveReady.
-        * @return The value of iIsDriveReady.
-        */
-        TBool GetIsDriveReady();
-
-	private: // new methods
-
-		/**
-		* Enters a new state.
-		* Executes a function identified by the state transition.
-		* Notifies all registered observers.
-		* @param aNewState identifies the new state.
-		* @param aForce force change state (even if new is same as old)
-		*/
-		void ChangeState( TUint aNewState, TBool aForced = EFalse );
-
-		/**
-		* Retrieves transition information to the given transition object.
-		* @param aTransition Transition to be filled in.
-		* @param aCommandId The command that triggered this transition.
-		*/
-		void GetTransition( TVRContext::TTransition& aTransition,
-							TUint aCommandId ) const;
-
-		/**
-		* Retrieves transition information to the given transition object.
-		* This is used the retrieve the initial transition of a state.
-		* @param aTransition Transition to be filled in.
-		*/
-		void GetTransition( TVRContext::TTransition& aTransition ) const;
-
-		/**
-		* Calls the specified function.
-		* @param aFunctionId Function identifier (TVRFunctions)
-		* @return EFalse if the function want's to cancel the state change
-		*/
-		TBool CallFunctionByIdL( TInt aFunctionId );
-
-		/**
-		* Returns the text content for a label.
-		* This is a leaving variant of GetLabel(). It is called by
-		* GetLabel() inside a TRAP.
-		* @param aName Returned text is placed in this descriptor
-		* @param aLabelIndex Label identifier (>=0)
-		*/
-		void GetLabelL( TDes& aName, TInt aLabelIndex ) const;
-
-		/**
-		* Stops recording and saves the memo.
-		* The specified note text is displayed while saving.
-		* @param aResourceId  Identifies the note text.
-		*/
-		void StopAndSaveL( TInt aResourceId );
-
-		/**
-		* Stops recording and saves the memo.
-		* The specified note text is displayed while saving.
-		* Leaves the memo detached so that application can be closed.
-		* @param aResourceId  Identifies the note text.
-		*/
-		void StopAndCloseL( TInt aResourceId );
-
-		/**
-		* Shows a global note.
-		* @param aResourceId Identifies the note text.
-		* @param aNoteType Identifies the note type.
-		*/
-		void ShowNoteL( TInt aResourceId, TAknGlobalNoteType aNoteType );
-
-		/**
-		* Loads the volume settings (IHF & ear piece) from VoiceRecorder.ini
-		*/
-		void LoadVolumeSettingsL();
-
-		/**
-		* Saves the volume settings (IHF & ear piece) to VoiceRecorder.ini
-		* Note: This method is non-leaving and ignores all errors, because
-		* it's called inside the destructor. LoadVolumeSettingsL() has
-		* sanity checking so the situation isn't fatal if the saving fails.
-		*/
-		void SaveVolumeSettings();
-
-		/**
-		* Sets IHF on/off, if the phone is not in voice on alerting state
-		* @param aIhf ETrue == set IHF on, EFalse == set IHF off
-		*/
-		void SetIHFIfCallNotActive( TBool aIhf );
-
-		/*
-		* Checks if the current default speaker is loudspeaker or earpiece
-		*/
-		void CheckIhfState();
-
-		/**
-		* Sets the volume on the media server client object according
-		* to the current active IHF setting.
-		*/
-		void SetRecorderVolume();
-
-		/**
-		* Reads the default speaker setting and sets iIhfState accordingly
-		*/
-		void ReadDefaultSpeakerL();
-
-		/*
-		* Handles error in Update method.
-		* @param aErr Id of the error
-		*/
-		void HandleUpdateErrorL( TInt aErr );
-
-		/*
-		* Formats time to R_QTN_TIME_DURAT_LONG or 
-		* R_QTN_TIME_DURAT_MIN_SEC_WITH_ZERO depending of time value
-		* @param aTime Time that is formatted
-		* @param aString Buffer that holds the formatted time
-		*/
-		void FormatTimeL( const TTime& aTime, TDes& aString ) const;
-		
-		/*
-		* Generates an array of services that should be dimmed from the 
-		* options menu "Send" selection list
-		* @return A pointer to an array that consists of the service Uids 
-		* 		that should be dimmed
-		*/
-		CArrayFixFlat<TUid>* SendViaServicesToDimLC();
-
-	private: // data
-
-		/**
-		* The state machine structure.
-		*/
-		TVRContext iContexts[ ENumContexts ];
-
-		/**
-		* The current context.
-		*/
-		TVRRecViewContexts iContext;
-
-		/**
-		* Pointer to the current state. Contained in iContexts.
-		*/
-		TVRState* iState;
-
-		/**
-		* Pointer to the voice memo object. Owned
-		*/
-		CVRMemo* iMemo;
-
-		/**
-		* Pointer to the recorder object. Owned
-		*/
-		MVRMdaRecorder* iRecorder;
-
-		/**
-		* Pointer to a global information note object. Owned
-		*/
-		CAknGlobalNote* iGlobalNote;
-
-		/**
-		* Pointer to an array of UI states. Owned
-		*/
-		CArrayFixSeg< TVRState > iStateArray;
-
-		/**
-		* Pointer to an array of label sets. Owned.
-		*/
-		CArrayPtrSeg< CDesCArray > iLabelSets;
-
-		/**
-		* Pointer to an array of label resource ids. Owned.
-		*/
-		TVRLabelLayoutLink* iLabelLayoutLinks;
-
-		/**
-		* Pointer to the button panel observer. Not owned.
-		*/
-		MVRObserver* iButtonPanelObserver;
-
-		/**
-		* Pointer to the decorator observer. Not owned.
-		*/
-		MVRObserver* iDecoratorObserver;
-
-		/**
-		* Pointer to the state info observer. Not owned.
-		*/
-		MVRObserver* iStateInfoObserver;
-
-		/**
-		* Format string placeholder.
-		* R_QTN_DATE_USUAL_WITH_ZERO is loaded to it in construction.
-		*/
-		TBuf< VRLABELMAXLENGTH > iDateUsualWithZero;
-
-		/**
-		* Format string placeholder.
-		* R_QTN_TIME_USUAL_WITH_ZERO is loaded to it in construction.
-		*/
-		TBuf< VRLABELMAXLENGTH > iTimeUsualWithZero;
-
-		/**
-		* Format string placeholder.
-		* R_QTN_TIME_DURAT_MIN_SEC_WITH_ZERO is loaded to it in construction.
-		*/
-		TBuf< VRLABELMAXLENGTH > iTimeDuratMinSecWithZero;
-		
-		/**
-		* Format string placeholder.
-		* R_QTN_TIME_DURAT_LONG is loaded to it in construction.
-		*/		
-		TBuf< VRLABELMAXLENGTH > iTimeDuratLong;
-
-		/**
-		* ETrue if the model has succesfully entered a context.
-		*/
-		TBool iContextEntered;
-
-		/**
-		* For listening call events. Owned.
-		*/
-		CVRSystemEventHandler* iCurrentCallHandler;
-
-		CVRMediaRemovalMonitor* iCurrentMMCEjectHandler;
-
-
-		/**
-		* Current logical state (i.e. what the user sees, not the actual
-		* state of the HW) of the IHF
-		*/
-		TBool iIhfState;
-
-		/**
-		* Prefered volume of the IHF
-		*/
-		TInt iIhfVolume;
-
-		/**
-		* Used to tell the IHF change event listener, that the next IHF
-		* change is not made with voice key and is to be ignored
-		*/
-		TBool iIgnoreNextIhfChange;
-
-		/**
-		* Indicates if the view is actually active, so that the model
-		* knows when to ignore IHF change events
-		*/
-		TBool iActive;
-
-		/**
-		* Default speaker when playing
-		*/
-		TVRSpeaker iDefaultSpeaker;
-
-		/**
-		* Indicates if End key is pressed so view deactivation can trigger 
-		* right operation ( paused memo is saved as well )
-		*/
-		TBool iIsEndKey;
-
-		/*
-		* Id for canceling waitnote
-		*/
-		TInt iNoteId;
-
-		/*
-		*
-		*/
-		TBool iIsNoteLaunched;
-
-		/**
-		* Default audio format for recording audio clip
-		*/
-		TInt iVRAudioFormat;
-
-		/**
-		* Allow In-call recording functionality
-		*/
-		TInt iVRAllowInCallRecording;
-
-
-		/**
-		* The call state retrieved on previous notification
-		*/
-		TInt iPreviousCallState;
-		
-		/**
-		* Should the button panel reset itself on update
-		*/
-		TBool iResetButtons;
-		
-		/**
-		* If model can handle commands. i.e. no critical command handling
-		* just ongoing, e.g. waiting start tone play before starting
-		* recording
-		*/
-		TBool iCanHandleCommands;
-		
-		/**
-		* Pointer to the state info panel observer. Not owned.
-		*/
-		MVRStateInfoObserver* iStateInfoPanelObserver;
-		
-		/**
-		* State of the CBA buttons. If EFalse LSK/RSK deliver ECmdNOP which
-		* causes no action.
-		*/
-		TBool iCBAEnabled;
-		
-	    /**
-	     * To judge whether the current drive is ready for recording
-	     */
-	    TBool iIsDriveReady;
-	};
-
-#endif // __CVRRECVIEWMODEL_H__
--- a/voicerecorder/RecViewSrc/CVRRemConObserver.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,185 +0,0 @@
-/*
-* Copyright (c) 2002 - 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:  Class that observer remote controller framework events
-*                and forwards them as key events to observe
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <w32std.h>
-#include <remconcoreapitarget.h>
-#include <remconinterfaceselector.h>
-#include <AknDef.h>
-#include <aknconsts.h>
-
-#include "MVRVolumeEventObserver.h"
-#include "CVRRemConObserver.h"
-
-
-// ============================ MEMBER FUNCTIONS ==============================
-
-// ----------------------------------------------------------------------------
-// CVRRemConObserver::CVRRemConObserver
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ----------------------------------------------------------------------------
-//
-CVRRemConObserver::CVRRemConObserver( MVRVolumeEventObserver* aObserver )
-	: iObserver( aObserver )
-    {
-    }
-
-// ----------------------------------------------------------------------------
-// CVRRemConObserver::ConstructL
-// Symbian 2nd phase constructor can leave.
-// ----------------------------------------------------------------------------
-//
-void CVRRemConObserver::ConstructL()
-    {
-    iInterfaceSelector = CRemConInterfaceSelector::NewL();
-    
-    iCoreTarget = CRemConCoreApiTarget::NewL( *iInterfaceSelector, *this );
-    
-    iInterfaceSelector->OpenTargetL();
-   
-    iVolumeRepeatTimer = CPeriodic::NewL( CActive::EPriorityHigh );       
-    }
-
-// ----------------------------------------------------------------------------
-// CVRRemConObserver::NewL
-// Two-phased constructor.
-// ----------------------------------------------------------------------------
-//
-CVRRemConObserver* CVRRemConObserver::NewL( MVRVolumeEventObserver* aObserver )
-    {
-    CVRRemConObserver* self = new( ELeave ) CVRRemConObserver( aObserver );
-    
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop();
-
-    return self;
-    }
-
-
-// ----------------------------------------------------------------------------
-// CVRRemConObserver::~CVRRemConObserver
-// Destructor
-// ----------------------------------------------------------------------------
-//    
-CVRRemConObserver::~CVRRemConObserver()
-    {
-    delete iInterfaceSelector; // it internally deletes iCoreTarget
-    
-    if( iVolumeRepeatTimer->IsActive() ) 
-        {
-        iVolumeRepeatTimer->Cancel(); 
-        }
-    delete iVolumeRepeatTimer;    
-    }
-
-
-// ----------------------------------------------------------------------------
-// CVRRemConObserver::MrccatoCommand
-// 
-// ----------------------------------------------------------------------------
-//  
-EXPORT_C void CVRRemConObserver::MrccatoCommand( 
-										TRemConCoreApiOperationId aOperationId, 
-										TRemConCoreApiButtonAction aButtonAct )
-	{
-	TKeyEvent myEvent;
-
-    if( iVolumeRepeatTimer->IsActive())  
-        {
-        iVolumeRepeatTimer->Cancel();
-        }	
-
-	switch( aOperationId )	
-		{
-		case ERemConCoreApiVolumeUp:
-			{
-			// Simulate a "right button event" for CAknVolumeControl
-			myEvent.iCode = EKeyRightArrow;
-			break;
-			}
-		case ERemConCoreApiVolumeDown:
-			{
-			// Simulate a "left button event" for CAknVolumeControl
-			myEvent.iCode = EKeyLeftArrow;
-			break;
-			}
-		default:
-			{
-			// Ignore other commands
-			return;
-			}
-		}
-
-	// Convert the remote control event to a button click and send it to 
-	// volume control
-	switch( aButtonAct )
-		{
-		case ERemConCoreApiButtonClick:
-			{
-			TRAP_IGNORE( iObserver->HandleVolumeChangeL( myEvent, 
-														 EEventKey ) );
-			break;
-			}
-		case ERemConCoreApiButtonPress:
-			{
-			// Start repeat
-            iVolumeChange = myEvent;
-            iVolumeRepeatTimer->Cancel();
-            iVolumeRepeatTimer->Start(
-                KAknStandardKeyboardRepeatRate,
-                KAknStandardKeyboardRepeatRate,
-                TCallBack( DoHandleVolumeRepeatL, this )  );
-			break;
-			}
-		case ERemConCoreApiButtonRelease:
-			{
-			iVolumeChange.iCode = 0;
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRRemConObserver::DoHandleVolumeRepeatL
-// 
-// ----------------------------------------------------------------------------
-//  
-TInt CVRRemConObserver::DoHandleVolumeRepeatL( TAny* aAny )
-    {
-  	// Repeat last keypress
-    CVRRemConObserver* self = reinterpret_cast< CVRRemConObserver* >( aAny );
-	if ( self->iObserver->HandleVolumeChangeL( self->iVolumeChange, EEventKey )
-		!= KErrNone )
-		{
-		self->iVolumeChange.iCode = 0;
-		self->iVolumeRepeatTimer->Cancel();
-		}
-    return KErrNone;
-    }
-    
-//  End of File  
--- a/voicerecorder/RecViewSrc/CVRRemConObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,106 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Class that observer remote controller framework events
-*                and forwards them as key events to observe
-*
-*/
-
-
-#ifndef __CVRREMCONOBSERVER_H
-#define __CVRREMCONOBSERVER_H
-
-//  INCLUDES
-#include <e32def.h>
-#include <remconcoreapitargetobserver.h>
-
-// FORWARD DECLARATIONS
-class MVRVolumeEventObserver;
-class CRemConInterfaceSelector;  
-class CRemConCoreApiTarget;
-
-// CLASS DECLARATION
-
-/**
-*  Class for monitoring side volume key events.
-*  Is also responsible for creating repeating keypresses if key is held down
-*
-*/
-NONSHARABLE_CLASS( CVRRemConObserver )
-	: public CBase,	public MRemConCoreApiTargetObserver
-    {
-    public:  // Constructors and destructor
-        
-        /**
-        * Two-phased constructor.
-        */
-        static CVRRemConObserver* NewL( MVRVolumeEventObserver* aObserver );
-        
-        /**
-        * Destructor.
-        */
-        virtual ~CVRRemConObserver();
-
-    protected: // Functions from base classes
-
-        /**
-        * @see MRemConCoreApiTargetObserver.
-        *
-        * A command has been received. 
-        * @param aOperationId The operation ID of the command.
-        * @param aButtonAct The button action associated with the command.
-        */
-        void MrccatoCommand( TRemConCoreApiOperationId aOperationId, 
-                             TRemConCoreApiButtonAction aButtonAct);
-
-    private:
-
-        /**
-        * C++ default constructor.
-        */
-        CVRRemConObserver( MVRVolumeEventObserver* aObserver );
-
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-        void ConstructL();
-        
-        /**
-        * Catch timer event. Volume command is repeated
-        @param aAny
-        */
-        static TInt DoHandleVolumeRepeatL( TAny* aAny );        
-
-    private:    // Data
-    	/** Observer to notify about a event. Not owned. **/
-		MVRVolumeEventObserver* iObserver;
-		
-		/** Remote Controller. Owned */
-        CRemConInterfaceSelector* iInterfaceSelector;  
-        
-        /** Remote Controller. Not owned. */
-        CRemConCoreApiTarget* iCoreTarget;
-
-        /** Timer for counting key press. Owned. */
-        CPeriodic *iVolumeRepeatTimer;
-         
-        /** Status of volume command */
-        TBool iRemConVolumeCommandOk;
-        
-        /** Volume change that is repeated */
-        TKeyEvent iVolumeChange;
-    };
-
-#endif      // CVRRemConObserver_H   
-            
-// End of File
--- a/voicerecorder/RecViewSrc/CVRStateInfoPanel.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,521 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     A compound control class. It is responsible for drawing and updating
-*     a set of labels, and a progress bar.
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <AknUtils.h>
-#include <AknsUtils.h>
-#include <eikprogi.h>
-#include <aknenv.h>
-#include <applayout.cdl.h>
-#include <aknview.h>
-#include <aknViewAppUi.h>
-#include <AknDef.h>
-#include <AknsConstants.h>
-#include <aknlayoutscalable_apps.cdl.h>
-
-#include "CVRLabel.h"
-#include "CVRStateInfoPanel.h"
-#include "MVRStateInfoModel.h"
-#include "voicerecorder.hrh"
-#include "VRConsts.h"
-
-// CONSTANTS
-const TInt KVRLabelMap[] =
-	{
-	CVRStateInfoPanel::ELabelName,
-	CVRStateInfoPanel::ELabelDate,
-	CVRStateInfoPanel::ELabelQuality,
-	CVRStateInfoPanel::ELabelStatus,
-	CVRStateInfoPanel::ELabelMax,
-	CVRStateInfoPanel::ELabelMin,
-	CVRStateInfoPanel::ELabelQualityText
-	};
-	
-_LIT( KVREmptyLabel, " " );
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::CVRStateInfoPanel
-// 
-// ----------------------------------------------------------------------------
-//		
-CVRStateInfoPanel::CVRStateInfoPanel( MVRStateInfoModel* aModel )
-	: iModel( aModel ), iLabels( ENumLabels ), iPBposition( 0 )
-	{
-	if ( iModel )
-		{
-		iModel->SetStateInfoObserver( this );
-		}
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::CVRStateInfoPanel
-// 
-// ----------------------------------------------------------------------------
-//		
-CVRStateInfoPanel::CVRStateInfoPanel( MVRStateInfoModel* aModel,
-                               				TUid aParentViewUid )
-	: iModel( aModel ), 
-	iLabels( ENumLabels ),
-	iParentViewUid( aParentViewUid ), 
-	iPBposition( 0 )
-	{
-	if ( iModel )
-		{
-		iModel->SetStateInfoObserver( this );
-		iModel->SetStateInfoPanelObserver( this );
-		}
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::~CVRStateInfoPanel
-// 
-// ----------------------------------------------------------------------------
-//			
-CVRStateInfoPanel::~CVRStateInfoPanel()
-	{
-	if ( iModel )
-		{
-		iModel->SetStateInfoObserver( NULL );
-		}
-	iLabels.ResetAndDestroy();
-	delete iProgressBar;
-	iSkin = NULL;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::ConstructL
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::ConstructL()
-	{
-	// New skin instance is loaded
-	iSkin = AknsUtils::SkinInstance();
-	
-	// Create labels
-	for ( TInt i = 0; i < ENumLabels; i++ )
-		{
-		CVRLabel* label = CVRLabel::NewLC( *this );
-
-		// Set the MOP-parent so that the labels can get the 
-		// skin context from rec view container
-		label->SetMopParent( this );
-		iLabels.AppendL( label );
-		CleanupStack::Pop(); // label;
-
-		// Set initial text for label
-		TBuf< VRLABELMAXLENGTH > str;
-		iModel->GetLabel( str, i );
-		label->SetText( str );
-		}
-
-	CreateProgressBarL();
-	UpdateLayoutL();
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::CreateProgressBarL
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::CreateProgressBarL()
-	{
-	delete iProgressBar;
-	iProgressBar = NULL;
-
-	// Create progress bar
-	CEikProgressInfo::SInfo info = ProgressInfo();
-
-	iProgressBar = new( ELeave ) CEikProgressInfo( info );
-	iProgressBar->SetContainerWindowL( *this );
-	
-	// Set the MOP-parent so that the progress bar can get the 
-	// skin context from rec view container
-	iProgressBar->SetMopParent( this );
-	iProgressBar->ConstructL();
-
-	iProgressBar->ActivateL();
-	AknLayoutUtils::LayoutControl( iProgressBar, Rect(),
-		AppLayout::Voice_Recorder_elements_Line_4() );
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::SizeChanged
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::SizeChanged()
-    {
-    TAknTextComponentLayout layoutText;
-    
-    for ( TInt i = 0; i < ENumLabels; i++ )
-        {
-        switch ( KVRLabelMap[i] )
-            {
-            case 0: 
-                layoutText = AknLayoutScalable_Apps::vorec_t1();
-                break;
-            case 1:
-                layoutText = AknLayoutScalable_Apps::vorec_t2();
-                break;
-            case 2: 
-                layoutText = AknLayoutScalable_Apps::vorec_t3();
-                break;
-            case 3:
-                layoutText = AknLayoutScalable_Apps::vorec_t4();
-                break;
-            case 4: 
-                layoutText = AknLayoutScalable_Apps::vorec_t5();
-                break;
-            case 5:
-                layoutText = AknLayoutScalable_Apps::vorec_t6();
-                break;
-            case 6:
-                layoutText = AknLayoutScalable_Apps::vorec_t7();
-                break;          
-            }
-        AknLayoutUtils::LayoutLabel( iLabels.At( i ), Rect(), layoutText.LayoutLine() );
-        
-        CCoeControl* label( iLabels.At( i ) );
-        TRgb color( KRgbBlack );
-        AknsUtils::GetCachedColor( iSkin, color, KAknsIIDQsnTextColors,
-        		EAknsCIQsnTextColorsCG6 );
-        // We can ignore the error, it only means we will have wrong color
-        TRAP_IGNORE( AknLayoutUtils::OverrideControlColorL( *label,
-        		EColorLabelText, color ) );
-        }
-    
-    // There's nothing rational to do here if it leaves
-    TRAP_IGNORE( CreateProgressBarL() );
-    }
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::Draw
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::Draw( const TRect& /*aRect*/ ) const
-	{
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::CountComponentControls
-// 
-// ----------------------------------------------------------------------------
-//		
-TInt CVRStateInfoPanel::CountComponentControls() const
-	{
-	TInt componentCount( 0 );
-	if ( iProgressBar )
-		{
-		componentCount = ENumLabels + 1;  // +1 means iProgressBar
-		}
-	return componentCount;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::ComponentControl
-// 
-// ----------------------------------------------------------------------------
-//		
-CCoeControl* CVRStateInfoPanel::ComponentControl( TInt aIndex ) const
-	{
-	if ( aIndex < ENumLabels )
-		{
-		return iLabels.At( aIndex );
-		}
-	else
-		{
-		return iProgressBar;
-		}
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::Update
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::Update( TVRUpdateCommand /*aCommand*/ )
-	{
-	for ( TInt i = 0; i < ENumLabels; i++ )
-		{
-		TBuf< VRLABELMAXLENGTH > str;
-		iModel->GetLabel( str, i );
-		if ( str.Length() < 1 )
-			{
-			// "" doesn't empty the label, so use space
-			str = KVREmptyLabel;
-			}
-		iLabels.At( i )->SetTextAndDraw( str );
-		}
-	
-	UpdateProgressBar();
-	
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::UpdateLayoutL
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::UpdateLayoutL()
-	{
-	SizeChanged();
-	}
-
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::ProgressInfo
-// 
-// ----------------------------------------------------------------------------
-//		
-CEikProgressInfo::SInfo CVRStateInfoPanel::ProgressInfo()
-	{
-	CEikProgressInfo::SInfo info;
-
-	TAknWindowLineLayout infobarLayout =
-		AppLayout::Voice_Recorder_elements_Line_4();
-    TAknLayoutRect infobarRect;
-    infobarRect.LayoutRect( Rect(), infobarLayout );	
-  
-    info.iWidth = infobarRect.Rect().Width();
-	info.iHeight = infobarRect.Rect().Height();
-
-	return info;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::HandleResourceChangeL
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::HandleResourceChangeL( TInt aType )
-	{
-    if ( aType == KEikDynamicLayoutVariantSwitch )
-        {
-		UpdateLayoutL();
-        }
-	else if ( aType == KAknsMessageSkinChange )
-		{
-		// New skin instance is loaded
-		iSkin = AknsUtils::SkinInstance();
-		}
-	
-	for ( TInt i = 0; i < ENumLabels; i++ )
-		{
-		if ( i < iLabels.Count() )
-			{
-			iLabels.At( i )->HandleResourceChange( aType );	
-			}
-		}
-		
-	iProgressBar->HandleResourceChange( aType );
-	UpdateProgressBar();
-	
-	CCoeControl::HandleResourceChange( aType );
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::UpdateProgressBar
-// 
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::UpdateProgressBar()
-	{
-	
-	if ( iProgressBar )
-		{
-		if ( iModel->HasProgressBar() )
-			{
-			iProgressBar->SetFinalValue( I64INT( iModel->Duration().Int64() /
-										 KVRSecondAsMicroSeconds ) );
-			iProgressBar->SetAndDraw( I64INT( iModel->Position().Int64() /
-									  KVRSecondAsMicroSeconds ) );
-			iProgressBar->MakeVisible( ETrue );
-			
-			iPBposition = I64INT( iModel->Position().Int64() /
-									  KVRSecondAsMicroSeconds );
-			}
-		else
-			{
-			iProgressBar->MakeVisible( EFalse );
-			}
-		}
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::HandlePointerEventL
-// From CCoeControl
-// ----------------------------------------------------------------------------
-//		
-void CVRStateInfoPanel::HandlePointerEventL( const TPointerEvent& 
-													aPointerEvent )
-	{
-	if( AknLayoutUtils::PenEnabled() && iModel->HasProgressBar() && 
-		iProgressBar )
-		{
-		CCoeControl::HandlePointerEventL( aPointerEvent );
-		
-		switch( aPointerEvent.iType )
-			{
-			case TPointerEvent::EButton1Down:
-				{
-				TRect progressBarRect( iProgressBar->Rect() );
-				// Check if pressed position is in progress bar's rect
-				if( progressBarRect.Contains( aPointerEvent.iPosition ) )
-					{
-					HandleProgressBarTouchL( progressBarRect, 
-											 aPointerEvent.iPosition.iX );
-					}
-				break;
-				}
-			case TPointerEvent::EDrag:
-				{
-				TRect progressBarRect( iProgressBar->Rect() );
-				if( progressBarRect.Contains( aPointerEvent.iPosition ) )
-					{
-					HandleProgressBarTouchL( progressBarRect, 
-											 aPointerEvent.iPosition.iX );
-					}
-				break;		
-				}
-			case TPointerEvent::EButton1Up:
-				{		
-				break;
-				}		
-			default:
-				{
-				break;	
-				}	
-			}
-		}
-	}
-
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::HandleProgressBarTouchL
-// 
-// ----------------------------------------------------------------------------
-//	
-void CVRStateInfoPanel::HandleProgressBarTouchL( TRect aPBRect, 
-												 TInt aPressedPoint )
-	{
-	if ( AknLayoutUtils::PenEnabled() )
-		{
-#ifdef _DEBUG
-		RDebug::Print( _L( "VoiceRecorder: HandleProgressBarTouchL enter" ) );
-#endif
-		// Progress Bar start and end points
-		TInt pbEndPoint( aPBRect.iBr.iX );
-		TInt pbStartPoint( aPBRect.iTl.iX );
-		
-		TInt totalPBLength( pbEndPoint - pbStartPoint );
-		// calculate what is the time position that was pressed in 
-		// the progress bar
-		TTimeIntervalMicroSeconds newPosition( 
-										( ( aPressedPoint - pbStartPoint ) * 
-							  			iModel->Duration().Int64() ) / 
-							  			totalPBLength );
-							  			
-		// Round the position to the nearest second value
-		TInt roundedNewPosition( RoundMicroSecsToSecs( newPosition ) );
-
-		// Performace issue. Send command only if value has changed
-		if ( roundedNewPosition != iPBposition )
-			{
-			iPBposition = roundedNewPosition;
-
-			CAknViewAppUi* appUi = reinterpret_cast< CAknViewAppUi* >(
-											CEikonEnv::Static()->EikAppUi() );
-			CAknView* view = appUi->View( iParentViewUid );
-			
-			// inform the view that position has changed.
-			view->HandleCommandL( ECmdSetNewPosition );	
-			}	
-#ifdef _DEBUG
-		RDebug::Print( _L( "VoiceRecorder: HandleProgressBarTouchL exit" ) );
-#endif
-			
-		} // PenEnabled
-		
-	}
-	
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::RoundMicroSecsToSecs
-// Rounds aMicroSecs value to nearest second value (Round)
-// ----------------------------------------------------------------------------
-//			
-TInt CVRStateInfoPanel::RoundMicroSecsToSecs( TTimeIntervalMicroSeconds 
-											  aMicroSecs )
-	{	
-	// Rounds to secondss resolution (Floor)
-	Int64 secondsInMicroSecs( ( ( aMicroSecs.Int64() / 
-								  KVRSecondAsMicroSeconds ) * 
-								  KVRSecondAsMicroSeconds ) );
-								  
-	// takes the leftover part in seconds resolution
-	Int64 leftoversInMicroSecs ( aMicroSecs.Int64() - secondsInMicroSecs );
-	
-	// Nearer to upper sec value
-	if ( leftoversInMicroSecs / ( KVRSecondAsMilliSeconds ) > 
-		 KVRHalfSecondAsMilliSeconds )
-		{
-		// + 1 sec
-		return ( ( secondsInMicroSecs + KVRSecondAsMicroSeconds ) / 
-													 KVRSecondAsMicroSeconds );
-		}
-	// Nearer to lower sec value	
-	else
-		{
-		return secondsInMicroSecs / KVRSecondAsMicroSeconds;
-		}	
-	}
-	
-
-// ----------------------------------------------------------------------------
-// CVRStateInfoPanel::ProgressBarPosition
-// Just returns the current progress bar position
-// ----------------------------------------------------------------------------
-//		
-TInt CVRStateInfoPanel::ProgressBarPosition() const
-	{
-	return iPBposition;
-	}
-	
-// End of file
--- a/voicerecorder/RecViewSrc/CVRStateInfoPanel.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,208 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     A compound control class. It is responsible for drawing and updating
-*     a set of labels, and a progress bar.
-*
-*/
-
-
-#ifndef __CVRSTATEINFOPANEL_H__
-#define __CVRSTATEINFOPANEL_H__
-
-// INCLUDES
-#include <coecntrl.h>
-#include <eikprogi.h>
-#include <AknUtils.h>
-
-#include "MVRObserver.h"
-#include "MVRStateInfoObserver.h"
-
-// FORWARD DECLARATIONS
-class CEikProgressInfo;
-class CVRLabel;
-class MVRStateInfoModel;
-
-
-// CLASS DEFINITION
-/**
-* A compound control class. It is responsible for drawing and updating
-* a set of labels, and a progress bar.
-*/
-NONSHARABLE_CLASS( CVRStateInfoPanel )
-	: public CCoeControl, public MVRObserver, public MVRStateInfoObserver
-	{
-	public: // data types
-	    enum TVRLabels
-	        {
-	        ELabelName = 0,
-	        ELabelDate,
-	        ELabelQuality,
-	        ELabelMin,
-	        ELabelMax,
-	        ELabelStatus,
-	        ELabelQualityText
-	        };
-	
-	public: // constructors and destructor
-
-		/**
-		* Constructor.
-		* @param aModel Pointer to the state info model.
-		* Ownership is not transferred.
-		*/
-		CVRStateInfoPanel( MVRStateInfoModel* aModel );
-		
-		/**
-		* Constructor.
-		* @param aModel Pointer to the state info model.
-		* @param aParentViewUid Uid of CVRRecView for fast swap
-		* Ownership is not transferred.
-		*/
-		CVRStateInfoPanel( MVRStateInfoModel* aModel,
-						   TUid aParentViewUid );
-		/**
-		* Destructor
-		*/
-		virtual ~CVRStateInfoPanel();
-
-		/**
-		* 2nd phase constructor.
-		*/
-		void ConstructL();
-
-	private: // constructors
-
-		/**
-		* Default constructor. Not implemented.
-		*/
-		CVRStateInfoPanel();
-
-	public:
-		/**
-		* Handles a change to the application's resources
-		* @param aType The type of changed resource
-		*/		
-		void HandleResourceChangeL( TInt aType );
-
-	public: // from CCoeControl
-
-		/*
-		* From CCoeControl
-		* @see CCoeControl
-		*/
-		void SizeChanged();
-
-		/**
-		* Called by the framework to get the number of sub-components
-		* contained in this component. 
-		* @return The number of component controls contained by this control
-		*/
-		TInt CountComponentControls() const;
-
-		/**
-		* Called by the framework to get a specified sub-component
-		* of this component.
-		* @param aIndex The index of the component to get.
-		* @return The component control with an index of aIndex.
-		*/
-		CCoeControl* ComponentControl( TInt aIndex ) const;
-		
-		/**
-		* Gets called whenever a pointer event occurs.
-		* @param aPointerEvent The pointer event to handle.
-		*/					
-		void HandlePointerEventL( const TPointerEvent& aPointerEvent );
-	
-	private: // From CCoeControl
-
-		void Draw( const TRect& aRect ) const;
-		
-	public: // from MVRObserver
-
-		/**
-		* Called to notify a change in the observed subject's state.
-		*/
-		void Update( TVRUpdateCommand aCommand );
-		
-	public: // from MVRStateInfoObserver	
-		
-		/**
-		* Returns the current progress bar position value
-		* @return Position value
-		*/
-		TInt ProgressBarPosition() const;
-		
-	private: // Helpers
-
-		CEikProgressInfo::SInfo ProgressInfo();
-
-		void UpdateLayoutL();
-
-		void CreateProgressBarL();
-		
-		/**
-        * Updates the progress bar 
-        */
-		void UpdateProgressBar();
-		
-		/**
-		* Handles progress bar touch events
-		* @param aPBRect Current progress bar rectangle 
-		* @param aPressedPoint The x coordinate value that was pressed
-		* 			inside the progress bar
-		*/
-		void HandleProgressBarTouchL( TRect aPBRect, TInt aPressedPoint );
-		
-		/**
-		* Rounds the parameter value to nearest second value
-		* @param aMicroSecs Time value in microseconds
-		* @return Rounded value in seconds
-		*/
-		TInt RoundMicroSecsToSecs( TTimeIntervalMicroSeconds aMicroSecs );
-
-
-	private: // Data
-
-		/**
-		* Pointer to the button panel model. Not owned.
-		*/
-		MVRStateInfoModel* iModel;
-
-		/**
-		* Pointer to an array of labels. Owned.
-		*/
-		CArrayPtrSeg< CVRLabel > iLabels;
-
-		/**
-		* Pointer to a progress bar control. Owned.
-		*/
-		CEikProgressInfo* iProgressBar;
-		
-		/**
-		* Uid of the parent view
-		*/
-		TUid iParentViewUid;
-		
-		/**
-		* Current progress bar position
-		*/
-		TInt iPBposition;
-		
-		// Skin instance. Not owned.
-		MAknsSkinInstance* iSkin;
-
-	};
-
-#endif // __CVRSTATEINFOPANEL_H__
--- a/voicerecorder/RecViewSrc/CVRSystemEventHandler.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,155 +0,0 @@
-/*
-* Copyright (c) 2005 - 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:  An active object class that is used to receive
-*  phone call related events from Publish&Subscribe and forward them
-*  to an MVRSystemEventObserver instance.
-*  Has to be attached to certain P&S -key, so it means having multiple
-*  
-*
-*
-*/
-
-
-// INCLUDE FILES
-#include <e32base.h>
-
-#include "CVRSystemEventHandler.h"
-#include "MVRSystemEventObserver.h"
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::CVRSystemEventHandler
-// 
-// ---------------------------------------------------------------------------
-//
-CVRSystemEventHandler::CVRSystemEventHandler() : CActive( EPriorityLow )
-    {
-	CActiveScheduler::Add( this );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSystemEventHandler::ConstructL()
-    {
-	
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::NewL
-// 
-// ---------------------------------------------------------------------------
-//
-// Two-phased constructor.
-CVRSystemEventHandler* CVRSystemEventHandler::NewL()
-    {
-    CVRSystemEventHandler* self = new (ELeave) CVRSystemEventHandler;
-
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop();
-
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::~CVRSystemEventHandler
-// 
-// ---------------------------------------------------------------------------
-//
-// Destructor
-CVRSystemEventHandler::~CVRSystemEventHandler()
-    {
-	Cancel();
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::IssueRequest
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSystemEventHandler::IssueRequest()
-	{
-	SetActive();
-	iProperty.Subscribe( iStatus );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::RunL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSystemEventHandler::RunL()
-	{
-	// Event received
-
-	if ( iStatus != KErrCancel )
-		{
-		// Request a new event
-		IssueRequest();
-		// Notify the observer
-		iObserver->HandleSystemEventL();
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::Listen
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSystemEventHandler::Listen( TUid aUid, 
-									TUint aKey, 
-									MVRSystemEventObserver* aObserver )
-	{
-	iProperty.Attach( aUid, aKey );
-	
-	iObserver = aObserver;
-	IssueRequest();
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::DoCancel
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRSystemEventHandler::DoCancel()
-	{
-	iProperty.Cancel();	
-	}
-
-
-// ---------------------------------------------------------------------------
-// CVRSystemEventHandler::StateL
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CVRSystemEventHandler::StateL( TUid aUid, TUint aKey )
-	{
-	TInt value;
-	User::LeaveIfError( RProperty::Get( aUid, aKey, value ) );
-	return value;
-	}
-	
-//  End of File
--- a/voicerecorder/RecViewSrc/CVRSystemEventHandler.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,116 +0,0 @@
-/*
-* Copyright (c) 2002-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:  An active object class that is used to receive
-*  phone call related events from PS API and forward them
-*  to an MVRSystemEventObserver instance.
-*
-*
-*/
-
-
-
-#ifndef __CVRSYSTEMEVENTHANDLER_H
-#define __CVRSYSTEMEVENTHANDLER_H
-
-// INCLUDES
-#include <e32base.h>
-#include <e32property.h>
-
-// FORWARD DECLARATIONS
-class MVRSystemEventObserver;
-
-// CLASS DECLARATION
-
-/**
-*  An active object class that is used to receive
-*  phone call related events from RSystemAgent and forward them
-*  to an MVRSystemEventObserver instance.
-*/
-NONSHARABLE_CLASS( CVRSystemEventHandler ): public CActive
-    {
-    public:  // Constructors and destructor
-
-        /**
-        * Two-phased constructor.
-		* @return A pointer to fully constructed instance of CVRSystemEventHandler
-        */
-        static CVRSystemEventHandler* NewL();
-
-        /**
-        * Destructor.
-        */
-        virtual ~CVRSystemEventHandler();
-
-    public: // New functions
-		/**
-		* Get the current state of any pubsub key
-		* @param aUid The UID of the PS category
-		* @param aKey The id identifying the PS key
-		* @return The value of the state variable
-		*/
-		TInt StateL( TUid aUid, TUint aKey );
-
-		/**
-		* Start listening to system events
-		* @param aUid The UID identifying the system agent's state variable
-		* @param aObserver The observer who will be notified of events
-		*/
-		void Listen( TUid aUid, TUint aKey, MVRSystemEventObserver* aObserver );
-
-    public: // from CActive
-
-		/**
-		* When this method is called, an event has been received.
-		* Notify the observer.
-		*/
-        void RunL();
-
-		/**
-		* Cancel the request for event notifications.
-		*/
-		void DoCancel();
-
-    private:
-
-		/**
-		* Ask system agent to notify us about events
-		*/
-		void IssueRequest();
-
-        /**
-        * Default constructor.
-        */
-        CVRSystemEventHandler();
-
-        /**
-        * 2nd phase constructor.
-        */
-        void ConstructL();
-
-    private:    // Data
-
-		/**
-		* For observing the system events
-		*/
-		RProperty iProperty;
-
-        /**
-        * Pointer to the observer. Not owned.
-        */
-		MVRSystemEventObserver* iObserver;
-    };
-
-#endif      // __CVRSYSTEMEVENTHANDLER_H
-
-// End of File
--- a/voicerecorder/RecViewSrc/CVRTonePlayer.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,254 +0,0 @@
-/*
-* Copyright (c) 2005 - 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:  Class that handles playback of tones in VoiceRec application
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <avkon.hrh>
-#include <aknappui.h>
-#include <AudioPreference.h>
-#include <aknsoundsystem.h>
-#include <aknSoundinfo.h>
-
-#include "CVRTonePlayer.h"
-
-
-// ============================ MEMBER FUNCTIONS =============================
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::CVRTonePlayer
-// 
-// ---------------------------------------------------------------------------
-//
-CVRTonePlayer::CVRTonePlayer()
-	: iState( EVRToneIdle )
-    {
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::ConstructL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRTonePlayer::ConstructL()
-    {
-    iPlayer = CMdaAudioToneUtility::NewL( *this );
-    
-    iSoundSystem = ( static_cast< CAknAppUi* >(
-						CEikonEnv::Static()->EikAppUi() )->KeySounds() );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::NewL
-// 
-// ---------------------------------------------------------------------------
-//
-CVRTonePlayer* CVRTonePlayer::NewL()
-    {
-    CVRTonePlayer* self = new ( ELeave ) CVRTonePlayer;
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::~CVRTonePlayer
-// 
-// ---------------------------------------------------------------------------
-//
-CVRTonePlayer::~CVRTonePlayer()
-    {
-    if ( iPlayer )
-        {
-        switch ( iPlayer->State() )
-            {
-            case EMdaAudioToneUtilityNotReady:
-                {
-                iPlayer->CancelPrepare();
-                break;
-                }
-            case EMdaAudioToneUtilityPlaying:
-                {
-                iPlayer->CancelPlay();
-                break;
-                }           
-            }
-        }
-    delete iPlayer;
-    
-    // if tone play is not finished before, finish waitloop
-    if ( iShedulerWait.IsStarted() )
-		{
-		iShedulerWait.AsyncStop();
-		}		
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::PrepareToneL
-// Starts preparing the specified tone, preparing completes with call-back to
-// MatoPrepareComplete
-// ---------------------------------------------------------------------------
-//
-void CVRTonePlayer::PrepareToneL( TInt aToneId )
-    {
-	if ( iState != EVRToneIdle )
-		{
-		iQueuedTone = aToneId;
-		return;
-		}
-
-	// Retrieve the tone
-	CAknSoundInfo* info = CAknSoundInfo::NewL();
-	CleanupStack::PushL( info );
-	User::LeaveIfError( iSoundSystem->RequestSoundInfoL(
-					                  aToneId, *info ) );
-    
-    iPreparedTone = aToneId;
-    iState = EVRTonePreparing;
-    
-    iPlayer->PrepareToPlayDesSequence( *info->iSequence );
-    CleanupStack::PopAndDestroy( info );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::PrepareTone
-// Non-leaving version of PrepareToneL
-// ---------------------------------------------------------------------------
-//
-void CVRTonePlayer::PrepareTone( TInt aToneId )
-    {
-    TRAP_IGNORE( PrepareToneL( aToneId ) );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::PlayTone
-// Starts playback of specified tone. Completes with call-back to
-// MatoPlayComplete
-// ---------------------------------------------------------------------------
-//
-void CVRTonePlayer::PlayTone( TInt aToneId )
-    {
-    if ( iState != EVRToneIdle || iPreparedTone != aToneId || 
-        iPlayer->State() == EMdaAudioToneUtilityPlaying )
-    	{
-    	// Preparing an unprepared tone synchronously is not supported,
-    	// tone playback is skipped
-    	return;
-    	}
-    
-    // Preferences need to be set according to tone
-    switch( aToneId )
-    	{
-    	case EAvkonSIDVoiceRecordingStartTone:
-    		{
-    		iPlayer->SetPriority( KAudioPriorityRecording,
-    			TMdaPriorityPreference( KAudioPrefVoiceRecStart ) );
-			break;	    		
-    		}    
-    	case EAvkonSIDVoiceRecordingStopTone:
-    		{
-    		iPlayer->SetPriority( KAudioPriorityRecording,
-    			TMdaPriorityPreference( KAudioPrefVoiceRecStop ) );    		
-			break;    	    		    			
-    		}
-    	default:
-    		{
-    		break;
-    		}
-		}
- 
-    iState = EVRTonePlaying;
-    
-    iPlayer->Play();
-    
-    // Do not continue until start tone play is finished
-    if( aToneId == EAvkonSIDVoiceRecordingStartTone )
-	    {
-#ifdef _DEBUG
-	    RDebug::Print( _L("VoiceRecorder: Waiting for Start tone play complete") );
-#endif	
-	    iShedulerWait.Start();
-	    }
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::MatoPrepareComplete
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRTonePlayer::MatoPrepareComplete(TInt aError)
-	{
-	if ( aError )
-		{
-		iPreparedTone = 0;
-		}
-
-	iState = EVRToneIdle;
-
-	// Prepare the next tone in queue
-	if ( iQueuedTone )
-		{
-		TRAP_IGNORE( PrepareToneL( iQueuedTone ) );
-		iQueuedTone = 0;
-		}
-	}
-	
-
-
-// ---------------------------------------------------------------------------
-// CVRTonePlayer::MatoPlayComplete
-// 
-// ---------------------------------------------------------------------------
-//
-#ifdef _DEBUG
-void CVRTonePlayer::MatoPlayComplete(TInt aError )
-    {
-	RDebug::Print( _L("VoiceRecorder: Tone %d played, error %d"), 
-			iPreparedTone, aError );
-#else
-void CVRTonePlayer::MatoPlayComplete(TInt /*aError*/ )
-    {
-#endif    	
-
-	iState = EVRToneIdle;
-
-	// Prepare the next tone in queue
-	if ( iQueuedTone )
-		{
-		TRAP_IGNORE( PrepareToneL( iQueuedTone ) );
-		iQueuedTone = 0;
-		}
-	
-	// Started only for start-tone	
-	if ( iShedulerWait.IsStarted() )
-		{
-#ifdef _DEBUG
-	    RDebug::Print( _L("VoiceRecorder: Start tone play completed -> Recording started") );
-#endif		
-		// Start tone played -> Recording can be started
-		iShedulerWait.AsyncStop();
-		}	
-			
-	}	
--- a/voicerecorder/RecViewSrc/CVRTonePlayer.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,144 +0,0 @@
-/*
-* Copyright (c) 2005-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:  Class that handles playback of tones in Voice Recorder application
-*
-*/
-
-
-#ifndef CVRTONEPLAYER_H
-#define CVRTONEPLAYER_H
-
-// INCLUDES
-#include <mdaaudiotoneplayer.h>
-
-// FORWARD DECLARATIONS
-class CAknKeySoundSystem;
-class CAknSoundInfo;
-
-/**
- *  Class that handles playback of tones in Voice Recorder application
- *
- *  @lib VoiceRecorderRecView.lib
- *  @since S60 v3.0
- */
-NONSHARABLE_CLASS( CVRTonePlayer )
-	: public CBase, public MMdaAudioToneObserver
-    {
-
-private:
-	enum TVRTonePlayerState
-		{
-		EVRToneIdle,
-		EVRTonePreparing,
-		EVRTonePlaying
-		};
-
-public:
-
-    static CVRTonePlayer* NewL();
-    virtual ~CVRTonePlayer();
-
-    /**
-     * Prepares a tone for playback. This does not guarantee
-     * that preparing is ready after completion.
-     *
-     * @since S60 v3.0
-     * @param aToneId Predefined id of the tone to be prepared
-     */
-    void PrepareToneL( TInt aToneId );
-
-    /**
-     * Non-leaving method that calls PrepareToneL and ignores all leaves
-     *
-     * @since S60 v3.0
-     * @param aToneId Predefined id of the tone to be prepared
-     */
-    void PrepareTone( TInt aToneId );
-
-    /**
-     * Starts playback of tone. Playback starts immediately if the tone
-     * specified has been already been prepared. Otherwise the tone
-     * is first prepared.
-     *
-     * @since S60 v3.0
-     * @param aToneId Predefined id of the tone to be played
-     */
-    void PlayTone( TInt aToneId );
-
-// from base class MMdaAudioToneObserver
-
-    /**
-     * From MMdaAudioToneObserver.
-     * Defines required client behaviour when an attempt to configure the
-	 * audio tone player utility has completed, successfully or otherwise.
-     *
-	 * @param     aError KErrNone if successful. One of the system
-	 *            wide error codes if the attempt failed. The possible
-	 *            values depend on the EPOC platform.
-     */
-    void MatoPrepareComplete(TInt aError);
-
-    /**
-     * From MMdaAudioToneObserver.
-	 * Defines required client behaviour when the tone playing operation has
-	 * completed, successfully or otherwise.
-     *
-	 * @param     aError KErrNone if successful. One of the system
-	 *            wide error codes if the attempt failed. The possible
-	 *            values depend on the EPOC platform.
-     */
-    void MatoPlayComplete(TInt aError);
-
-private:
-
-    CVRTonePlayer();
-    void ConstructL();
-
-private: // data
-
-    /**
-     * Instance of the player class.
-     * Own.
-     */
-     CMdaAudioToneUtility* iPlayer;
-
-	/**
-	 * Pointer to sound system utility that retrieves the sound data.
-	 * Not owned.
-	 */
-	 CAknKeySoundSystem* iSoundSystem;
-
-	/**
-	 * The id of the tone that is currently prepared
-	 */
-	 TInt iPreparedTone;
-
-	/**
-	 * The id of the tone that is in queue
-	 */
-	 TInt iQueuedTone;	
-	 
-	/**	
-	 * Is a tone currently in preparation
-	 */
-	 TVRTonePlayerState iState;
-	 
-	 /**
-	 * Used for waiting tone play comlete until continuing
-	 */
-	 CActiveSchedulerWait iShedulerWait;
-    
-    };
-
-#endif // CVRTONEPLAYER_H
--- a/voicerecorder/RecViewSrc/DllMain.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*      Dll entry point
-*
-*
-*/
-
-
-#include <e32base.h>
-
--- a/voicerecorder/RecViewSrc/MVRButtonPanelModel.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class defines the data model interface for CVRButtonPanel.
-*
-*/
-
-
-#ifndef __MVRBUTTONPANELMODEL_H__
-#define __MVRBUTTONPANELMODEL_H__
-
-// INCLUDES
-#include <e32def.h>
-
-// FORWARD DECLARATIONS
-class MVRObserver;
-
-// CLASS DEFINITION
-/**
-* This class defines the data model interface for CVRButtonPanel.
-*/
-class MVRButtonPanelModel 
-	{
-	public: // new methods
-
-		/**
-		* Returns the number of buttons.
-		* @return number of buttons (>=0)
-		*/
-		virtual TInt ButtonCount() const = 0;
-		
-		/**
-		* Returns the state of a specific button.
-		* @param aButtonId Button identifier
-		* @return ENormal or EDimmed
-		*/
-		virtual TInt ButtonState( TInt aButtonId ) const = 0;
-		
-		/**
-		* Returns the command id of a specific button.
-		* @param aButtonId Button identifier
-		* @return One of TVRCommands
-		*/
-		virtual TInt CommandId( TInt aButtonId ) const = 0;
-				
-		/**
-		* Returns the id of the button that should have initial focus.
-		* @return Button identifier
-		*/
-		virtual TInt InitialFocusButtonId() const = 0;
-		
-		/**
-		* Registers an observer for receiving
-		* update notifications from this interface.
-		* @param aObserver The observer object.
-		*/
-		virtual void SetButtonPanelObserver( MVRObserver* aObserver ) = 0;
-		
-		/**
-		* Checks if button panel model needs to reset the focus
-		* for example after a state change
-		* @return Is reset needed
-		*/
-		virtual TBool ResetNeeded() = 0;
-		
-		/**
-		* Returns an ID of the current visual state.
-		* @returns Visual state Id.
-		*/
-		virtual TUint VisualStateId() const = 0; 		
-		
-		/**
-		* Checks if model is in a state where it can take and handle
-		* new commands
-		* @return Can model handle new commands
-		*/
-		virtual TBool CanHandleCommands() const = 0;		
-		
-	};
-
-#endif // __MVRBUTTONPANELMODEL_H__
--- a/voicerecorder/RecViewSrc/MVRDecoratorModel.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,80 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class defines the data model interface for CVRViewContainer.
-*
-*/
-
-
-#ifndef __MVRDECORATORMODEL_H__
-#define __MVRDECORATORMODEL_H__
-
-// INCLUDES
-#include <e32def.h>
-#include <bldvariant.hrh>
-
-// FORWARD DECLARATIONS
-class MVRObserver;
-class TCoeHelpContext;
-
-// ENUMERATIONS
-enum TVRVolumeControlState{ EDisabled, EIhf, EEarPiece };
-
-// CLASS DEFINITION
-/**
-* This class defines the data model interface for CVRViewContainer.
-*/
-class MVRDecoratorModel
-	{
-	public: // new methods
-
-		/**
-		* Returns the resource id for current softkeys
-		* @return Softkey resource identifier
-		*/
-		virtual TInt CbaResourceId() const = 0;
-
-		/**
-		* Returns the resource id for current menu bar
-		* @return Menu bar resource identifier.
-		*/
-		virtual TInt MenuBarResourceId() const = 0;
-
-		/**
-		* Used to get the state of the volume control component.
-		*/
-		virtual void GetVolumeControlState( TVRVolumeControlState& aState,
-											TInt& aVolume ) = 0;
-		/**
-		* Specifies the current help context.
-		* @param aContext the context IDs are placed here
-		*/
-		virtual void GetHelpContext( TCoeHelpContext& aContext ) const = 0;
-
-		/**
-		* Registers an observer for receiving
-		* update notifications from this interface.
-		* @param aObserver The observer object.
-		*/
-		virtual void SetDecoratorObserver( MVRObserver* aObserver ) = 0;
-		
-		/**
-		* Tells in return value if CBA Buttons should be enabled or not
-		* @return ETrue if buttons should be enabled, EFalse otherwise
-		*/
-		virtual TBool CBAEnabled() const = 0;
-
-	};
-
-#endif // __MVRDECORATORMODEL_H__
--- a/voicerecorder/RecViewSrc/MVRIHFObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2004-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:  Template class for IHF change observers
-*
-*/
-
-
-#ifndef __MVRIHFOBSERVER_H__
-#define __MVRIHFOBSERVER_H__
-
-//  CLASS DEFINITION
-/**
- *
- * Template class for observers of IHF mode changes
- *
- */
-class MVRIHFObserver
-	{
-	public: // New functions
-
-		/**
-		* This is a callback function which is called when a IHF mode changes.
-		* User must derive his class from MVRIHFObserver
-		* and implement this method if he is to use notify services.
-		*/
-		virtual void HandleIHFChange() = 0;
-    };
-
-#endif      //  __MVRIHFOBSERVER_H__
--- a/voicerecorder/RecViewSrc/MVRKeyObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     An observer class used to hand over key events to classes
-*     that can't receive them by themselves (i.e. not CCoeControl derived
-*     classes)
-*
-*/
-
-
-#ifndef __MVRKEYOBSERVER_H__
-#define __MVRKEYOBSERVER_H__
-
-// INCLUDES
-#include <w32std.h>
-
-// CLASS DECLARATION
-/**
-* An observer class used to hand over key events to classes
-* that can't receive them by themselves (i.e. not CCoeControl derived
-* classes)
-*/
-class MVRKeyObserver 
-    {
-
-    public: // new methods
-
-		/**
-		* This function is called when a subject wants to report a key event.
-		* @param aKeyEvent The key event.
-		* @param aType The type of key event: EEventKey, EEventKeyUp
-		*              or EEventKeyDown
-		* @return Indicates whether or not the key event was used.
-		*/
-		virtual TBool ProcessKeyEventL( const TKeyEvent& aKeyEvent,
-										const TEventCode aType ) = 0;
-
-    };
-
-#endif // __MVRKEYOBSERVER_H__
--- a/voicerecorder/RecViewSrc/MVRMdaRecorder.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,141 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This interface acts as a high level wrapper around the media server
-*     playback and recording functionalities. It is inherited by both 
-*	  CVRMdaRecorder
-*
-*/
-
-
-#ifndef __MVRMDARECORDER_H__
-#define __MVRMDARECORDER_H__
-
-
-// FORWARD DECLARATIONS
-class CVRMemo;
-class MVRObserver;
-
-// CLASS DEFINITION
-/**
-* This class acts as a high level wrapper around the media server
-* playback and recording functionalities.
-*/
-class MVRMdaRecorder 
-{
-
-	public: // new methods
-
-		/**
-		* Registers an observer for receiving update notifications.
-		* @param aObserver The observer object.
-		*/
-		virtual void RegisterObserver( MVRObserver* aObserver ) = 0;
-		
-		/**
-		* Unregisters a previously registered observer
-		* @param aObserver The observer object.
-		*/		
-		virtual void UnregisterObserver( MVRObserver* aObserver ) = 0;
-
-		/**
-		* Registers an observer for receiving auto stop notifications.
-		* @param aObserver The observer object.
-		*/
-		virtual void SetAutoStopObserver( MVRObserver* aObserver ) = 0;
-
-		/**
-		* Attachs this recorder to a memo file, i.e. opens it
-		* and initialises media server.
-		* @param aMemo Specifies the file to be attached to.
-		*/
-		virtual void AttachToMemoL( CVRMemo* aMemo ) = 0;
-
-		/**
-		* Creates a new memo file and attachs to it.
-		* @param aMemo Specifies the file to be created.
-		*/
-		virtual void CreateNewMemoL( CVRMemo* aMemo ) = 0;
-
-		/**
-		* Detachs from the current memo, i.e. closes the file.
-		*/
-		virtual void DetachMemo() = 0;
-
-		/**
-		* Sets playback volume.
-		* @param aStep Volume level in steps
-		* @param aMaxSteps How many steps there are (10 usually).
-		*/
-		virtual void SetVolume( TInt aStep, TInt aMaxSteps )= 0;
-
-		/**
-		* Starts playback.
-		* @return System wide error code
-		*/
-		virtual TInt PlayL() = 0;
-
-		/**
-		* Starts recording.
-		* @return System wide error code
-		*/
-		virtual TInt RecordL() = 0;
-
-		/**
-		* Stops playback or recording.
-		*/
-		virtual void Stop() = 0;
-
-		/**
-		* Pauses playback or recording.
-		*/
-		virtual void Pause() = 0;
-
-		/**
-		* Moves the playing position forward 5 seconds.
-		* @return System wide error code. KErrOverflow if the
-		* position was forwarded past the end.
-		*/
-		virtual TInt ForwardL() = 0;
-
-		/**
-		* Moves the playing position backward 5 seconds.
-		* @return System wide error code
-		*/
-		virtual TInt RewindL() = 0;
-
-		/**
-		* Indicates if we are in a state that can accept
-		* more commands (i.e. all async calls have completed).
-		* @return ETrue if it's ok to proceed calling methods.
-		*/
-		virtual TBool CanAcceptCommands() const = 0;
-
-		/**
-		* Set active speaker if feature is supported
-		* @param aEnabled ETrue if playback should be routed to IHF
-		* @return Error code returned by routing operation
-		*/
-		virtual TInt SetIhf( TBool aEnabled ) = 0;
-		
-		/**
-		* Set the audio recorder position to a new value
-		* @param aSeconds The position to set
-		*/
-		virtual void SetPositionL( TInt aSeconds ) = 0;
-		
-		virtual ~MVRMdaRecorder() {};
-	};
-
-#endif // __MVRMDARECORDER_H__
--- a/voicerecorder/RecViewSrc/MVRMediaRemovalObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-* This class can be used to observe changes that has been happened in
-* CVRMediaRemovalHandler class 
-*
-*/
-
-
-#ifndef __MVRMEDIAREMOVALOBSERVER_H
-#define __MVRMEDIAREMOVALOBSERVER_H
-
-// INCLUDES
-#include <e32def.h>
-#include <bldvariant.hrh>
-
-// CLASS DECLARATION
-/**
-*  __MVRMEDIAREMOVALOBSERVER_H
-*/
-class MVRMediaRemovalObserver
-    {
-    public:  // Constructors and destructor		
-    
-    virtual void HandleMMCEjectEventL( ) = 0;
-
-	};
-
-#endif     
-
-// __MVRMEDIAREMOVALOBSERVER_H
-
-// End of File
--- a/voicerecorder/RecViewSrc/MVRObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class defines a generic observer interface.
-*
-*/
-
-
-#ifndef __MVROBSERVER_H__
-#define __MVROBSERVER_H__
-
-// INCLUDES
-#include "VRConsts.h"
-
-// CLASS DEFINITION
-/**
-* This class defines a generic observer interface.
-*/
-class MVRObserver 
-	{
-	public: // new methods
-
-		/**
-		* Called to notify a change in the observed subject's state.
-		*/
-		virtual void Update( TVRUpdateCommand aCommand = EVRUpdate ) = 0;
-		
-	};
-
-#endif // __MVROBSERVER_H__
--- a/voicerecorder/RecViewSrc/MVRStateInfoModel.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class defines the data model interface for CVRStateInfoPanel.
-*
-*/
-
-
-#ifndef __MVRSTATEINFOMODEL_H__
-#define __MVRSTATEINFOMODEL_H__
-
-// INCLUDES
-#include <AknLayoutDef.h>
-
-// FORWARD DECLARATIONS
-class MVRObserver;
-class MVRStateInfoObserver;
-
-// CLASS DEFINITION
-/**
-* This class defines the data model interface for CVRStateInfoPanel.
-**/
-class MVRStateInfoModel 
-	{
-	public: // new methods
-
-		/**
-		* Returns the length of the current memo
-		* @return The duration in microseconds.
-		*/
-		virtual TTimeIntervalMicroSeconds Duration() const = 0;
-		
-		/**
-		* Returns the playing or recording position of the current memo.
-		* @return The position in microseconds.
-		*/
-		virtual TTimeIntervalMicroSeconds Position() const = 0;
-
-		/**
-		* Returns the text content for a label.
-		* @param aName Returned text is placed in this descriptor
-		* @param aLabelIndex Label identifier (>=0)
-		*/
-		virtual void GetLabel( TDes& aName, TInt aLabelIndex ) const = 0;
-
-		/**
-		* Returns the resource id for a label.
-		* @param aLabelIndex Label identifier (>=0)
-		* @return The resource id for the specified label
-		*/
-		virtual TInt ResourceIdForLabel( TInt aLabelIndex, TAknLayoutId aLayout ) const = 0;
-
-		/**
-		* Registers an observer for receiving
-		* update notifications from this interface.
-		* @param aObserver The observer object.
-		*/
-		virtual void SetStateInfoObserver( MVRObserver* aObserver ) = 0;
-		
-		/**
-		* Determines is view has a progress bar
-		* @return ETrue if view has a progress bar, otherwise EFalse
-		*/
-		virtual TBool HasProgressBar() const = 0;
-		
-		/**
-		* Registers an observer to communicate about the changes in InfoPanel. 
-		* @param aObserver The observer object.
-		*/
-		virtual void SetStateInfoPanelObserver( MVRStateInfoObserver* aObserver ) = 0;
-		
-	};
-
-#endif // __MVRSTATEINFOMODEL_H__
--- a/voicerecorder/RecViewSrc/MVRStateInfoObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +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:  
-* This class can be used to observe changes that has been happened in
-* CVRStateInfoPanel class 
-*
-*
-*/
-
-
-#ifndef __MVRSTATEINFOOBSERVER_H__
-#define __MVRSTATEINFOOBSERVER_H__
-
-// CLASS DEFINITION
-/**
-* This class can be used to observe changes that has been happened in
-* CVRStateInfoPanel class 
-*/
-class MVRStateInfoObserver 
-	{
-	public: // new methods
-
-		/**
-		* Returns the current progress bar position value
-		* @return Position value
-		*/
-		virtual TInt ProgressBarPosition() const = 0;
-		
-	};
-
-#endif // __MVRSTATEINFOOBSERVER_H__
-
-// End of File
--- a/voicerecorder/RecViewSrc/MVRSystemEventObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-* This class can be used to observe changes that has been happened in
-* CVRSystemEventHandler class 
-*
-*/
-
-
-#ifndef __MVRSYSTEMEVENTOBSERVER_H
-#define __MVRSYSTEMEVENTOBSERVER_H
-
-// INCLUDES
-#include <e32def.h>
-#include <bldvariant.hrh>
-
-// CLASS DECLARATION
-/**
-*  MVRSystemEventObserver
-*/
-class MVRSystemEventObserver
-    {
-    public:  // Constructors and destructor		
-    
-    virtual void HandleSystemEventL() = 0;
-
-	};
-
-#endif      // __MVRSYSTEMEVENTOBSERVER_H
-
-// End of File
--- a/voicerecorder/RecViewSrc/MVRUpdateEventProvider.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*  MVRUpdateEventProvider provides an interface for registering
-*  and unregistering several MVRObserver derived observers
-*
-*/
-
-
-#ifndef __MVRUPDATEEVENTPROVIDER_H
-#define __MVRUPDATEEVENTPROVIDER_H
-
-// INCLUDES
-#include <e32def.h>
-
-#include "MVRObserver.h"
-
-// CLASS DECLARATION
-
-/**
-*  MVRUpdateEventProvider provides an interface for registering
-*  and unregistering several MVRObserver derived observers
-*
-*/
-class MVRUpdateEventProvider
-    {
-    public:
-		/**
-		* Registers an observer for receiving update notifications.
-		* @param aObserver The observer object.
-		*/    
-		virtual void RegisterObserver( MVRObserver* aObserver ) = 0;
-		
-		/**
-		* Unregisters a previously registered observer
-		* @param aObserver The observer object.
-		*/		
-		virtual void UnregisterObserver( MVRObserver* aObserver ) = 0;
-	};
-
-#endif      // __MVRUPDATEEVENTPROVIDER_H
-
-// End of File
--- a/voicerecorder/RecViewSrc/MVRVolumeChangeObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class defines a audio volume change observer interface.
-*
-*/
-
-
-#ifndef __MVRVOLUMECHANGEOBSERVER_H__
-#define __MVRVOLUMECHANGEOBSERVER_H__
-
-// INCLUDES
-#include <e32def.h>
-
-// CLASS DEFINITION
-/**
-* This class defines a audio volume change observer interface.
-*/
-class MVRVolumeChangeObserver 
-	{
-	public: // new methods
-
-		/**
-		* Called to notify a change in volume settings.
-		* @param aStep Volume level in steps
-		* @param aMaxSteps How many steps there are (10 usually).
-		*/
-		virtual void SetVolume( TInt aStep, TInt aMaxSteps ) = 0;
-		
-		/***
-		* Indicates if volume can be set, because rinto tone
-		* volume change has no effect if the tone is playing.
-		*/
-		virtual TBool CanSetVolume() = 0;
-	};
-
-#endif // __MVRVOLUMECHANGEOBSERVER_H__
--- a/voicerecorder/RecViewSrc/MVRVolumeEventObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Common interface for observing volume events provided by
-*                either key presses or side volume keys
-*
-*/
-
-
-
-#ifndef __MVRVOLUMEEVENTOBSERVER_H
-#define __MVRVOLUMEEVENTOBSERVER_H
-
-// CLASS DECLARATION
-
-/**
-*  Interface for passing volume events to observer
-*/
-class MVRVolumeEventObserver
-    {
-    public: // New functions
-        
-		/**
-		* Handles volume change event received from either side volume
-		* keys or left-right rocker presses.
-		* @param aKeyEvent The key event. Will be forwarded to CAknVolumeControl
-		* @param aType The type of key event: EEventKey, EEventKeyUp
-		*              or EEventKeyDown. Will be forwarded to CAknVolumeControl
-		*/
-
-		virtual TInt HandleVolumeChangeL( const TKeyEvent& aKeyEvent,
-									 TEventCode aType ) = 0;		
-
-    };
-
-#endif      // MVRVOLUMEEVENTOBSERVER_H   
-            
-// End of File
--- a/voicerecorder/RecViewSrc/TVRContext.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class is a data container for a single RecView context.
-*     A context contains a set of states. Each state
-*     contains a set of valid state transitions.
-*     Different contexts are defined in VoiceRecorder.hrh.
-*
-*
-*/
-
-
-#ifndef __TVRCONTEXT_H__
-#define __TVRCONTEXT_H__
-
-// INCLUDES
-#include "voicerecorder.hrh"
-#include "VRConsts.h"
-
-// CLASS DEFINITION
-/**
-* This class is a data container for a single RecView context.
-* A context contains a set of states. Each state
-* contains a set of valid state transitions.
-* Different contexts are defined in VoiceRecorder.hrh.
-*/
-class TVRContext
-	{
-	public:
-
-		// CLASS DEFINITION
-		/**
-		* This class is a data container for a single RecView
-		* state transition.
-		*/
-		class TTransition
-			{
-			public: // data
-
-				/**
-				* ETrue if this transition has been succesfully initialised.
-				*/
-				TBool iValid;
-
-				/**
-				* Identifies the command that executes this transition.
-				* This is one of TVRCommands.
-				*/
-				TUint iCommandId;
-
-				/**
-				* Identifies the state that is entered by this transition.
-				* This is an index into the TState::iStates array.
-				*/
-				TUint iNewState;
-
-				/**
-				* Identifies the function that gets called after the
-				* state transition is complete.
-				*/
-				TUint iFunctionId;
-
-			};
-
-		// CLASS DEFINITION
-		/**
-		* This class is a data container for a single RecView
-		* state. It contains a set of valid state transitions.
-		*/
-		class TState
-			{
-			public: // data
-
-				/**
-				* ETrue if this state has been succesfully initialised
-				*/
-				TBool iValid;
-
-				/**
-				* A static array of valid transitions (in this State).
-				*/
-				TTransition iTransitions[ KVRMaxTransitions ];
-			
-			};
-
-	public: // data
-
-		/**
-		* ETrue if this context has been succesfully initialised
-		*/
-		TBool iValid;
-
-		/**
-		* A static array of valid states (in this context).
-		*/
-		TState iStates[ ENumStates ];
-
-		/**
-		* Defines the transition that is automatically
-		* executed after entering this context.
-		*/
-		TTransition iInitialTransition;
-
-	};
-
-#endif // __TVRCONTEXT_H__
--- a/voicerecorder/RecViewSrc/TVRState.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class is a data container for a single RecView visual (UI) state
-*     It is able to read its parameters from a resource file.
-*     The run-time size of a single TVRState instance is 152 bytes
-*     (unicode build)
-*
-*/
-
-
-// INCLUDE FILES
-#include <barsread.h>	// TResourceReader
-#include "TVRState.h"
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// TVRState::ReadFromResource
-// 
-// ---------------------------------------------------------------------------
-//
-// Reads a STRUCT VR_STATE
-void TVRState::ReadFromResource( TResourceReader& aReader )
-	{
-	iMenubarResourceId = aReader.ReadUint32();
-	iCbaResourceId = aReader.ReadUint32();
-	iStatus.Copy( aReader.ReadTPtrC() );
-	iLabelSetId = TUint8( aReader.ReadUint8() );
-	iHasVolumeControl = TUint8( aReader.ReadUint8() );
-	iHasProgressBar = TUint8( aReader.ReadUint8() );
-	iFocusButtonId = TUint8( aReader.ReadUint8() );
-	iStateId = aReader.ReadUint8();
-	
-	// Reads an array of STRUCT VR_BUTTON_INFO
-	iButtonCount = aReader.ReadInt16();
-	for ( TInt i = 0; i < iButtonCount; i++ )
-		{
-		iButtons[ i ].ReadFromResource( aReader );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// TVRState::TButton::ReadFromResource
-// Reads a STRUCT VR_BUTTON 
-// ---------------------------------------------------------------------------
-//
-void TVRState::TButton::ReadFromResource( TResourceReader& aReader )
-	{
-	iCommandId = aReader.ReadUint16();
-	iState = TUint8( aReader.ReadUint8() );
-	}
-
-
-// ---------------------------------------------------------------------------
-// TVRState::ButtonState
-// 
-// ---------------------------------------------------------------------------
-//
-TUint TVRState::ButtonState( TInt aButtonId ) const
-	{
-	// aButtonId cannot be out of bounds
-	return iButtons[ aButtonId ].iState;
-	}
-
-
-// ---------------------------------------------------------------------------
-// TVRState::ButtonCommandId
-// 
-// ---------------------------------------------------------------------------
-//
-TUint TVRState::ButtonCommandId( TInt aButtonId ) const
-	{
-	// aButtonId cannot be out of bounds
-	return iButtons[ aButtonId ].iCommandId;
-	}
-
--- a/voicerecorder/RecViewSrc/TVRState.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,162 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     This class is a data container for a single RecView visual (UI) state
-*     It is able to read its parameters from a resource file.
-*     The run-time size of a single TVRState instance is 152 bytes
-*     (unicode build)
-*
-*/
-
-
-#ifndef __TVRSTATE_H__
-#define __TVRSTATE_H__
-
-// INCLUDES
-#include <e32def.h>
-#include "voicerecorder.hrh"
-
-// CONSTANTS
-const TInt KVRMaxButtons( 5 );	// defined by UI spec
-
-// FORWARD DECLARATIONS
-class TResourceReader;
-
-// CLASS DEFINITION
-/**
-* This class is a data container for a single Voice Recorder visual (UI) state
-* It is able to read its parameters from a resource file.
-* The run-time size of a single TVRState instance is 152 bytes (unicode build)
-*/
-class TVRState
-	{
-	private: // nested classes
-
-		// CLASS DEFINITION
-		/**
-		* This class is a data container for a single CVRButtonPanel button
-		* defeinition. It is able to read its parameters from a resource file.
-		* The run-time size of a single TButton instance is 12 bytes.
-		*/
-		class TButton
-			{
-			public: // new methods
-
-				/**
-				* Constructs this button from a VR_BUTTON resource
-				* @param aReader A resource reader object initialised
-				*		 to a resource.
-				*/
-				void ReadFromResource( TResourceReader& aReader );
-
-			public: // data
-
-				/**
-				* The command id of this button (for HandleCommandL use).
-				*/
-				TUint iCommandId;
-
-				/**
-				* The visual state of this button
-				* (see TVRButtonStates in VoiceRecorder.hrh)
-				*/ 
-				TUint8 iState;
-
-			};
-
-	public: // new methods
-
-		/**
-		* Constructs this state from a VR_STATE resource
-		* @param aReader A resource reader object initialised to a resource.
-		*/
-		void ReadFromResource( TResourceReader& aReader );
-
-		/**
-		* Returns the state of a button.
-		* @param aButtonId Identifies a button in iButtons array;
-		* @return The current state of this button. See TButton.
-		*/
-		TUint ButtonState( TInt aButtonId ) const;
-
-		/**
-		* Returns the command id of a button.
-		* @param aButtonId Identifies a button in iButtons array;
-		* @return The command id of this button. See TButton.
-		*/
-		TUint ButtonCommandId( TInt aButtonId ) const;
-
-	public: // data
-		
-		/**
-		* An unique identifier for this visual state.
-		*/	
-		TUint iStateId;
-		
-		/**
-		* An unique identifier for this state.
-		*/
-		TUint iId;
-
-		/**
-		* Identifies the menu bar resource for this state (or null).
-		*/
-		TUint iMenubarResourceId;
-
-		/**
-		* Identifies the softkey resource for this state (or null).
-		*/
-		TUint iCbaResourceId;
-
-		/**
-		* Identifies the button that should gain initial focus.
-		*/
-		TUint8 iFocusButtonId;
-
-		/**
-		* Nonzero if this state should have a volume control.
-		*/
-		TUint8 iHasVolumeControl;
-
-		/**
-		* Nonzero if this state should have a progress bar.
-		*/
-		TUint8 iHasProgressBar;
-
-		/**
-		* Identifies the set of labels for this state.
-		*/
-		TUint8 iLabelSetId;
-
-		/**
-		* The number of buttons in this state.
-		*/
-		TInt iButtonCount;
-
-		/**
-		* Status text for this state (or KNullDesc).
-		*/
-		TBuf< VRLABELMAXLENGTH > iStatus;
-
-	private: // data
-
-		/**
-		* An array of buttons in this state.
-		* The run-time size of iButtons is 60 bytes.
-		*/
-		TButton iButtons[ KVRMaxButtons ];
-
-	};
-
-#endif	// __TVRSTATE_H__
--- a/voicerecorder/UtilsInc/MVRLayoutChangeObserver.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2002-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:  Declares an interface for observing
-*
-*/
-
-
-
-#ifndef MVRLAYOUTCHANGEOBSERVER_H
-#define MVRLAYOUTCHANGEOBSERVER_H
-
-// INCLUDES
-#include <e32def.h>
-
-
-// CLASS DECLARATION
-/**
-*  Notifies layot change.
-*
-*  @lib VoiceRecorderUtils.dll
-*  @since 2.0
-*/
-class MVRLayoutChangeObserver
-    {
-    public:
-        /*
-        * Used to forward HandleResourceChangeL events to observers
-        * @param aType The type of resources that have changed. 
-        */
-		virtual void LayoutChangedL( TInt aType ) = 0;
-    };
-
-#endif      // MVRLAYOUTCHANGEOBSERVER_H
-
-// End of File
--- a/voicerecorder/UtilsInc/MVRSelectionProvider.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*      Interface for file selection
-*
-*
-*/
-
-
-#ifndef __MVRSELECTIONPROVIDER_H__
-#define __MVRSELECTIONPROVIDER_H__
-
-// INCLUDES
-#include <bamdesca.h>
-#include <f32file.h>
-
-// ENUMERATIONS
-enum TVRSelectionStyle { EEmptyList, EFocusedItem, ESingleMarkedItem, EMarkedItems };
-
-// CLASS DEFINITION
-/**
-*
-*/
-class MVRSelectionProvider
-	{
-	public: // new methods
-
-		/**
-		* Ownership is transferred. Caller must destroy the returned array.
-		* @return array of file names
-		*/
-		virtual MDesCArray* GetSelectedFilesLC( TVRSelectionStyle& aStyle ) const = 0;
-
-		/**
-		* Transfer the file handle to view
-		* @param aFile File handle
-		*/
-		virtual void SetFileHandle( RFile& aFile ) = 0;
-		
-		/**
-		* Get the handle to the recorded clip.
-		* @return Open file handle
-		*/
-		virtual RFile& GetFile() = 0;
-	};
-
-#endif // __MVRSELECTIONPROVIDER_H__
--- a/voicerecorder/UtilsInc/TVRRename.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class encapsulates the functionality associated with renaming
-*     files in different situation. The implementation is made according
-*     to the Folders v.4.0 specification.
-*
-*
-*/
-
-
-#ifndef __TVRRENAME_H
-#define __TVRRENAME_H
-
-//  INCLUDES
-#include <e32base.h>
-
-// CLASS DECLARATION
-
-/**
-*  This class provides functionality to use in renaming operations
-*/
-class TVRRename
-    {
-    public:  // Constructors and destructor
-        
-        /**
-        * C++ constructor.
-		* @param aFs A reference to an open file server session.
-        */
-        IMPORT_C TVRRename( RFs& aFs );
-
-    public: // New functions
-        
-        /**
-        * This method executes a set of operations to do a file renaming operation
-		* according to the Folders specification v.4.0. The method doesn't do the
-		* actual renaming of the file, but returns the result path.
-		*
-        * @param aOldName A descriptor containing path to the file to be renamed.
-		* @param aNewName A descriptor with a size of atleast KMaxFileName. The
-		*        new path for the renamed is stored here. Do not rely on the contents
-		*        of this descriptor if the method returns EFalse.
-        * @param aPrompt A resource id to a string that is used as a prompt for the
-		*        name query dialog.
-        * @return (TBool) ETrue if the user confirmed the operation. 
-		*         EFalse if the user canceled the operation.
-        */
-		IMPORT_C TBool GetNewNameL( const TDesC& aOldName, TDes& aNewName, const TInt aPrompt );
-
-        /**
-        * This method executes a set of operations to do a file renaming operation
-		* according to the Folders specification v.4.0. This method carries out
-		* the actual renaming of the file.
-		*
-        * @param aName A descriptor containing path to the file to be renamed.
-        * @param aPrompt A resource id to a string that is used as a prompt for the
-		*        name query dialog.
-        * @return (TBool) ETrue if the user confirmed the operation. 
-		*         EFalse if the user canceled the operation.
-        */
-		IMPORT_C TBool RenameL( TDes& aName, const TInt aPrompt );
-
-        /**
-        * This method executes a set of operations to do a file renaming operation
-		* according to the Folders specification v.4.0. This method carries out
-		* the actual renaming of the file.
-		*
-        * @param aFile A handle to the file to be renamed
-        * @param aPrompt A resource id to a string that is used as a prompt for the
-		*        name query dialog.
-        * @return (TBool) ETrue if the user confirmed the operation. 
-		*         EFalse if the user canceled the operation.
-        */
-		IMPORT_C TBool RenameL( RFile& aFile, const TInt aPrompt );
-
-    private:    // Data
-
-		// A reference to an open file server session
-        RFs& iFs;
-
-    };
-
-#endif     // __TVRRENAME_H  
-            
-// End of File
--- a/voicerecorder/UtilsInc/VRUSBStateHanlder.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     CVRUSBStateHanlder declaration
-*     
-*
-*/
-
-
-#ifndef VRUSBSTATEHANLDER_H
-#define VRUSBSTATEHANLDER_H
-
-#include <e32base.h>	// For CActive, link against: euser.lib
-#include <e32std.h>		// For RTimer, link against: euser.lib
-#include <e32property.h> 
-
-//#include "DummyUSBState.h" // for dummy testing
-
-class MVRUSBStateObserver
-    {
-public:
-    // Constructors and destructor
-
-    virtual TInt HandleUsbPlugInL() = 0;
-    virtual TInt HandleUsbPlugOutL() = 0;
-
-    };
-
-class CVRUSBStateHanlder : public CActive
-    {
-public:
-    // Cancel and destroy
-    ~CVRUSBStateHanlder();
-
-    IMPORT_C static CVRUSBStateHanlder* NewL(MVRUSBStateObserver* aObserver);
-
-public:
-
-    IMPORT_C static TBool IsUsbActive();
-
-private:
-    // C++ constructor
-    CVRUSBStateHanlder(MVRUSBStateObserver* aObserver);
-
-    // Second-phase constructor
-    void ConstructL();
-
-private:
-    // From CActive
-    // Handle completion
-    void RunL();
-
-    // How to cancel me
-    void DoCancel();
-
-    // Override to handle leaves from RunL(). Default implementation causes
-    // the active scheduler to panic.
-    TInt RunError(TInt aError);
-
-    void StartL();
-
-private:
-#ifdef DUMMY_USB_TESTING
-    RTimer iTimer; // Provides async timing service, for dummy testing
-    TInt isUSBActive;
-#else
-    RProperty iProperty;
-#endif
-    MVRUSBStateObserver* iObserver;    
-    enum TUSBConnectionStatus 
-        { 
-        EStateUninitialized, 
-        EStateConnected, 
-        EStateDisConnected
-        }; 
-    TUSBConnectionStatus iConnectionStatus;
-    };
-
-#endif // VRUSBSTATEHANLDER_H
--- a/voicerecorder/UtilsInc/VRUtils.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,303 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class contains a collection of small static utility functions
-*     needed all around the application. The class has no prefix letter
-*     
-*
-*/
-
-
-#ifndef __VRUTILS_H
-#define __VRUTILS_H
-
-// INCLUDES
-#include <bldvariant.hrh>
-#include <f32file.h>
-#include <badesca.h>
-#include "VRConsts.h"
-#include "voicerecorder.hrh"
-
-// CLASS DECLARATION
-
-class TVRDriveInfo
-    {
-    public:
-        TBool iDrivePresent;
-        TBool iDriveLocked;
-        TBool iDriveCorrupted;
-		TBool iDriveReadOnly;
-		TBool iDriveFull;
-    };
-
-class VRUtils
-    {
-    public: // New functions
-        
-		/**
-        * Returns the currently effective path where to store voice memos
-		* The directory is affected by the settings and the availability of MMC
-		*
-        * @return Returns a non-modifiable pointer descriptor containing the
-		*         currently effective path where to store voice memos.
-		          The descriptor is left on cleanup stack.
-        */
-		IMPORT_C static void MemoStoreDirectoryL( TDes &aPath );
-
-        /**
-        * This method sets the default memo store setting (Phone Memory / MMC)
-		*
-        * @param aMemory Memory to set as default store
-        */
-		IMPORT_C static void SetMemoStoreL( TVRMemoStore aMemory );
-
-        /**
-        * This method returns the default memo store setting
-        * @return The default memo store
-        */
-		IMPORT_C static TVRMemoStore MemoStoreL();
-
-		/**
-		* This method returns the current status of MMC (inserted/locked/etc...)
-		* @param aDriveInfo MMC status
-		*/
-		IMPORT_C static void GetMMCInfo( TVRDriveInfo& aDriveInfo );
-
-		/**
-		* Set the default speaker
-		* @param aSpeaker ESpeakerEarPiece or ESpeakerIhf
-		*/
-		IMPORT_C static void SetDefaultSpeakerL( const TVRSpeaker aSpeaker);
-
-		/**
-		* This method returns the current speaker
-		* @return Default speaker, either ESpeakerEarPiece or ESpeakerIhf
-		*/
-		IMPORT_C static TVRSpeaker DefaultSpeakerL();
-
-		/**
-		* Set the default volume setting for specified speaker
-		* @param aSpeaker ESpeakerEarPiece or ESpeakerIhf
-		* @param aVolume New TInt value to save
-		*/
-		IMPORT_C static void SetDefaultVolumeL( const TVRSpeaker aSpeaker, const TInt aVolume );
-
-		/**
-		* This method returns the default volume setting for specivied speaker
-		* @param aSpeaker ESpeakerEarPiece or ESpeakerIhf
-		* @return The retrieved volume setting value
-		*/
-		IMPORT_C static TInt DefaultVolumeL( const TVRSpeaker aSpeaker );
-
-
-		/**
-		* Set the default quality setting
-		* @param aSpeaker EQualityMMSOptimized or EQualityHigh
-		*/
-		IMPORT_C static void SetQualityL( const TVRQuality aQuality );
-
-		/**
-		* This method returns the current quality setting
-		* @return Default quality, either EQualityMMSOptimized or EQualityHigh
-		*/
-		IMPORT_C static TVRQuality QualityL();
-
-		/**
-		* This method shows the out-of-memory confirmation query
-		* @param aMmc Shows qtn_memlo_not_enough_memory if EFalse or
-		*			qtn_memlo_mmc_not_enough_memory if ETrue
-		*/
-		IMPORT_C static void ShowMemoryFullConfirmationQuery( TBool aMmc = EFalse );
-
-		/**
-		* This method checks if video or VOIP call is ongoing
-		* @param aShowNote Show error note if ETrue
-		* @return ETrue if unsupported call is ongoing, EFalse otherwise
-		*/
-		IMPORT_C static TBool UnsupportedCallTypeOngoing( TBool aShowNote = EFalse );
-		
-		/**
-		* This method returns the maximum length for a memo
-		* @return Maximum length
-		*/
-		IMPORT_C static TInt MaxLengthL();		
-
-		/**
-		* Check if variated feature is configured on
-		* @param aFeature Internal feature id
-		* @return ETrue if feature is enabled
-		*/		
-		IMPORT_C static TBool FeatureEnabled( TVRFeature aFeature );
-		
-		/**
-		* Generate a filename that has unique body in given path.
-		* @param aFs Reference to connected file server session handle
-		* @param aName Path to destination folder. On return contains
-		*         a unique file name with full path and extension
-		* @param aType The type of file to be generated. Extension will be
-		          appended according to this parameter.
-		*/				
-		IMPORT_C static void GenerateUniqueFilenameL( RFs& aFs, 
-	                         TFileName& aName, TVRFiletype aType );
-		
-		/**
-		* This method returns the running count of recorded memos
-		* @return Count of recorded memos
-		*/
-		IMPORT_C static TInt MemoCount();		
-		
-		/**
-		* This method returns the running count of recorded memos
-		* @return Count of recorded memos
-		*/
-		IMPORT_C static void SetMemoCount( TInt aNewCount );
-		
-		/**
-		* This method returns the bitrate that is used when recording amr clips
-		* @return Bitrate
-		*/
-		IMPORT_C static TUint AMRBitrateL();	
-
-
-		/**
-		* This method returns the bitrate that is used when recording amr clips
-		* @return Bitrate
-		*/
-		IMPORT_C static TUint AACBitrateL();	
-
-				
-		/**
-		* This method returns the AAC-LC sampling rate that is used when recording AAC-LC clips
-		* @return Sampleing rate
-		*/		
-		IMPORT_C static TInt AACSamplerateL();
-		
-		/**
-		* This method returns the audio mode that is used when recording AAC-LC clips
-		* @return audio mode
-		*/		
-       	IMPORT_C static TInt AACAudioModeL();
-
-		/**
-		* This method checks the drive is valid or not
-		* @param aDrive is the drive id
-		* @param aNoteId store the note id
-	    * @return The default memo store
-		*/
-       	IMPORT_C static TBool DriveValid( const TInt aDrive );
-       	
-		/**
-		* This method checks which MassStorage is/are valid
-	    * @return The MassStorage is multi (ETrue) or only one (EFlase)
-		*/
-       	IMPORT_C static TBool MultipleMassStorageAvailable();
-
-		/**
-		* This wrapper method return the removable MassStorage drive
-	    * @return the drive
-		*/
-       	IMPORT_C static TInt GetRemovableMassStorageL();
-
-#ifdef RD_MULTIPLE_DRIVE    	
-       	/**
-        * This method sets the default memo store setting (to support multipledrives)
-		*
-        * @param aMemory Memory to set as default store
-        */
-		IMPORT_C static void SetMemoDriveL( TDriveNumber aDrive );
-     	 
-       	/**
-        * This method returns default phone memory drive
-		*
-        * 
-        */
-		IMPORT_C static TInt DefaultMemoDriveL();
-	
-		/**
-		* This method returns the current status of Drive (inserted/locked/etc...)
-		* @param aDriveInfo MMC status
-		*/
-		IMPORT_C static TInt GetDriveInfo( TInt aDrive, TUint& aDriveInfo );
-
-        /**
-        * This method returns the default memo drive setting
-        * @return The default memo store
-        */
-		IMPORT_C static TInt MemoDriveL();
-#endif		
-				
-	private:
-
-		/**
-		* Default constructor declared as private to prohibit construction.
-		*/
-		VRUtils();	
-		
-		/**
-		* Store a setting in Central Repository
-		* @param aKey The Central Repository key 
-		* @param aValue The value for the key
-		*/
-		static void SetSettingValueL( const TUint32 aKey, const TInt aValue );
-
-		/**
-		* Get a setting from Central Repository
-		* @param aKey The requested Central Repository key
-		* @param aDefaultValue If key was not found, this is the value used
-		* @return The value of the requested key
-		*/
-		static TInt SettingValueL( const TUint32 aKey, const TInt aValue );
-		
-		/**
-		* This method shows the out-of-memory confirmation query
-		* @param aMmc Shows qtn_memlo_not_enough_memory if EFalse or
-		*			qtn_memlo_mmc_not_enough_memory if ETrue
-		*/
-		static void ShowMemoryFullConfirmationQueryL( TBool aMmc = EFalse );
-		
-		/**
-		* This method is called if video or VOIP call is ongoing and
-		* information note needs to be shown
-		* @param aResourceId
-		*/
-		static void ShowUnsupportedCallTypeNoteL( TInt aResourceId );
-		
-		/**
-		* This method appends the requested file type extension to filename
-		* @param aName Contains full file name after completion
-		* @param aType File type that defines the extension to be appended
-		*/
-		static void AppendExtension( TFileName& aName, TVRFiletype aType );		
-		
-		/**
-		* This method does the full check for the parameter filename existence
-		* @param aFs Reference to connected file server session handle
-		* @param aName Filename to check. No Path nor extension included.
-		* @return ETrue if file exists, EFalse otherwise
-		*/
-		static TBool DoesFileExistL( RFs& aFs, TFileName aName );
-		
-		/**
-		* This method checks if parameter filename exists or not
-		* @param aFs Reference to connected file server session handle
-		* @param aName Filename to check. Path included. Extension excluded.
-		* @return ETrue if file exists, EFalse otherwise
-		*/
-		static TBool CheckFileExistence( RFs& aFs, TFileName aName );
-
-    };
-
-#endif      // __VRUTILS_H
-            
-// End of File
--- a/voicerecorder/UtilsSrc/DllMain.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*      Dll entry point
-*
-*
-*/
-
-
-// INCLUDES
-#include <e32base.h>
-
--- a/voicerecorder/UtilsSrc/TVRRename.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,245 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class encapsulates the functionality associated with renaming
-*     files in different situation. The implementation is made according
-*     to the Folders v.4.0 specification.
-*
-*
-*/
-
-
-// INCLUDES
-#include <f32file.h>
-#include <AknQueryDialog.h>
-#include <aknnotewrappers.h>
-#include <bautils.h>
-#include <StringLoader.h>
-#include <apparc.h>
-
-#include <voicerecorder.rsg>
-#include "voicerecorder.hrh"
-#include "TVRRename.h"
-
-// CONSTANTS
-const TInt KMaxFileNameLength( 64 );
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// TVRRename::TVRRename
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TVRRename::TVRRename( RFs& aFs ) : iFs( aFs )
-    {
-    }
-
-
-// ---------------------------------------------------------------------------
-// TVRRename::GetNewNameL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool TVRRename::GetNewNameL( const TDesC& aOldName, 
-									   TDes& aNewName, 
-									   const TInt aPrompt )
-	{
-	CCoeEnv* coeEnv = CCoeEnv::Static();
-
-	TParsePtrC nameParse( aOldName );
-	TBuf<KMaxFileNameLength> fileName;		
-
-	// The query can fit only VRMEMONAMEMAXLENGTH characters
-	fileName.Copy( nameParse.Name().Left( VRMEMONAMEMAXLENGTH ) );
-
-	CAknStaticSizeDataQuerydialog* nameDlg = new( ELeave ) 
-								CAknTextQueryDialog( fileName ); // CSI: 35 #
-								
-	nameDlg->PrepareLC( R_VR_RENAME_DIALOG );
-	HBufC* prompt = StringLoader::LoadLC( aPrompt, coeEnv );
-	nameDlg->SetPromptL( *prompt );
-	CleanupStack::PopAndDestroy();
-
-	while ( nameDlg->RunLD() != 0 )
-		{
-		// Construct the full path of the new proposed (by the user) name 
-		aNewName.Copy( nameParse.DriveAndPath() );
-		aNewName.Append( fileName );
-		aNewName.Append( nameParse.Ext() );
-
-		TInt backslash = fileName.Find(_L( "\\" ) );
-
-		// Check that the name is valid for the fs32
-		// Is ValidFileName does not check backslash
-		if ( iFs.IsValidName( aNewName ) && backslash == KErrNotFound )
-			{	
-			// Check if it exists?
-			if ( !BaflUtils::FileExists( iFs, aNewName ) ||
-				aOldName == aNewName )
-				{
-				// Nope => accepted 
-				return ETrue;
-				}
-
-			// Prompt the user for "Overwrite?"
-			prompt = StringLoader::LoadLC( R_QTN_FLDR_OVERWRITE_QUERY, 
-										   fileName, 
-										   coeEnv );
-										   
-			CAknQueryDialog* queryDlg = CAknQueryDialog::NewL();
-			TBool accepted( queryDlg->ExecuteLD( R_VR_CONFIRMATION_QUERY, 
-												 *prompt ) );
-
-			CleanupStack::PopAndDestroy( prompt );
-
-			if ( accepted )
-				{
-				// User accepted overwrite
-				return ETrue;
-				}
-
-			// Create a new dialog for the next round
-			// TfileName. (CApaApplication::GenerateFileName needs it)
-			TFileName generatedName;	 
-			generatedName.Copy( nameParse.DriveAndPath() );
-			generatedName.Append( fileName );
-			generatedName.Append( nameParse.Ext() );
-			User::LeaveIfError( 
-					CApaApplication::GenerateFileName( iFs, generatedName ) );
-			
-			TParsePtrC generatedNameParse( generatedName );
-			TPtrC generatedNamePtr( generatedNameParse.Name() );
-			if ( generatedNamePtr.Length() > VRMEMONAMEMAXLENGTH )
-				{
-				// Name got too long => clip the suffix
-				fileName.Copy( generatedNamePtr.Left( 
-					generatedNamePtr.LocateReverse( '(' ) ) );
-				}
-			else 
-				{
-				fileName.Copy( generatedNamePtr );
-				}
-			
-			}
-		else
-			{
-			// The name wasn't a valid fs32 filename => show info note
-			HBufC* noteText = coeEnv->AllocReadResourceLC
-											( R_QTN_FLDR_ILLEGAL_CHARACTERS );
-			CAknInformationNote* infoNote = new( ELeave ) 
-												CAknInformationNote( ETrue );
-			infoNote->ExecuteLD( *noteText );
-			CleanupStack::PopAndDestroy();	// noteText
-			}
-
-		nameDlg = new( ELeave ) CAknTextQueryDialog( fileName );
-		nameDlg->PrepareLC( R_VR_RENAME_DIALOG );	
-		}
-
-	// User canceled
-	return EFalse;
-	}
-
-
-// ---------------------------------------------------------------------------
-// TVRRename::RenameL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool TVRRename::RenameL( TDes& aName, const TInt aPrompt )
-	{
-	HBufC* oldName = aName.AllocLC();
-	if ( GetNewNameL( *oldName, aName, aPrompt ) )
-		{
-		TInt err ( BaflUtils::RenameFile( iFs, *oldName, aName ) );
-		if ( err )
-			{
-			// Show error note "Unable to rename %U"
-			CAknInformationNote* infoNote = NULL;
-			TParsePtrC parse( oldName->Des() );
-			HBufC* noteText = StringLoader::LoadLC( R_QTN_FLDR_CANT_RENAME_ITEM, 
-													parse.Name(), 
-													CCoeEnv::Static() );
-		    if ( !noteText )
-		    	{
-		    	CleanupStack::PopAndDestroy(); // oldName 
-		    	return EFalse;
-		    	}
-			
-			infoNote = new( ELeave ) CAknInformationNote( ETrue );
-			if ( infoNote )
-				{
-				infoNote->ExecuteLD( *noteText );
-				}
-			CleanupStack::PopAndDestroy( 2 ); // oldName, noteText	
-			return EFalse;
-			}
-			
-		CleanupStack::PopAndDestroy( oldName );
-		return ETrue;
-		}
-	else
-		{
-		CleanupStack::PopAndDestroy( oldName );
-		return EFalse;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// TVRRename::RenameL
-// The file handle may not point to private folder, since renaming can't be
-// used in embedded mode
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool TVRRename::RenameL( RFile& aFile, const TInt aPrompt )
-	{
-	TFileName name( KNullDesC );
-	aFile.FullName( name );
-	HBufC* oldName = name.AllocLC();
-	
-	if ( GetNewNameL( *oldName, name, aPrompt ) )
-		{
-		aFile.Close();
-		TInt err ( BaflUtils::RenameFile( iFs, *oldName, name ) );
-		if ( err )
-			{
-			// Show error note "Unable to rename %U"
-			// and open the old file again			
-			User::LeaveIfError( aFile.Open( iFs, oldName->Des(),
-			                                EFileShareReadersOnly ) );
-			
-			CAknInformationNote* infoNote = NULL;
-			TParsePtrC parse( oldName->Des() );
-			HBufC* noteText = StringLoader::LoadLC(
-			    R_QTN_FLDR_CANT_RENAME_ITEM, parse.Name(), CCoeEnv::Static() );
-			
-			infoNote = new( ELeave ) CAknInformationNote( ETrue );
-			infoNote->ExecuteLD( *noteText );
-
-			CleanupStack::PopAndDestroy( 2 ); // oldName, noteText	
-			return EFalse;
-			}
-		CleanupStack::PopAndDestroy( oldName );
-		User::LeaveIfError( aFile.Open( iFs, name, EFileShareReadersOnly ) );
-		return ETrue;
-		}
-	else
-		{
-		CleanupStack::PopAndDestroy( oldName );
-		return EFalse;
-		}
-	}
--- a/voicerecorder/UtilsSrc/VRUSBStateHanlder.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,159 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     CVRUSBStateHanlder implementation
-*
-*
-*/
-
-
-// INCLUDES
-#include <e32cmn.h>
-#include <usbpersonalityids.h>
-#include <e32property.h> 
-#include <UsbWatcherInternalPSKeys.h>
-#include <usbpersonalityids.h>
-
-#include <AknWaitDialog.h>
-#include <eikenv.h> 
-
-#include "VRUSBStateHanlder.h"
-#include "CVRRecView.h"
-
-CVRUSBStateHanlder::CVRUSBStateHanlder(MVRUSBStateObserver* aObserver) :
-    CActive(EPriorityStandard), // Standard priority
-            iObserver(aObserver),
-            iConnectionStatus(EStateUninitialized)
-    {
-    }
-
-EXPORT_C CVRUSBStateHanlder* CVRUSBStateHanlder::NewL(
-        MVRUSBStateObserver* aObserver)
-    {
-    CVRUSBStateHanlder* self = new (ELeave) CVRUSBStateHanlder(aObserver);
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(); // self;
-    return self;
-    }
-
-void CVRUSBStateHanlder::ConstructL()
-    {
-#ifdef DUMMY_USB_TESTING 
-    User::LeaveIfError(iTimer.CreateLocal()); // Initialize timer
-#else
-    iProperty.Attach(KPSUidUsbWatcher, KUsbWatcherSelectedPersonality);
-#endif
-    CActiveScheduler::Add(this); // Add to scheduler    
-    StartL();
-    }
-
-CVRUSBStateHanlder::~CVRUSBStateHanlder()
-    {
-    Cancel(); // Cancel any request, if outstanding
-#ifdef DUMMY_USB_TESTING   
-    iTimer.Close();
-#else      
-    iProperty.Close();
-#endif     
-    }
-
-void CVRUSBStateHanlder::DoCancel()
-    {
-#ifdef DUMMY_USB_TESTING   
-    iTimer.Cancel();
-#else      
-    iProperty.Cancel();
-#endif  
-
-    }
-
-void CVRUSBStateHanlder::StartL()
-    {
-    Cancel(); // Cancel any request, just to be sure
-#ifdef DUMMY_USB_TESTING
-    iTimer.After(iStatus, 10000000); // Set for later
-    SetActive(); // Tell scheduler a request is active   
-#else   
-    SetActive();
-    iProperty.Subscribe(iStatus);
-#endif
-    }
-
-void CVRUSBStateHanlder::RunL()
-    {
-#ifdef DUMMY_USB_TESTING
-    CDummyUSBState::HandleUSBEventL();
-#else
-    StartL();
-#endif
-    
- 
-    TBool isUsbActive (IsUsbActive());
-    
-    if (isUsbActive)
-        {
-        if(iConnectionStatus != EStateConnected)
-            {
-            iObserver->HandleUsbPlugInL();
-            iConnectionStatus = EStateConnected;
-            }
-        }
-    else
-        {
-        if(iConnectionStatus != EStateDisConnected)
-            {
-            iObserver->HandleUsbPlugOutL();
-            iConnectionStatus = EStateDisConnected;
-            } 
-        }
-
-#ifdef DUMMY_USB_TESTING    
-    //    iStatus = KRequestPending;
-    SetActive(); // Tell scheduler a request is active    
-    iTimer.After(iStatus, 10000000); // Set for later
-
-    
-#endif
-
-
-    }
-
-TInt CVRUSBStateHanlder::RunError(TInt aError)
-    {
-    return aError;
-    }
-
-EXPORT_C TBool CVRUSBStateHanlder::IsUsbActive()
-    {
-#ifdef DUMMY_USB_TESTING
-    //dummy
-    return CDummyUSBState::IsUSBActive();
-#else
-
-    TInt usbState;
-    TInt err = RProperty::Get(KPSUidUsbWatcher,
-            KUsbWatcherSelectedPersonality, usbState);
-
-    if (KErrNone == err && KUsbPersonalityIdMS == usbState)
-        {
-        return true;
-        }
-    else
-        {
-        return false;
-        }
-#endif
-    }
-
--- a/voicerecorder/UtilsSrc/VRUtils.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1172 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This class contains a collection of small static utility functions
-*     needed all around the application. The class has no prefix letter
-*
-*
-*/
-
-
-// INCLUDES
-
-#include <eikapp.h>
-#include <eikenv.h>
-#include <bautils.h>
-#include <centralrepository.h>
-#include <coemain.h>
-#include <f32file.h>
-#include <StringLoader.h>
-#include <AknGlobalNote.h>
-#include <aknnotewrappers.h>
-#include <e32property.h>
-#include <ctsydomainpskeys.h>
-#include <pathinfo.h>
-#include <featmgr.h>
-#include <avkon.rsg>
-#include <e32math.h>
-
-#include <voicerecorder.rsg>
-#include <VoiceRecorderUID.h>
-
-#ifdef RD_MULTIPLE_DRIVE
-#include <driveinfo.h>
-#include <pathinfo.h>
-#endif
-
-#include "VoiceRecorderInternalCRKeys.h"
-#include "VRUtils.h"
-#include "VRConsts.h"
-#include <bldvariant.hrh>
-
-// CONSTANTS
-_LIT( KVRAMRFileNameExtension,   ".amr" );
-_LIT( KVRWAVFileNameExtension,   ".wav" );
-
-// added for AAC
-#ifdef  __AAC_ENCODER_PLUGIN   
-_LIT( KVRAAC_LCFileNameExtension,".mp4" );
-#endif
-
-_LIT( KVROneToNineClipCountFormat, "%02d" ); // used with clip numbers 1..9
-_LIT( KVRDefaultClipCountFormat, "%d" );	// used with clip numbers 10->
-
-
-// ================= MEMBER FUNCTIONS ========================================
-
-// ---------------------------------------------------------------------------
-// VRUtils::MemoStoreDirectoryL
-// Checks what is the current storage place and returns the corresponding path
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::MemoStoreDirectoryL( TDes &aPath )
-	{
-	
-	TFileName phoneMemoryPath;
-	
-#ifndef RD_MULTIPLE_DRIVE
-	if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-		{
-   		
-		TVRMemoStore memoStore = MemoStoreL();
-		if ( memoStore == EMemoStorePhoneMemory )
-			{
-			phoneMemoryPath = PathInfo::PhoneMemoryRootPath();
-			phoneMemoryPath.Append( PathInfo::DigitalSoundsPath() );
-			aPath.Copy( phoneMemoryPath );
-			return;
-			}
-		else
-			{
-			// MMC is the selected memo store. Check if it's available.
-			TVRDriveInfo mmcInfo;
-			GetMMCInfo( mmcInfo );
-			if ( mmcInfo.iDrivePresent && !mmcInfo.iDriveLocked &&
-				!mmcInfo.iDriveCorrupted && !mmcInfo.iDriveReadOnly )
-				{
-				// MMC usage is OK.
-				TFileName mmcPath = PathInfo::MemoryCardRootPath();
-				mmcPath.Append( PathInfo::DigitalSoundsPath() );
-				aPath.Copy( mmcPath );
-				return;
-				}
-			else
-				{
-				// MMC is unavailable => return phone memory path
-				phoneMemoryPath = PathInfo::PhoneMemoryRootPath();
-				phoneMemoryPath.Append( PathInfo::DigitalSoundsPath() );
-				aPath.Copy( phoneMemoryPath );
-				return;
-				}
-
-			}
-
-		}
-	else
-		{
-		phoneMemoryPath = PathInfo::PhoneMemoryRootPath();
-		phoneMemoryPath.Append( PathInfo::DigitalSoundsPath() );
-		aPath.Copy( phoneMemoryPath );
-		return;
-		}
-
-// using multiple drive
-#else
-		TInt memoDrive = MemoDriveL();
-		TInt defaultDrive(0);
-        User::LeaveIfError( defaultDrive = DefaultMemoDriveL());
-        //default drive
-		if ( memoDrive == defaultDrive )
-			{
-            User::LeaveIfError( PathInfo::GetRootPath( phoneMemoryPath, memoDrive ) );
-			phoneMemoryPath.Append( PathInfo::DigitalSoundsPath() );
-			aPath.Copy( phoneMemoryPath );
-			return;
-			}
-		// other drives
-		else
-			{			
-            TUint status( 0 );
-            TInt err = VRUtils::GetDriveInfo(memoDrive, status);
-            // check if drive status is ok 
-			if ( ( err == KErrNone ) && (status & DriveInfo::EDrivePresent) && !(status & DriveInfo::EDriveLocked) &&
-				!( status & DriveInfo::EDriveCorrupt ) && !( status & DriveInfo::EDriveReadOnly ) )
-				{
-				// Drive usage is OK.
-                User::LeaveIfError( PathInfo::GetRootPath( phoneMemoryPath, memoDrive ) );
-			    phoneMemoryPath.Append( PathInfo::DigitalSoundsPath() );
-			    aPath.Copy( phoneMemoryPath );
-			    return;
-				}
-			
-			// if not ok, save to default device drive
-			else
-				{
-            memoDrive = defaultDrive;
-            User::LeaveIfError( PathInfo::GetRootPath( phoneMemoryPath, memoDrive ) );
-			phoneMemoryPath.Append( PathInfo::DigitalSoundsPath() );
-			aPath.Copy( phoneMemoryPath );
-			return;
-				}
-
-			}
-#endif
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::SetMemoStoreL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::SetMemoStoreL( TVRMemoStore aMemory )
-	{
-	if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-		{
-		SetSettingValueL( KVRMemoStore, aMemory );
-		}
-	else
-		{
-		__ASSERT_DEBUG( ETrue, User::Panic( KVRPanic, EPanicInvalidSetting ) );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::MemoStoreL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TVRMemoStore VRUtils::MemoStoreL()
-	{
-	// Phone memory is the default
-	if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-		{
-		TInt ret = SettingValueL( KVRMemoStore,
-								EMemoStorePhoneMemory );
-		return static_cast< TVRMemoStore >( ret );
-		}
-	else
-		{
-		return EMemoStorePhoneMemory;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::DefaultSpeakerL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TVRSpeaker VRUtils::DefaultSpeakerL()
-	{
-	if ( FeatureManager::FeatureSupported( KFeatureIdKeypadNoVoiceKey ) &&
-		FeatureManager::FeatureSupported( 
-							KFeatureIdApplicationControllableAudioRouting ) )
-		{
-		return ( TVRSpeaker ) SettingValueL( KVRDefaultSpeaker, ESpeakerIhf );
-		}
-	else
-		{
-		return ESpeakerIhf;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::SetDefaultSpeakerL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::SetDefaultSpeakerL( const TVRSpeaker aSpeaker )
-	{
-	if ( FeatureManager::FeatureSupported( KFeatureIdKeypadNoVoiceKey ) &&
-		FeatureManager::FeatureSupported( 
-							KFeatureIdApplicationControllableAudioRouting ) )
-		{
-		SetSettingValueL( KVRDefaultSpeaker, aSpeaker );
-		}
-	else
-		{
-		__ASSERT_DEBUG( ETrue, User::Panic( KVRPanic, EPanicInvalidSetting ) );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::QualityL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TVRQuality VRUtils::QualityL()
-	{
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {   	
-     	return ( TVRQuality ) SettingValueL( KVRQuality, 
-     											 EQualityMMSOptimized );
- 		}
-	else
-		{
-		return EQualityMMSOptimized;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::SetQualityL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::SetQualityL( const TVRQuality aQuality )
-	{
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-		SetSettingValueL( KVRQuality, aQuality );
-		}
-	else
-		{
-		__ASSERT_DEBUG( ETrue, User::Panic( KVRPanic, EPanicInvalidSetting ) );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::SetDefaultVolumeL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::SetDefaultVolumeL( const TVRSpeaker aSpeaker,
-	const TInt aVolume )
-	{
-	switch ( aSpeaker )
-		{
-		case ESpeakerEarPiece:
-			{
-			SetSettingValueL( KVREarPieceVolume, aVolume );
-			break;
-			}
-		case ESpeakerIhf:
-			{
-			SetSettingValueL( KVRIHFVolume, aVolume );
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}	
-	return;
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::DefaultVolumeL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt VRUtils::DefaultVolumeL( const TVRSpeaker aSpeaker )
-	{
-	TInt volume( KVRDefaultVolume );
-	switch ( aSpeaker )
-		{
-		case ESpeakerEarPiece:
-			{
-			volume = SettingValueL( KVREarPieceVolume, KVRDefaultVolume );
-			break;
-			}
-		case ESpeakerIhf:
-			{
-			volume = SettingValueL( KVRIHFVolume, KVRDefaultVolume );
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	return volume ? volume : KVRDefaultVolume;
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::SetSettingValueL, 
-// save the data to central repository
-// ---------------------------------------------------------------------------
-//
-void VRUtils::SetSettingValueL( const TUint32 aKey, const TInt aValue )
-	{
-    CRepository* repository = CRepository::NewL( KCRUidVoiceRecorder );
-    CleanupStack::PushL( repository );
-    User::LeaveIfError( repository->Set( aKey, aValue ) );
-    CleanupStack::PopAndDestroy( repository );
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::SettingValueL
-// 
-// ---------------------------------------------------------------------------
-//
-TInt VRUtils::SettingValueL( const TUint32 aKey, const TInt aDefaultValue )
-	{
-    TInt data;
-
-    CRepository* repository = CRepository::NewL( KCRUidVoiceRecorder );
-	CleanupStack::PushL( repository );
-
-	// Get the value, create the key if no value was found
-    if ( repository->Get( aKey, data ) != KErrNone )
-        {
-        User::LeaveIfError( repository->Create( aKey, aDefaultValue ) );
-        data = aDefaultValue;
-        }
-
-    CleanupStack::PopAndDestroy( repository );
-
-	return data;
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::GetMMCInfo
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::GetMMCInfo( TVRDriveInfo& aMMCInfo )
-    {
-	if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-		{
-		TDriveInfo driveInfo;
-		TVolumeInfo volumeInfo;
-		RFs& fss = CCoeEnv::Static()->FsSession() ;
-
-		TInt err( fss.Drive( driveInfo, EDriveE ) );
-
-		if ( driveInfo.iType != EMediaNotPresent )
-			{
-			aMMCInfo.iDrivePresent = ETrue;
-			if ( fss.Volume( volumeInfo, EDriveE ) == KErrCorrupt )
-				{
-				aMMCInfo.iDriveCorrupted = ETrue;
-				}
-			else
-				{
-				aMMCInfo.iDriveCorrupted = EFalse;
-				}
-			}
-		else
-			{
-			aMMCInfo.iDriveCorrupted = EFalse;
-			aMMCInfo.iDrivePresent = EFalse;
-			}
-
-		if ( driveInfo.iMediaAtt & KMediaAttLocked || err == KErrLocked )
-			{
-			aMMCInfo.iDriveLocked = ETrue;
-			}
-		else
-			{
-			aMMCInfo.iDriveLocked = EFalse;
-			}
-
-		if ( driveInfo.iMediaAtt & KMediaAttWriteProtected )
-			{
-			aMMCInfo.iDriveReadOnly = ETrue;
-			}
-		else
-			{
-			aMMCInfo.iDriveReadOnly = EFalse;
-			}
-		if ( volumeInfo.iFree ==0 )
-			{
-			aMMCInfo.iDriveFull = ETrue;
-			}
-		else
-			{
-			aMMCInfo.iDriveFull = EFalse;
-			}
-
-
-		}
-    }
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::ShowMemoryFullConfirmationQuery
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::ShowMemoryFullConfirmationQuery( TBool aMmc )
-	{
-	// Error ignored. If the note fails, there's nothing to do.
-	TRAP_IGNORE( ShowMemoryFullConfirmationQueryL( aMmc ) );
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::UnsupportedCallTypeOngoing
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool VRUtils::UnsupportedCallTypeOngoing( TBool aShowNote )
-	{
-	TBool unsupported( EFalse );
-	TInt value( 0 );
-
-	TInt err( 0 );
-    RProperty property;
-    err = property.Attach( KPSUidCtsyCallInformation, KCTsyCallState );
-	if ( err )
-		{
-		return EFalse;
-		}
-
-    property.Get( value );
-
-    switch ( value )
-	    {
-    	case EPSCTsyCallStateUninitialized:
-    	case EPSCTsyCallStateNone:
-    		{ // No any kind of call in progress
-    		return EFalse;
-    		}
-		default: // Call in progress, check if it is videocall
-		    {
-		    err = property.Attach( KPSUidCtsyCallInformation, KCTsyCallType);
-        	if ( err )
-        		{
-        		return EFalse;
-        		}
-        	value = 0;
-    		property.Get( value );
-			break;
-		    }
-    	}
-
-	switch( value )
-		{
-		// Video call ongoing
-		case EPSCTsyCallTypeH324Multimedia:
-			{
-			unsupported = ETrue;
-			
-			if ( aShowNote )
-				{
-				// If the note fails, it's no big deal
-				TRAP_IGNORE( ShowUnsupportedCallTypeNoteL( 
-					R_VR_VIDEO_CALL_INFONOTE_LABEL ) );
-				}
-			break;			
-			}
-		// Voip call ongoing
-		case EPSCTsyCallTypeVoIP:
-			{
-			unsupported = ETrue;
-			
-			if ( aShowNote )
-				{
-				// If the note fails, it's no big deal
-				TRAP_IGNORE( ShowUnsupportedCallTypeNoteL( 
-					R_VR_INTERNET_CALL_INFONOTE_LABEL ) );
-				}
-			break;			
-			}			
-		}
-	
-	return unsupported;
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::ShowMemoryFullConfirmationQueryL
-// 
-// ---------------------------------------------------------------------------
-//
-void VRUtils::ShowMemoryFullConfirmationQueryL( TBool aMmc )
-	{
-	CAknGlobalNote* note = NULL;
-	
-	note = CAknGlobalNote::NewLC();
-	
-	HBufC* label = NULL;
-	TInt noteId( 0 );
-	if ( aMmc )
-		{
-		noteId = R_VR_MEMORY_MMC_WARNING;
-		}
-	else 
-		{
-		noteId = R_VR_MEMORY_WARNING;
-		}
-
-	label = StringLoader::LoadLC( noteId );
-
-	note->SetSoftkeys( R_AVKON_SOFTKEYS_OK_EMPTY );
-	note->ShowNoteL( EAknGlobalWarningNote, *label );
-	CleanupStack::PopAndDestroy( 2 );	// label, note;
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::ShowUnsupportedCallTypeNoteL
-// 
-// ---------------------------------------------------------------------------
-//
-void VRUtils::ShowUnsupportedCallTypeNoteL( TInt aResourceId )
-	{
-	CAknInformationNote* infoNote;
-    HBufC* noteText;
-    
-    noteText = CEikonEnv::Static()->
-    	AllocReadResourceLC( aResourceId );
-	
-	infoNote = new( ELeave ) CAknInformationNote( ETrue );
-	infoNote->ExecuteLD( *noteText );
-
-	CleanupStack::PopAndDestroy( noteText );
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::MaxLengthL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt VRUtils::MaxLengthL()
-	{
-	// If no value can be retrieved, use 60 minutes as max length
-	TInt value( 0 );
-	
-#ifdef __AAC_ENCODER_PLUGIN   // mp4 is supported now. 	
-    if (QualityL() == EQualityHigh)
-    	{	
-	    TRAPD( err, value = SettingValueL( KVRAacRecordLength, 
-									   KVRDefaultAacRecordLength ) );
-									   
-	    if ( err || value <= 0 || value > 9999 )
-		  {
-		  return KVRDefaultAacRecordLength;
-		  }
-    	}
-#endif
-	TRAPD( err, value = SettingValueL( KVRMaxRecordTime, 
-									   KVRDefaultMaxLength ) );
-									   
-	if ( err || value <= 0 || value > 9999 )
-		{
-		return KVRDefaultMaxLength;
-		}
-
-
-	return value;
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::FeatureEnabled
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool VRUtils::FeatureEnabled( TVRFeature aFeature )
-	{
-	TBool ret( EFalse );
-    TInt data( 0 );
-
-    TRAPD( err, data = SettingValueL( KVRVariationFlags, 0 ) );
-    if( err != KErrNone )
-        {
-        return EFalse;
-        }
-
-    // Compare feature to bitmask
-	if ( data & aFeature )
-		{
-		ret = ETrue;
-		}
-	return ret;
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::GenerateUniqueFilename
-// Generates unique filename that doesn't exist in the directories where VR
-// operates in. Unique filename is generated in Media Gallery sense so that no
-// two sound clips can have same name there
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::GenerateUniqueFilenameL( RFs& aFs, TFileName& aName,
-    TVRFiletype aType )
-    {
-           
-    TBuf< VRLABELMAXLENGTH > valueStr;
-    TBuf< VRLABELMAXLENGTH > formatStr;
-    TFileName name( aName );
-    TFileName clipName; // Used for file existence checking
-    TBool fileExists( EFalse );
-    
-    // Get current count from cenrep
-    TInt value( MemoCount() );
-    		
-    TBool uniqueFound( EFalse );
-    
-    // First memo
-    if ( !value )
-        {        
-        StringLoader::Load( formatStr, R_VOREC_FIRST_MEMO_NAME );        
-        name.Append( formatStr );
-        clipName.Append( formatStr );
-        
-        TRAPD( err1, fileExists = DoesFileExistL( aFs, clipName ) );
-        if ( err1 )
-        	{
-        	// if error occurs, no much to do->generate new filename
-        	fileExists = ETrue;
-        	}
-        	
-        AppendExtension( name, aType );
-        
-        if ( fileExists )
-            {
-            // Memo exists, continue name generation with next name
-            ++value;
-            }
-        else
-            {
-            uniqueFound = ETrue;
-            ++value; // This is saved to cenrep
-            }
-        }
-
-    // Continue generation
-    if ( !uniqueFound )
-        {
-        StringLoader::Load( formatStr, R_VOREC_DEFAULT_MEMO_NAME );
-
-
-        // Loop until unique filename is generated
-        FOREVER
-            {
-            // 0 is added before clip number when number is between 1 and 9
-            if(value >= 1 && value <= 9)  
-            	{
-            	valueStr.Format( KVROneToNineClipCountFormat, value);	
-            	}
-            // no addings for clip numbers 10->
-            else
-            	{
-            	valueStr.Format( KVRDefaultClipCountFormat, value);		
-            	}
-
-            StringLoader::Format( name, formatStr, -1, valueStr );
-
-            // name copied before the path is added          
-            clipName = name;
-            
-            // Insert path to beginning	
-            name.Insert( 0, aName );
-            
-            AknTextUtils::LanguageSpecificNumberConversion( name );
-        	    
-           	TRAPD( err2, fileExists = DoesFileExistL( aFs, clipName ) );
-           	if ( err2 )
-	        	{
-	        	fileExists = ETrue;
-	        	}
-  
-            AppendExtension( name, aType );
-            if ( !fileExists )
-                {
-                // Accept the name and increase value
-                // Value increasing is mandatory to prevent similarly named clips when quality 
-                // or store place is changed
-                ++value;
-                break;
-                }
-            // Try next...
-            ++value;                
-            }
-         }
-
-    aName = name;
-
-    // Save the new value to cenrep
-   SetMemoCount( value );
-    }
-   
-
-// ---------------------------------------------------------------------------
-// VRUtils::AppendExtension
-// 
-// ---------------------------------------------------------------------------
-//    
-void VRUtils::AppendExtension( TFileName& aName, TVRFiletype aType ) 
-    {
-    switch ( aType )
-        {
-        case EVRFileWav:
-            {
-            aName.Append( KVRWAVFileNameExtension );
-            break;
-            }
-
-//Jeffery: the following case added for the new CR
-#ifdef  __AAC_ENCODER_PLUGIN   
-         case EVRFileAAC_LC:
-            {
-            aName.Append( KVRAAC_LCFileNameExtension );
-            break;
-            }
-#endif
-
-        // In error case amr extension is appended
-        case EVRFileAmr:
-        default:
-            {
-            aName.Append( KVRAMRFileNameExtension );
-            break;
-            }                    
-        }    
-    }
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::MemoCount
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt VRUtils::MemoCount()
-    {
-	// If no value can be retrieved, use zero
-	TInt value( 0 );
-	TRAPD( err, value = SettingValueL( KVRMemoCount, 0 ) );
-	if ( err != KErrNone )
-		{
-		return 0;
-		}
-	return value;    
-    }
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::SetMemoCount
-// 
-// ---------------------------------------------------------------------------
-//    
-EXPORT_C void VRUtils::SetMemoCount( TInt aNewCount )
-    {
-    TRAP_IGNORE( SetSettingValueL( KVRMemoCount, aNewCount ) );
-    }    
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::AMRBitrateL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint VRUtils::AMRBitrateL()
-    {
-    TUint bitrate(KVRDefaultAmrBitrate);
-
-    // Fetch bitrate from 
-	TRAPD( err, bitrate = SettingValueL( KVRBitrateAmr, 
-										 KVRDefaultAmrBitrate ) );
-										 
-	if ( err || bitrate <= 0 || bitrate > 12200 )
-		{
-		bitrate = KVRDefaultAmrBitrate;
-		}
-		
-    return bitrate;    
-    }
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::AACBitrateL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint VRUtils::AACBitrateL()
-    {
-       
-    TUint bitrate(KVRDefaultBitrateAac);
-
-    // Fetch bitrate from 
-	TRAPD( err, bitrate = SettingValueL( KVRBitrateAac, 
-										 KVRDefaultBitrateAac ) );
-
-	if ( err || bitrate <= 8000 || bitrate > 288000 )
-	  {
-      bitrate = KVRDefaultBitrateAac;
-	  }
-    return bitrate;    
-    }
-
-// ---------------------------------------------------------------------------
-// VRUtils::DoesFileExistL
-// Makes the full checking if the filename (aName) exists in the directories 
-// that Voice Recorder uses for clip storage
-// ---------------------------------------------------------------------------
-//
-TBool VRUtils::DoesFileExistL( RFs& aFs, TFileName aName )
-	{
-// old memory storage
-#ifndef RD_MULTIPLE_DRIVE	
-	// Storage place at the moment
-	TVRMemoStore memoStore = MemoStoreL();
-	TFileName path;
-	TFileName fileName(aName);
-	
-	// The path for the current storage place
-	VRUtils::MemoStoreDirectoryL( path );
-	
-	// Add the path to the filename
-    fileName.Insert( 0, path );
-    
-    if ( CheckFileExistence( aFs, fileName ) )
-    	{
-    	return ETrue;
-    	}
-    
-    // Check possible alternative storage place
-    TVRMemoStore secondaryStore;
-	if ( memoStore == EMemoStorePhoneMemory )
-		{
-		if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-			{
-			secondaryStore = EMemoStoreMMC;	
-			}
-		else
-			{
-			secondaryStore = EMemoStorePhoneMemory;	
-			}	
-		}
-	else
-		{
-		secondaryStore = EMemoStorePhoneMemory;
-		}
-	
-	// If there is some secondary storage place to check
-	if( memoStore != secondaryStore )
-		{
-		// Temporarily change the storage place (needed by MemoStoreDirectoryL)
-		VRUtils::SetSettingValueL( KVRMemoStore, secondaryStore );
-		
-		// Retrieve the path and add it to the filename
-		VRUtils::MemoStoreDirectoryL( path );
-		    
-	    fileName = aName;
-	    fileName.Insert( 0, path );
-	    
-	    // Change back to the original 
-	    VRUtils::SetSettingValueL( KVRMemoStore, memoStore );
-		
-	    if ( CheckFileExistence( aFs, fileName ) )
-	    	{
-	    	return ETrue;
-	    	}
-		}
-
-// for multiple drives  
-#else
-	 TFileName path;
-	 TFileName fileName(aName);
-
-     TDriveList allDrives;
-     TInt allDriveCount( 0 );
-
-     User::LeaveIfError(DriveInfo::GetUserVisibleDrives( aFs, allDrives, allDriveCount ));
-
-     TInt max( allDrives.Length());
-     for ( TInt i = 0; i < max; i++ )
-       {
-  	       if ( allDrives[ i ] )
-  	       	{
-			    TUint status( 0 );  
-			    VRUtils::GetDriveInfo( i, status);
-
-			    if( status & DriveInfo::EDriveRemote )	
-                    {
-                    continue;
-                    }
-				
-                User::LeaveIfError( PathInfo::GetRootPath( path, i) );
-			    path.Append( PathInfo::DigitalSoundsPath() );
-	
-	            // Add the path to the filename
-                fileName.Insert( 0, path );
-    
-                if ( CheckFileExistence( aFs, fileName ) )
-    	            {
-    	            return ETrue;
-    	            }			         			
-                
-                fileName.Copy(aName);
-  	       	}
-     	}
-#endif
-
-	return EFalse;
-
-	}
-	
-	
-// ---------------------------------------------------------------------------
-// VRUtils::CheckFileExistence
-// Checks if the filename given as a parameter exists. This function checks all
-// possible extensions (in VR). Note that aName includes path but no extension.
-// ---------------------------------------------------------------------------
-//	
-TBool VRUtils::CheckFileExistence( RFs& aFs, TFileName aName )
-	{
-	TFileName fileName( aName );
-    
-    // AMR file  
-    AppendExtension( fileName, EVRFileAmr );
-    AknTextUtils::LanguageSpecificNumberConversion( fileName );
-    if ( BaflUtils::FileExists( aFs, fileName ) )
-    	{
-    	return ETrue;
-    	}	  
-    
-    // WAV file	
-   	fileName = aName;
-    AppendExtension( fileName, EVRFileWav );
-    AknTextUtils::LanguageSpecificNumberConversion( fileName );
-    if ( BaflUtils::FileExists( aFs, fileName ) )
-    	{
-    	return ETrue;
-    	}
-    
- 	 
-    // AAC_LC file	
- #ifdef  __AAC_ENCODER_PLUGIN   
-   	fileName = aName;
-    AppendExtension( fileName, EVRFileAAC_LC );
-    AknTextUtils::LanguageSpecificNumberConversion( fileName );
-  
-    if ( BaflUtils::FileExists( aFs, fileName ) )
-    	{
-    	return ETrue;
-    	}
- #endif
- 
-    return EFalse;			
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::AACSamplerateL
-// ---------------------------------------------------------------------------
-//	
-
-EXPORT_C TInt VRUtils::AACSamplerateL()
-    {
-
-	TUint samplerate( KVRDefaultSamplerateAac );
-
-    // Fetch bitrate from 
-	TRAPD( err, samplerate = SettingValueL( KVRSamplerateAac, 
-										 KVRDefaultSamplerateAac ) );
-
-	if ( err || samplerate < 8000 || samplerate > 48000 )
-		{
-		return KVRDefaultSamplerateAac;
-		}
-
-
-	return samplerate;    
-    }
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::AACAudioModeL
-// ---------------------------------------------------------------------------
-//	
-
-EXPORT_C TInt VRUtils::AACAudioModeL()
-    {
-
-	TUint mode( KVRDefaultStereoMonoFlag );
-
-    // Fetch audiomode from 
-	TRAPD( err, mode = SettingValueL( KVRStereoMonoFlag, 
-										 KVRDefaultStereoMonoFlag ) );
-
-	if ( err || (mode != 1 && mode != 2))
-		{
-		return KVRDefaultStereoMonoFlag;
-		}
-
-
-	return mode;    
-    }
-
-// ---------------------------------------------------------------------------
-// DriveValid checks the drive is valid or not
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool VRUtils::DriveValid( const TInt aDrive )
-    {
-    TUint status( 0 );
-    TBool flag( ETrue );
-    TInt err = VRUtils::GetDriveInfo( aDrive, status );
-    if ( err != KErrNone )
-    	{ flag = EFalse; }
-    else 
-    	{
-    	if ( !(status & DriveInfo::EDrivePresent) ||
-    			(status & DriveInfo::EDriveLocked) ||
-    			(status & DriveInfo::EDriveReadOnly) ||
-    			(status & DriveInfo::EDriveCorrupt) ||
-    			(status & DriveInfo::EDriveInUse) )
-    		{ flag = EFalse; }
-    	}
-    return flag;
-    
-    }
-
-EXPORT_C TBool VRUtils::MultipleMassStorageAvailable()
-	{
-	TBool flag( ETrue );
-	TInt driveDefaultMassStorage(0);
-	TInt driveRemovableMassStorage(0);
-	TInt defaultStorageErr = DriveInfo::GetDefaultDrive(
-			DriveInfo::EDefaultMassStorage, driveDefaultMassStorage );
-	TInt removableStorageErr = DriveInfo::GetDefaultDrive(
-			DriveInfo::EDefaultRemovableMassStorage,    driveRemovableMassStorage );
-	if ( (defaultStorageErr) || (removableStorageErr) ||
-			( driveDefaultMassStorage == driveRemovableMassStorage ) )
-		{ flag = EFalse; }
-	
-	return flag;
-	}
-
-EXPORT_C TInt VRUtils::GetRemovableMassStorageL()
-	{
-    TInt drive(0);
-    User::LeaveIfError( DriveInfo::GetDefaultDrive(
-    			DriveInfo::EDefaultRemovableMassStorage , drive ) );
-	return drive;
-	}
-
-#ifdef RD_MULTIPLE_DRIVE
-// ---------------------------------------------------------------------------
-// VRUtils::SetMemoDriveL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void VRUtils::SetMemoDriveL( TDriveNumber aDrive )
-	{
-	if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-		{
-		SetSettingValueL( KVRMemoStore, aDrive );
-		}
-	else
-		{
-		__ASSERT_DEBUG( ETrue, User::Panic( KVRPanic, EPanicInvalidSetting ) );
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::MemoDriveL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt VRUtils::MemoDriveL()
-	{
-    TInt defaultDrive = DefaultMemoDriveL();	
-	// Phone memory is the default
-	if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-		{
-		TInt ret = SettingValueL( KVRMemoStore,
-								defaultDrive );
-		return static_cast< TInt >( ret );
-		}
-	else
-		{
-		return defaultDrive;
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::DefaultMemoDriveL
-// 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt VRUtils::DefaultMemoDriveL()
-	{
-    TInt drive(0);
-    User::LeaveIfError( DriveInfo::GetDefaultDrive(DriveInfo::EDefaultMassStorage, drive ) );
-    return drive;
-	}
-
-
-// ---------------------------------------------------------------------------
-// VRUtils::Get drive Info
-// it is for multiple drive feature
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt VRUtils::GetDriveInfo( TInt aDrive, TUint& aDriveInfo )
-    {
-	RFs& iFs = CCoeEnv::Static()->FsSession() ;
-	TInt err = DriveInfo::GetDriveStatus( iFs, aDrive, aDriveInfo ); 
-	return err;
-    }
-#endif
-
-
-//  End of File
Binary file voicerecorder/cenrep/keys_voicerecorder.xls has changed
--- a/voicerecorder/group/App.lnt	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-// Unused header scan
-+e766
-
-// standard lint check
--w2
-
--i..\RecViewInc
--i..\UtilsInc
--i..\AppSrc
--i\epoc32\include\oem
-
-..\AppSrc\*.cpp
--- a/voicerecorder/group/NewService.mmp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*    NewService mmp file
-*	  
-*
-*/
-
-
-#include <platform_paths.hrh>
-
-TARGET		NewService.dll
-TARGETTYPE	dll
-
-// the following UIDs are exported to system include by VoiceRecorderUID.h
-UID			0x1000008d 0x101F8862
-
-VERSION         10.0
-
-LANG SC
-CAPABILITY CAP_GENERAL_DLL
-VENDORID        VID_DEFAULT
-
-SOURCEPATH	../NewServiceSrc
-SOURCE		DllMain.cpp
-SOURCE      CNewFileServiceClientImpl.cpp
-SOURCE      CNewFileServiceDiscovery.cpp
-SOURCE      RNewFileServiceClient.cpp
-SOURCE	CNewFileServiceBase.cpp
-SOURCE	cnewfileserviceserverobserver.cpp
-
-
-USERINCLUDE	 ../NewServiceInc
-USERINCLUDE	 ../group
-USERINCLUDE	 ../NewServiceSrc
-USERINCLUDE	 ../../inc      // ADo level inc dir
-APP_LAYER_SYSTEMINCLUDE
-
-LIBRARY		apparc.lib
-LIBRARY		avkon.lib
-LIBRARY		bafl.lib
-LIBRARY		efsrv.lib
-LIBRARY		eikcore.lib
-LIBRARY		euser.lib
-LIBRARY     	estor.lib 
-LIBRARY		ServiceHandler.lib
--- a/voicerecorder/group/ProjLint.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	Use lint for Project static analysis.
-rem
-
-call "c:\Program Files\tools\Lint\lint" Utils.lnt
-call "c:\Program Files\tools\Lint\lint" RecView.lnt
-call "c:\Program Files\tools\Lint\lint" App.lnt
--- a/voicerecorder/group/RecView.lnt	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-// Unused header scan
-+e766
-
-// standard lint check
--w2
-
--i..\RecViewSrc
--i..\RecViewInc
--i..\UtilsInc
--i\epoc32\include\oem
-
-..\RecViewSrc\*.cpp 
--- a/voicerecorder/group/RecView.mmp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*    RecView mmp file
-*	  
-*
-*/
-
-
-#include <platform_paths.hrh>
-
-TARGET		VoiceRecorderRecView.dll
-TARGETTYPE	dll
-
-// the following UIDs are exported to system include by VoiceRecorderUID.h
-UID			0x1000008d 0x100058CA
-
-VERSION         10.0
-
-LANG SC
-CAPABILITY CAP_GENERAL_DLL
-VENDORID        VID_DEFAULT
-
-SOURCEPATH	../RecViewSrc
-SOURCE		DllMain.cpp
-SOURCE		CVRButtonPanel.cpp
-SOURCE		CVRLabel.cpp
-SOURCE		CVRRecViewContainer.cpp
-SOURCE		CVRRecViewActivationContainer.cpp
-SOURCE		CVRRecViewModel.cpp
-SOURCE		CVRRecView.cpp
-SOURCE		CVRMdaRecorder.cpp 
-SOURCE		CVRSystemEventHandler.cpp
-SOURCE		CVRMemo.cpp
-SOURCE		CVRStateInfoPanel.cpp
-SOURCE		TVRState.cpp
-SOURCE		CVRRemConObserver.cpp
-SOURCE		CVRTonePlayer.cpp
-SOURCE      CVRDiskSpaceWatcher.cpp
-SOURCE      CVRMediaRemovalMonitor.cpp
-
-USERINCLUDE	 ../RecViewSrc
-USERINCLUDE	 ../RecViewInc
-USERINCLUDE	 ../group
-USERINCLUDE	 ../UtilsInc
-USERINCLUDE	 ../../inc      // ADo level inc dir
-
-APP_LAYER_SYSTEMINCLUDE
-
-LIBRARY		apparc.lib
-LIBRARY		avkon.lib
-LIBRARY		bafl.lib
-LIBRARY		cone.lib
-LIBRARY		efsrv.lib
-LIBRARY		eikcoctl.lib
-LIBRARY		eikcore.lib
-LIBRARY		eikctl.lib
-LIBRARY		euser.lib
-LIBRARY		featmgr.lib
-
-LIBRARY		aknnotify.lib
-LIBRARY		commonengine.lib
-LIBRARY		commonui.lib 	// CErrorUI
-LIBRARY		mediaclientaudio.lib
-LIBRARY		sendui.lib		// CSendAppUi
-
-LIBRARY		sysutil.lib	
-LIBRARY		voicerecorderutils.lib
-LIBRARY		aknskins.lib
-LIBRARY		platformenv.lib	// PathInfo
-LIBRARY		apgrfx.lib // RApaLsSession
-LIBRARY		apmime.lib  // TDataType
-LIBRARY		ws32.lib 
-
-LIBRARY		CdlEngine.lib
-LIBRARY		AknIcon.lib
-LIBRARY		centralrepository.lib
-LIBRARY		RemConCoreApi.lib // CRemConCoreApiTarget
-LIBRARY		RemConInterfaceBase.lib // CRemConInterfaceSelector
-LIBRARY		aknlayout2scalable.lib
-LIBRARY         HWRMLightClient.lib  // for light control
-
-LIBRARY     	ServiceHandler.lib // For AIW
-
-#ifdef RD_MULTIPLE_DRIVE
-LIBRARY     PlatformEnv.lib
-#endif
-
-LIBRARY     AudioInputRouting.lib
-// End of File
--- a/voicerecorder/group/RecViewLint.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	Use lint for RecView static analysis.
-rem
-
-"c:\Program Files\tools\Lint\lint" RecView.lnt
-
--- a/voicerecorder/group/Utils.lnt	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-// Unused header scan
-+e766
-
-// standard lint check
--w2
-
--i..\UtilsSrc
--i..\UtilsInc
--i\epoc32\include\oem
-
-..\UtilsSrc\*.cpp
\ No newline at end of file
--- a/voicerecorder/group/Utils.mmp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This is project specification file for the Voice Recorder utils
-*     
-*
-*/
-
-
-#include <platform_paths.hrh>
-#include <bldvariant.hrh>
-
-TARGET          VoiceRecorderUtils.dll
-TARGETTYPE      DLL
-
-// the following UIDs are exported to system include by VoiceRecorderUID.h
-UID             0x1000008d 0x100058CA
-
-VERSION         10.0
-
-CAPABILITY CAP_GENERAL_DLL
-VENDORID        VID_DEFAULT
-
-SOURCEPATH	../UtilsSrc
-SOURCE      TVRRename.cpp
-SOURCE		DllMain.cpp
-SOURCE		VRUtils.cpp  VRUSBStateHanlder.cpp
-
-USERINCLUDE     ../UtilsInc ../group ../../inc ..
-USERINCLUDE     ../RecViewInc
-
-APP_LAYER_SYSTEMINCLUDE
-
-LIBRARY		euser.lib
-LIBRARY		avkon.lib
-LIBRARY		efsrv.lib
-LIBRARY		bafl.lib
-LIBRARY		cone.lib
-LIBRARY		apparc.lib
-LIBRARY		apgrfx.lib
-LIBRARY		apmime.lib
-LIBRARY		aknnotify.lib
-LIBRARY		platformenv.lib  // PathInfo
-LIBRARY		featmgr.lib
-LIBRARY		commonengine.lib
-LIBRARY		centralrepository.lib
-
-#ifdef RD_MULTIPLE_DRIVE
-LIBRARY     PlatformEnv.lib
-#if defined(ARMCC)
-deffile      ../EABI/VoiceRecorderUtilsU.DEF
-#elif defined( WINS )
-deffile      ../BWINS/VoiceRecorderUtilsU.DEF
-#endif
-
-#else
-#if defined(ARMCC)
-deffile      ../EABI/VoiceRecorderUtils.DEF
-#elif defined( WINS )
-deffile      ../BWINS/VoiceRecorderUtils.def
-#endif
-
-#endif
-
-
--- a/voicerecorder/group/UtilsLint.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	Use lint for Utils static analysis.
-rem
-
-"c:\Program Files\tools\Lint\lint" Utils.lnt
--- a/voicerecorder/group/VRConsts.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,149 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This header file defines some constants, string literals and
-*     enumerations used globally in Voice Recorder.
-*
-*/
-
-
-#ifndef __VRCONSTS_H__
-#define __VRCONSTS_H__
-
-// INCLUDES
-#include <e32def.h>
-#include <e32std.h>
-#include <bldvariant.hrh>
-
-// STRING LITERALS
-_LIT( KVRAppResourceFile, "z:VoiceRecorder.rsc" );
-
-_LIT( KVRBitmapFile, "z:VoiceRecorder.mbm" );
-_LIT(KVRGSBitmapFile,"z:VoiceRecorder_aif.mif");
-
-_LIT( KVRMemoStoreSharedDataKey, "MemoStore");
-_LIT( KVRDefaultSpeakerSharedDataKey, "DefaultSpeaker" );
-_LIT( KVRPanic, "VoiceRec" );
-
-_LIT( KVRPluginFile,"z:GSVoiceRecorderPlugin.mif" );
-
-// CONSTANTS
-const TInt KVRBytes60SecAmr( 5000 );
-const TInt KVRMaxTransitions( 13 );
-const TInt KVRDefaultVolume( 4 );
-const TInt KVRDefaultMaxLength( 60 );
-const TInt KVRMaxVolumeSteps( 10 );
-const TInt KVRSecondAsMicroSeconds( 1000000 );
-const TInt KVRMinuteAsMicroSeconds( 60000000 );
-const TInt KVRDisplayUpdateDelay( 250000 );
-
-const TInt KVRHalfSecondAsMilliSeconds( 500 );
-const TInt KVRSecondAsMilliSeconds( 1000 );
-// Critical memory level that has to be taken into account when
-// calculating estimate for Max recording time
-//const TInt KVRCriticalMemoryLevel( 130000 ); // In Bytes
-
-const TInt KVRAACCriticalMemoryLevel( 400000 ); // In Bytes
-
-// This should so big that is covers 60 secs AMR or alternatively
-// 5 secs WAV recording. 
-const TInt KVRRecStartMemBuf( 100000 ); // In Bytes
-
-const TInt KVRSendUiMsgSize( 1024 );
-
-// AVKON volume control values go from 1 to 10
-const TInt KVRVolumeControlMin( 1 );
-const TInt KVRVolumeControlMax( 10 );
-
-const TUint KVRDefaultAmrBitrate( 12200 );
-
-// Time after which the maximum recording time label is updated for
-// the first time in milliseconds
-const TInt KVRFirstEstimateTime( 3000000 );
-
-const TUint  KVRDefaultBitrateAac(64000);
-
-const TInt KVRDefaultSamplerateAac(48000);
-
-const TInt KVRDefaultStereoMonoFlag(1);
-
-const TInt KVRDefaultAacRecordLength(60);
-
-// ENUMERATIONS
-
-// Don't change the order (snagged from SharedDataKeys.h)
-
-enum TVRStateForVD
-	{
-	EVRIdle = 0,
-	EVRRecording,
-	EVRPlaying
-	};
-
-enum TVRAllowScreenSaver
-	{
-	EVRScreenSaverAllowed = 0,
-	EVRScreenSaverNotAllowed
-	};
-
-enum TVRMemoStore
-	{
-	EMemoStorePhoneMemory,
-	EMemoStoreMMC
-	};
-
-enum TVRPanic
-	{
-	EPanicUnknown,				// 0
-	EPanicUnknownViewId,		// 1
-	EPanicFunctionUnknown,		// 2
-	EPanicInvalidContext,		// 3
-	EPanicInvalidState,			// 4
-	EPanicInvalidTransition,	// 5
-	EPanicTooManyTransitions,	// 6
-	EPanicNotAttached,			// 7
-	EPanicAlreadyAttached,		// 8
-	EPanicInvalidSetting		// 9
-	};
-
-// These values are used against a bitmask
-// All values should be powers of 2
-enum TVRFeature
-	{
-	EVRFeatureShowQualitySetting	= 1,
-	EVRFeatureNext					= 2
-	};
-	
-enum TVRFiletype
-    {
-    EVRFileAmr              = 1,
-    EVRFileQCelp,
-    EVRFileWav
-
-#ifdef  __AAC_ENCODER_PLUGIN
-    , EVRFileAAC_LC
-#endif
-    };
-
-// Commands for special update events
-enum TVRUpdateCommand
-    {
-    EVRUpdate               = 1,
-    EVRUpdate1Second,           // Called when 1 second limit is passed during playback
-    EVRUpdateStateChange,       // Called when state machine state has changed
-    EVRUpdatePositionChange,	// Position changes so that update is needed
-    EVRUpdateCBA				// Called when CBA buttons have to be updated
-    };
-
-#endif // __VRCONSTS_H__
--- a/voicerecorder/group/VoiceRecorder.pkg	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +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:	Package file for project VoiceRecorder.
-;
-; VoiceRecorder.pkg
-;
-&EN
-#{"Voice Recorder"},(0x100058CA),1,0,0
-"..\..\epoc32\release\thumb\urel\VoiceRecorder.app"-"!:\system\apps\VoiceRecorder\VoiceRecorder.app"
-"..\..\epoc32\release\thumb\urel\VoiceRecorder.rsc"-"!:\system\apps\VoiceRecorder\VoiceRecorder.rsc"
-"..\..\epoc32\release\thumb\urel\VoiceRecorder.aif"-"!:\system\apps\VoiceRecorder\VoiceRecorder.aif"
-"..\..\epoc32\release\thumb\urel\VoiceRecorder.mbm"-"c:\system\data\VoiceRecorder.mbm"
-"..\..\epoc32\release\thumb\urel\VoiceRecorder_Caption.rsc"-"!:\system\apps\VoiceRecorder\VoiceRecorder_Caption.rsc"
-"..\..\epoc32\release\thumb\urel\VoiceRecorderRecView.dll"-"!:\system\apps\VoiceRecorder\VoiceRecorderRecView.dll"
-"..\..\epoc32\release\thumb\urel\VoiceRecorderUtils.dll"-"!:\system\apps\VoiceRecorder\VoiceRecorderUtils.dll"
--- a/voicerecorder/group/VoiceRecorder.rh	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This file contains declarations for resources of VoiceRecorder
-*     The file can be included only in resource file.
-*     
-*
-*/
-
-
-#include "voicerecorder.hrh"
-
-//  STRUCTURE DEFINITIONS
-
-STRUCT VR_FILETYPE
-	{
-	BYTE typeid;
-	LTEXT mimetype;
-	}
-
-STRUCT VR_FILETYPE_ARRAY
-    {
-    STRUCT filetypes[];		// VR_FILETYPE array
-    }
-            
-// End of File
--- a/voicerecorder/group/VoiceRecorderApp.mmp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,108 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This is project specification file for the Voice Recorder application
-*     
-*
-*/
-
-
-#include <data_caging_paths.hrh>
-#include <platform_paths.hrh>
-#include "VoiceRecorderSingleClick.hrh"
-
-TARGET	VoiceRecorder.exe
-TARGETTYPE    exe
-epocstacksize 0x5000
-
-// the following UIDs are exported to system include by VoiceRecorderUID.h
-UID           0x100039ce 0x100058CA
-
-VERSION         10.0
-
-CAPABILITY	CAP_APPLICATION
-VENDORID	VID_DEFAULT
-
-#ifdef IAD_INCLUDE_SINGLE_CLICK 
-MACRO SINGLE_CLICK_INCLUDED
-#endif
-
-SOURCEPATH	../AppSrc
-
-SOURCE	CVRApplication.cpp 
-SOURCE		CVRDocument.cpp 
-SOURCE		CVRAppUI.cpp
-
-SOURCE		CVRNewFileService.cpp
-SOURCE		CVRAppServer.cpp
-SOURCE     CVRSettingItem.cpp
-
-#ifdef __SERIES60_MMC 
-SOURCE		CVRSettingsDialogMMCSupported.cpp
-#else
-SOURCE		CVRSettingsDialog.cpp
-#endif
-
-
-USERINCLUDE     ../AppSrc
-USERINCLUDE     ../group
-USERINCLUDE	    ../UtilsInc
-USERINCLUDE     ../RecViewInc
-USERINCLUDE	    ../../inc  
-
-APP_LAYER_SYSTEMINCLUDE
-
-LIBRARY		eikcore.lib	
-LIBRARY 	apparc.lib
-LIBRARY 	avkon.lib
-LIBRARY 	cone.lib 
-LIBRARY 	euser.lib
-LIBRARY		commonui.lib
-LIBRARY		sysutil.lib
-
-LIBRARY		VoiceRecorderRecView.lib
-LIBRARY		VoiceRecorderUtils.lib
-LIBRARY		featmgr.lib // featuremanager
-
-// new file service
-LIBRARY		bafl.lib
-LIBRARY		newservice.lib
-
-// settings dialog dependencies
-LIBRARY		eikdlg.lib
-LIBRARY 	eikcoctl.lib
-LIBRARY		hlplch.lib
-LIBRARY     efsrv.lib 
-LIBRARY    commonengine.lib
-
-#ifdef __SERIES60_MMC
-LIBRARY		commondialogs.lib
-#endif
-
-#ifdef RD_MULTIPLE_DRIVE
-LIBRARY     PlatformEnv.lib
-#endif
-
-START RESOURCE    ../group/voicerecorder.rss
-  TARGETPATH    APP_RESOURCE_DIR
-  HEADER
-  LANGUAGE_IDS
-END // RESOURCE
-
-SOURCEPATH		.
-START RESOURCE	VoiceRecorder_reg.rss
-DEPENDS voicerecorder.rsg
-  // Do not change the UID below.
-  TARGETPATH /private/10003a3f/apps
-END
--- a/voicerecorder/group/VoiceRecorderInternalCRKeys.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,157 +0,0 @@
-/*
-* Copyright (c) 2004 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:  Voice Recorder internal Central Repository keys
-*
-*/
-
-
-
-#ifndef VOICERECORDERINTERNALCRKEYS_H
-#define VOICERECORDERINTERNALCRKEYS_H
-
-//  INCLUDES
-#include <e32std.h>
-
-// CONSTANTS
-
-/******************************************************************************
-* Voice Recorder Settings CentRep API
-* Keys under this category are used in defining telephony
-* variant configuration.
-*/
-const TUid KCRUidVoiceRecorder = {0x101F87A3};
-
-/**
- * To allow or prohibit in-call recording.
- *
- * Possible values are 0 (no), 1 (yes).
- * Default value is 1.
- */
-const TUint32 KVRAllowInCallRecording 		= 0x00000000;
-
-/**
- * This key determines which audio format should be used as a default for
- * recording.
- *
- * Possible values = 0 (AMR), 1 (wav) and 2 (mp4)
- * Default value is 0.
- */
-const TUint32 KVRDefaultAudioFormat 		= 0x00000001;
-
-/**
- * Determines which speaker is used, when sound files are played by Voice
- * Recorder.
- *
- * Possible values are 0 ( ESpeakerEarPiece ) and 1 ( ESpeakerIhf )
- * Default value is 1.
- */
-const TUint32 KVRDefaultSpeaker				= 0x00000002;
-
-/**
- * Tells where to store music files recorder by Voice Recorder.
- *
- * Possible values are 0 ( EMemoStorePhoneMemory ) and 1 ( EMemoStoreMMC  )
- * Default value is 0.
- */
-const TUint32 KVRMemoStore					= 0x00000003;
-
-/**
- * Volume setting for the ear piece. Loaded on startup and saved when closing VR.
- *
- * Possible values are currently 0 to 10
- * Default value is 4.
- */
-const TUint32 KVREarPieceVolume				= 0x00000004;
-
-/**
- * Volume setting for the IHF. Loaded on startup and saved when closing VR.
- *
- * Possible values are currently 0 to 10
- * Default value is 4.
- */
-const TUint32 KVRIHFVolume					= 0x00000005;
-
-/**
- * Quality setting for recorded memos.
- *
- * Possible values are 0 (EQualityMMSOptimized), 1 (EQualityHigh AAC-LC supported, or EqualityNormal AAC-LC not supported ), 2 (only when AAC-LC is supported)
- */
-const TUint32 KVRQuality					= 0x00000006;
-
-/**
- * Maximum recording time for memo in minutes. Only used if no stricter
- * limit is set runtime (eg. file size limitation)
- */
-const TUint32 KVRMaxRecordTime				= 0x00000007;
-
-/**
-* Bitmask specifying the elements that should be variated on or off in a
-* release. See VoiceRecorderLocalVariation.txt for description of specific bit.
-*/
-const TUint32 KVRVariationFlags				= 0x00000008;
-
-/**
-* Count of recorded memos. This number is used in name of memo, eg. "Memo(25).amr"
-*/
-const TUint32 KVRMemoCount	    			= 0x00000009;
-
-/**
-* Bitrate used in AMR-NB recording
-*
-* Possible values: 4750, 5150, 5900, 6700, 7400, 7950, 10200, 12200
-* Note that selected bitrate may not be supported by codec. In this case,
-* the default bitrate of 12200 is used.
-*/
-const TUint32 KVRBitrateAmr	    			= 0x00000010;
-
-/**
-* Bitrate used in AAC-LC recording
-*
-* Possible values: 8000 - 288000
-* Note that selected bitrate may not be supported by codec. In this case,
-* the default bitrate of 32000 is used.
-*/
-const TUint32 KVRBitrateAac	    			= 0x00000011;
-
-/**
-* Sampling rate used in AAC-LC recording
-*
-* Possible values: 8, 11.025, 12, 16, 22.05, 24, 32, 44.1 and 48kHz
-* Note that selected bitrate may not be supported by codec. In this case,
-* the default sampling rate of 48 is used.
-*/
-const TUint32 KVRSamplerateAac   		= 0x00000012;
-
-/**
-* Audio mode (mono or stereo) flag
-*
-* Possible values:  1 (mono) and 2 (stereo)
-* the default is 1.
-*/
-const TUint32 KVRStereoMonoFlag  		= 0x00000013;
-
-/**
-* AAC-LC recording Length
-*
-* Possible values: to be determined
-* the default is 60 minutes.
-*/
-const TUint32 KVRAacRecordLength		= 0x00000014;
-
-
-
-
-#endif      // VOICERECORDERINTERNALCRKEYS_H
-
-// End of File
--- a/voicerecorder/group/VoiceRecorderPrivatePSKeys.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-/*
-* Copyright (c) 2004 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:  Voice Recorder Internal Publish & Subscribe keys
-*
-*/
-
-
-
-#ifndef VOICERECORDERPSKEYS_H
-#define VOICERECORDERPSKEYS_H
-
-//  INCLUDES
-#include <e32std.h>
-
-// CONSTANTS
-
-/******************************************************************************
-* Voice Recorder Private Settings Pub&Sub API
-* Keys under this category are used within Voice Recorder
-*/
-const TUid KPSUidVoiceRecorder = {0x101F87A4};
-
-/**
- * Current mode of Voice Recorder. (Recording, playing etc.)
- * Possible values are 	EIdle = 0, ERecording,	EPlaying
- * Default value is 0.
- */
-const TUint32 KVoiceRecorderMode	= 0x00000000;
-
-#endif      // VOICERECORDERPSKEYS_H
-
-// End of File
--- a/voicerecorder/group/VoiceRecorderSingleClick.hrh	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     bldvariant headers for project Voice Recorder
-*
-*/
-
-
-#ifndef VOICERECORDERSINGLECLICK_HRH_
-#define VOICERECORDERSINGLECLICK_HRH_
-
-#define IAD_INCLUDE_SINGLE_CLICK
-
-
-#endif /* VOICERECORDERSINGLECLICK_HRH_ */
-
-// End of File
--- a/voicerecorder/group/VoiceRecorder_reg.rss	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2004-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:  register resource file of VoiceRecorder
-*
-*/
-
-
-#include <appinfo.rh>
-#include <voicerecorder.rsg>
-#include <VoiceRecorderUID.h>
-#include <data_caging_paths_strings.hrh>
-
-UID2 KUidAppRegistrationResourceFile
-UID3 KVoiceRecorderAppUID3
-
-RESOURCE APP_REGISTRATION_INFO
-    {
-    app_file = "VoiceRecorder";
-    hidden        = KAppNotHidden;
-    embeddability = KAppEmbeddable;       
-    
-   	localisable_resource_file = APP_RESOURCE_DIR"\\VoiceRecorder";
-    localisable_resource_id = R_VR_LOCALISABLE_APP_INFO; 
-    }
-
-// End of File
--- a/voicerecorder/group/backup_registration.xml	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-<!-- Copyright (c) 2005, Nokia. Inc. All Rights Reserved -->
-<!-- Profiles backup registration file -->
-
-<backup_registration>
-
-    <proxy_data_manager sid = "0x10202BE9" />
-
-    <restore requires_reboot = "no"/>
-
-</backup_registration>
-
--- a/voicerecorder/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
-* Copyright (c) 2002-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: 
-*     This file provides the information required for building
-*     Voice Recorder.
-*
-*/
-
-
-#include <platform_paths.hrh>
-
-PRJ_PLATFORMS
-  DEFAULT
-
-//  Help exports
-#include "../help/group/bld.inf"
-
-PRJ_EXPORTS
-../sis/VoiceRecorder_stub.sis   /epoc32/data/z/system/install/VoiceRecorder_stub.SIS
-../rom/Voicerecorder.iby                     CORE_APP_LAYER_IBY_EXPORT_PATH(Voicerecorder.iby)
-../rom/VoicerecorderResources.iby      LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(VoicerecorderResources.iby)
-../loc/voicerecorder.loc                 APP_LAYER_LOC_EXPORT_PATH(voicerecorder.loc)
-
-// Generic configuration interface for component cenrep settings  
-// voicerecorder_101F87A3 implementation specifics for cenrep data
-../Conf/voicerecorder.confml             APP_LAYER_CONFML(voicerecorder.confml)
-../Conf/voicerecorder_101F87A3.crml 	 APP_LAYER_CRML(voicerecorder_101F87A3.crml)
-
-// Backup registration file
-backup_registration.xml z:/private/100058CA/backup_registration.xml
-
-PRJ_EXTENSIONS
-START EXTENSION s60/mifconv
-OPTION TARGETFILE voicerecorder_aif.mif
-OPTION SOURCES  -c8,8 qgn_menu_voirec
-END
-
-START EXTENSION s60/mifconv
-OPTION TARGETFILE voicerecorder.mif
-OPTION HEADERFILE voicerecorder.mbg
-OPTION SOURCES  -c8,1 qgn_indi_vorec_button_forw\
-		-c8,8 qgn_indi_vorec_button_forw_inactive\
-		-c8,1 qgn_indi_vorec_button_pause\
-		-c8,8 qgn_indi_vorec_button_pause_inactive\
-		-c8,1 qgn_indi_vorec_button_play\
-		-c8,8 qgn_indi_vorec_button_play_inactive\
-		-c8,1 qgn_indi_vorec_button_rec\
-		-c8,8 qgn_indi_vorec_button_rec_inactive\
-		-c8,1 qgn_indi_vorec_button_rew\
-		-c8,8 qgn_indi_vorec_button_rew_inactive\
-		-c8,1 qgn_indi_vorec_button_stop\
-		-c8,8 qgn_indi_vorec_button_stop_inactive
-END
-
-START EXTENSION s60/mifconv
-OPTION TARGETFILE gsvoicerecorderplugin.mif
-OPTION HEADERFILE gsvoicerecorderplugin.mbg
-OPTION SOURCES  -c8,8 qgn_prop_set_apps_voirec
-END
-
-PRJ_MMPFILES
-Utils.mmp
-RecView.mmp
-NewService.mmp
-VoiceRecorderApp.mmp
-../gsplugin/group/GSVoiceRecorderPlugin.mmp
-
--- a/voicerecorder/group/lscan.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	Checks voicerecorder code respects the naming
-rem             	conventions for leaving functions.
-rem
-
-@echo off
-leavescan ..\RecViewSrc\CVRButtonPanel.cpp
-leavescan ..\RecViewSrc\CVRLabel.cpp
-leavescan ..\RecViewSrc\CVRRecViewContainer.cpp
-leavescan ..\RecViewSrc\CVRRecViewModel.cpp
-leavescan ..\RecViewSrc\CVRRecView.cpp
-leavescan ..\RecViewSrc\CVRMdaRecorder.cpp 
-leavescan ..\RecViewSrc\CVRSystemEventHandler.cpp
-leavescan ..\RecViewSrc\CVRMemo.cpp
-leavescan ..\RecViewSrc\CVRStateInfoPanel.cpp
-leavescan ..\RecViewSrc\TVRState.cpp
-leavescan ..\UtilsSrc\VRUtils.cpp
-leavescan ..\UtilsSrc\CVRFileRecognizer.cpp
-leavescan ..\AppSrc\CVRApplication.cpp 
-leavescan ..\AppSrc\CVRDocument.cpp 
-leavescan ..\AppSrc\CVRAppUI.cpp
-leavescan ..\AppSrc\CVRNewFileService.cpp
-leavescan ..\AppSrc\CVRAppServer.cpp
-leavescan ..\NewServiceSrc\CNewFileServiceClientImpl.cpp
-leavescan ..\NewServiceSrc\CNewFileServiceDiscovery.cpp
-leavescan ..\NewServiceSrc\RNewFileServiceClient.cpp
-leavescan ..\NewServiceSrc\CNewFileServiceBase.cpp
--- a/voicerecorder/group/moveudeb.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	Move voicerecorder file from \udeb path to \urel path.
-rem
-
-move \epoc32\release\thumb\udeb\voicerecorder* \epoc32\release\thumb\urel\
\ No newline at end of file
--- a/voicerecorder/group/voicerecorder.hrh	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,172 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     Defines commands and control identifiers.
-*     The file can be included in C++ or resource file.
-*
-*/
-
-
-#ifndef __VOICERECORDER_HRH_
-#define __VOICERECORDER_HRH_
-
-// INCLUDES
-#include "VoiceRecorderContexts.h"
-#include <bldvariant.hrh>
-
-enum TVRDialogIds
-	{
-	EVRSettingsListboxId = 1	//Dialog control ID can't be zero
-	};
-
-enum TVRButtonStates
-	{
-	ENormal = 0,
-	EDimmed,
-	EPressed
-	};
-
-enum TVRCommands
-	{
-	ECmdPlay = 100,			// Don't override EIKON IDs..
-	ECmdPause,
-	ECmdStop,
-	ECmdAutoStopInterrupted,
-	ECmdAutoStopAtEnd,
-	ECmdSilentStop,
-	ECmdRecord,
-	ECmdRewind,
-	ECmdForward,
-	ECmdRecordNew,
-	ECmdOpen,
-	ECmdDelete,
-	ECmdAddToPinboard,
-	ECmdRename,
-	ECmdSaveAttachment,
-	ECmdOk,
-	ECmdCancel,
-	ECmdSettings,
-	ECmdEditListCascade,
-	ECmdChange,
-	ECmdHelp,
-	ECmdEndKey,
-	ECmdCancelNote,
-	ECmdEmbeddedRecordingReady,
-	ECmdDisconnectCall,
-	ECmdNewFileServiceNotify,
-	ECmdMSK,			// When Middle Softkey is pressed
-	ECmdSetNewPosition,		// Progress Bar Touch	
-	ECmdNOP,			// No operation
-	ECmdGoToMyClips,	
-	ECmdUSBChange,
-	
-	ECmdSendVia			// This MUST be the last entry
-	};
-
-enum TVRRecViewStates
-	{
-	EStateIdle = 0,
-	EStateDeleted,
-	EStateRecording,
-	EStateRecordEmbedded,
-	EStatePlaying,
-	EStatePlayingPaused,
-	EStateRecordingPaused,
-	EStateIdleEmbedded,
-	EStateIdleRecordEmbedded,
-	EStateNRTIdle,
-	EStateNRTPlaying,
-	EStateDisableButtons, // all buttons disabled for no in-call recording feature
-
-    ENumStates,		// this must be the last line
-	EStateInitial = 255
-	};
-	
-enum TVRRecViewLabels
-	{
-	ELabelMemoName = 0,
-	ELabelMemoDate,
-	ELabelMemoQuality,
-	ELabelBarMin,
-	ELabelBarMax,
-	ELabelStatus,
-	ELabelQualityText,
-	ENumLabels		// this must be the last line
-	};
-
-enum TVRFunctions
-	{
-	EFunctionNop = 0,
-	EFunctionPlay,
-	EFunctionStop,
-	EFunctionRecord,
-	EFunctionPause,
-	EFunctionForward,
-	EFunctionRewind,
-	EFunctionRecordNew,
-	EFunctionDelete,
-	EFunctionRename,
-	EFunctionStopAndSave,
-	EFunctionStopWithNote,
-	EFunctionOk,
-	EFunctionCancel,
-	EFunctionAutoStopAndSave,
-	EFunctionSilentStopAndSave,
-	EFunctionAutoStop,
-	EFunctionNRTStop,
-	EFunctionNRTAutoStop,
-	EFunctionSaveBeforeExit,
-	EFunctionSetNewPosition,	// Progress Bar Touch
-	ENumFunctions
-	};
-	
-enum TVRSpeaker
-	{
-	ESpeakerEarPiece,
-	ESpeakerIhf
-	};
-
-// EQualityMMSOptimized -> save file as amr
-// EQualityNormal is used only when mp4 is supported,  save file as wav
-// EQualityHigh -> when mp4 is supported, save file as mp4, otherwise save as wave 
-enum TVRQuality
-	{
-	EQualityMMSOptimized,
-
-#ifdef __AAC_ENCODER_PLUGIN
-    EQualityNormal,
-#endif
-
-  	EQualityHigh
-	};
-
-enum TVRButtons
-    {
-    EButtonPlay = 0,
-    EButtonStop,
-    EButtonRecord,
-    EButtonRewind,
-    EButtonForward
-    };
-
-enum TVRSettingFeatures
-    {
-    ESettingQuality = 0,
-    ESettingMemoStore
-    };
-
-#define VRMEMONAMEMAXLENGTH 20
-#define VRLABELMAXLENGTH 32
-
-#endif // __VOICERECORDER_HRH_
--- a/voicerecorder/group/voicerecorder.rss	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2255 +0,0 @@
-/*
-* Copyright (c) 2002 - 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: 
-*     Voice Recorder resource file
-*	  
-*
-*/
-
-#include <bldvariant.hrh>
-#include <data_caging_paths_strings.hrh>
-
-#include <e32keys.h>
-#include <eikon.rh>   
-#include <avkon.rsg>
-#include <eikon.rsg>
-#include <avkon.hrh>
-#include <avkon.rh>
-#include <uikon.rh>
-#include <appinfo.rh>
-#include <avkon.loc>
-#include <avkon.mbg>
-
-#include <pathconfiguration.hrh>
-#include <CommonDialogs.rh>
-
-#include "RecView.rh"
-#include <voicerecorder.mbg>
-#include "voicerecorder.hrh"
-#include "VoiceRecorder.rh"
-#include <voicerecorder.loc>
-#include <mpxwaitnotedialog.loc>
-
-NAME VREC
-
-RESOURCE RSS_SIGNATURE { }
-
-RESOURCE TBUF { buf = qtn_vorec_first_memo_name; } //default document name
-
-RESOURCE EIK_APP_INFO
-	{
-	}
-
-// For the scalable AIF
-RESOURCE LOCALISABLE_APP_INFO r_vr_localisable_app_info
-    {
-    short_caption = qtn_vorec_app_menu_grid;
-    caption_and_icon = CAPTION_AND_ICON_INFO
-        {
-        caption = qtn_vorec_app_title;
-#ifdef __SCALABLE_ICONS
-		number_of_icons = 1;
-		icon_file = APP_BITMAP_DIR"\\VoiceRecorder_aif.mif";
-#else
-        number_of_icons = 2;
-        icon_file = APP_BITMAP_DIR"\\VoiceRecorder_aif.mbm";
-#endif
-        };
-    }
-
-
-RESOURCE AVKON_VIEW r_vr_recorder_view
-	{
-	menubar = r_vr_recview_menubar_empty;  
-	cba = r_vr_softkeys_options_back_select;	
-	}
-
-
-RESOURCE MENU_PANE r_vr_editlist_menupane
-	{
-	items =
-		{
-		MENU_ITEM { command = EAknCmdMark;		txt=qtn_options_list_mark_one; },
-		MENU_ITEM { command = EAknCmdUnmark;	txt=qtn_options_list_unmark_one; },
-		MENU_ITEM { command = EAknMarkAll;		txt=qtn_options_list_mark_all; },
-		MENU_ITEM { command = EAknUnmarkAll;	txt=qtn_options_list_unmark_all; }
-		};
-	}
-
-
-RESOURCE MENU_BAR r_vr_recview_menubar_empty
-	{
-	titles=
-		{
-		};
-	}
-
-RESOURCE MENU_BAR r_vr_recview_menubar_default
-	{
-	titles=
-		{
-		MENU_TITLE { menu_pane = r_vr_rec_menupane_default; }
-		};
-	}
-
-
-RESOURCE MENU_PANE r_vr_rec_menupane_default
-	{
-	items=
-		{
-		MENU_ITEM { command = ECmdRecord;		txt = qtn_vorec_rec_new; },
-		MENU_ITEM { command = ECmdDelete;		txt = qtn_vorec_delete; },
-		MENU_ITEM { command = ECmdRename;		txt = text_voice_rec_edit_title; },
-		MENU_ITEM { command = ECmdGoToMyClips;          txt = qtn_vorec_goto_my_clips; },
-#if defined ( __SERIES60_MMC )
-		MENU_ITEM { command = ECmdSettings; 	txt = qtn_vorec_settings; },
-#endif
-
-		MENU_ITEM { command = ECmdHelp; 		txt = qtn_options_help; },
-		MENU_ITEM { command = EAknCmdExit;		txt = qtn_options_exit; }
-		};
-	}
-
-RESOURCE MENU_BAR r_vr_recview_menubar_deleted
-	{
-	titles=
-		{
-		MENU_TITLE { menu_pane = r_vr_rec_menupane_deleted; }
-		};
-	}
-
-RESOURCE MENU_PANE r_vr_rec_menupane_deleted
-	{
-	items=
-		{
-		MENU_ITEM { command = ECmdRecord;		txt = qtn_vorec_rec_new; },
-		MENU_ITEM { command = ECmdGoToMyClips;  txt = qtn_vorec_goto_my_clips; },
-#if defined ( __SERIES60_MMC )
-		MENU_ITEM { command = ECmdSettings; 	txt = qtn_vorec_settings; },
-#endif
-
-		MENU_ITEM { command = ECmdHelp; 		txt = qtn_options_help; },
-		MENU_ITEM { command = EAknCmdExit; 		txt = qtn_options_exit; }
-		};
-	}
-
-RESOURCE MENU_BAR r_vr_recview_menubar_viewer
-	{
-	titles=
-		{
-		MENU_TITLE { menu_pane = r_vr_rec_menupane_viewer; }
-		};
-	}
-
-RESOURCE MENU_PANE r_vr_rec_menupane_viewer
-	{
-	items=
-		{
-		MENU_ITEM { command = ECmdSaveAttachment;	txt = qtn_vorec_save_mail_atta; },
-		MENU_ITEM { command = ECmdHelp; 			txt = qtn_options_help; },
-		MENU_ITEM { command = EAknCmdExit;			txt = qtn_options_exit; }
-		};
-	}
-
-// In-call recording disabled menu
-RESOURCE MENU_BAR r_vr_recview_menupane_incall_recording_disabled
-	{
-	titles=
-		{
-		MENU_TITLE { menu_pane = r_vr_rec_menupane_incall_recording_disabled; }
-		};
-	}
-
-RESOURCE MENU_PANE r_vr_rec_menupane_incall_recording_disabled
-	{
-	items=
-		{
-		MENU_ITEM { command = ECmdGoToMyClips;  txt = qtn_vorec_goto_my_clips; },
-#if defined ( __SERIES60_MMC )
-		MENU_ITEM { command = ECmdSettings; 	txt = qtn_vorec_settings; },
-#endif
-		MENU_ITEM { command = ECmdHelp; 		txt = qtn_options_help; },
-		MENU_ITEM { command = EAknCmdExit; 		txt = qtn_options_exit; }
-		};
-	}
-
-
-
-RESOURCE TBUF r_qtn_query_common_conf_delete { buf = qtn_query_common_conf_delete; }
-RESOURCE TBUF r_qtn_vorec_quest_delete_many { buf = qtn_vorec_quest_delete_many; }
-
-RESOURCE TBUF r_qtn_fldr_overwrite_query { buf = qtn_fldr_overwrite_query; }
-RESOURCE TBUF r_qtn_fldr_item_name_prmpt { buf = qtn_fldr_item_name_prmpt; }
-RESOURCE TBUF r_qtn_fldr_illegal_characters { buf = qtn_fldr_illegal_characters; }
-RESOURCE TBUF r_qtn_fldr_cant_rename_item { buf = qtn_fldr_cant_rename_item; }
-
-// MMC usage related strings
-
-RESOURCE TBUF r_qtn_vorec_set_store { buf = qtn_vorec_set_store; }
-RESOURCE TBUF r_qtn_memc_vorec_note1 { buf = qtn_memc_vorec_note1; }
-RESOURCE TBUF r_qtn_memc_vorec_note2 { buf = qtn_memc_vorec_note2; }
-RESOURCE TBUF r_qtn_memc_unlock_query1 { buf = qtn_memc_unlock_query1; }
-RESOURCE TBUF r_qtn_memc_set_password_error { buf = qtn_memc_set_password_error; }
-RESOURCE TBUF r_qtn_memc_readonly { buf = qtn_memc_memorycard_read_only; }
-RESOURCE TBUF r_qtn_ccor_insert_mmc { buf = qtn_ccor_insert_mmc; }
-RESOURCE TBUF r_qtn_usb_mode_note_mode { buf = qtn_usb_mode_note_mode_activated; }
-
-RESOURCE DIALOG r_insert_f_card_dialog
-    {
-    flags = EGeneralQueryFlags | EEikDialogFlagWait | EEikDialogFlagNoBackgroundFade;
-    buttons = R_AVKON_SOFTKEYS_OK_CANCEL__OK;
-    items =
-    		{
-    		DLG_LINE
-    			{
-    			type = EAknCtQuery;
-    			id = EGeneralQuery;
-    			control = AVKON_CONFIRMATION_QUERY 
-    				{ 
-    				layout = EConfirmationLayout;
-    				};
-    			}
-    		};
-    } 
-
-RESOURCE DIALOG r_insert_f_usb_plug_in_dialog
-    {
-    flags = EGeneralQueryFlags | EEikDialogFlagWait | EEikDialogFlagNoBackgroundFade;
-    buttons = R_AVKON_SOFTKEYS_OK_EMPTY;
-    items =
-    		{
-    		DLG_LINE
-    			{
-    			type = EAknCtQuery;
-    			id = EGeneralQuery;
-    			control = AVKON_CONFIRMATION_QUERY 
-    				{ 
-    				layout = EConfirmationLayout;
-    				};
-    			}
-    		};
-    } 
-
-// Settings dialog stuff needed when there's an MMC (default store setting)
-// or the voice key is missing (defauly speaker setting)
-
-RESOURCE MENU_PANE r_vr_settings_menupane
-	{
-	items=
-		{
-		MENU_ITEM { command = ECmdChange;		txt = qtn_vorec_settings_change; flags = EEikMenuItemAction ; },
-		MENU_ITEM { command = ECmdHelp; 		txt = qtn_options_help; },
-		MENU_ITEM { command = EEikCmdExit; 		txt = qtn_options_exit; }
-		};
-	}
-
-RESOURCE MENU_BAR r_vr_settings_menubar
-	{
-	titles=
-		{
-		MENU_TITLE { menu_pane = r_vr_settings_menupane; }
-		};
-	}
-
-RESOURCE DIALOG r_vr_settings_dialog
-	{
-	buttons = r_vr_softkeys_options_back_change;
-	flags = EEikDialogFlagWait | EEikDialogFlagNoDrag
-			| EEikDialogFlagCbaButtons | EEikDialogFlagNoTitleBar
-			| EEikDialogFlagFillAppClientRect;
-	items =
-		{
-		DLG_LINE
-			{
-			type = EAknCtSettingListBox;
-			id = EVRSettingsListboxId;
-			itemflags = EEikDlgItemTakesEnterKey | EEikDlgItemOfferAllHotKeys;
-			control = LISTBOX
-				{
-				flags = EAknListBoxSelectionList;
-				};
-			}
-		};
-	}
-
-RESOURCE TBUF r_qtn_vorec_set_ihf { buf = qtn_vorec_set_ihf; }
-RESOURCE TBUF r_qtn_vorec_set_quality { buf = qtn_vorec_set_quality; }
-
-RESOURCE AVKON_POPUP_SETTING_TEXTS r_vr_settings_default_speaker_texts
-	{
-	setting_texts_resource = r_vr_settings_default_speaker;
-	popped_up_texts_resource = r_vr_settings_default_speaker_popup;
-	}
-
-RESOURCE AVKON_POPUP_SETTING_TEXTS r_vr_settings_quality_texts
-	{
-	setting_texts_resource = r_vr_settings_quality;
-	popped_up_texts_resource = r_vr_settings_quality_popup;
-	}
-
-RESOURCE ARRAY r_vr_settings_default_speaker
-	{
-	items=
-		{
-		AVKON_ENUMERATED_TEXT { value = ESpeakerEarPiece; text = qtn_vorec_settings_ihf_ear; },
-		AVKON_ENUMERATED_TEXT { value = ESpeakerIhf; text = qtn_vorec_settings_ihf_hf; }
-		};
-	}
-
-RESOURCE ARRAY r_vr_settings_default_speaker_popup
-	{
-	items=
-		{
-		LBUF { txt = qtn_vorec_settings_ihf_ear; },
-		LBUF { txt = qtn_vorec_settings_ihf_hf; }
-		};
-	}
-
-RESOURCE ARRAY r_vr_settings_quality
-	{
-	items=
-		{
-		AVKON_ENUMERATED_TEXT { value = EQualityMMSOptimized; text = qtn_vorec_settings_quality_mms_optimized; },
-
-#ifdef  __AAC_ENCODER_PLUGIN
-		AVKON_ENUMERATED_TEXT { value = EQualityNormal; text = qtn_vorec_settings_quality_normal; },
-#endif
-
-		AVKON_ENUMERATED_TEXT { value = EQualityHigh; text = qtn_vorec_settings_quality_high; }
-		};
-	}
-
-RESOURCE ARRAY r_vr_settings_quality_popup
-	{
-	items=
-		{
-		LBUF { txt = qtn_vorec_settings_quality_mms_optimized; },
-
-#ifdef  __AAC_ENCODER_PLUGIN
-		LBUF { txt = qtn_vorec_settings_quality_normal; },
-#endif
-
-		LBUF { txt = qtn_vorec_settings_quality_high; }
-		};
-	}
-
-RESOURCE POPUP_SETTING_LIST r_vr_settings_popup_control
-	{
-	}
-
-RESOURCE AVKON_SETTING_PAGE r_vr_settings_default_speaker_page
-	{
-	type = EAknCtPopupSettingList;
-        softkey_resource = R_AVKON_SOFTKEYS_OK_CANCEL;
-	editor_resource_id = r_vr_settings_popup_control;
-	}
-
-RESOURCE TBUF r_vr_video_call_infonote_label { buf = qtn_vorec_info_video_call_ongoing; }
-RESOURCE TBUF r_vr_internet_call_infonote_label { buf = qtn_vorec_info_internet_call_ongoing; }
-RESOURCE TBUF r_vr_save_waitnote_label { buf = qtn_vorec_wait_saving_memo; }
-RESOURCE TBUF r_vr_stop_save_waitnote_label { buf = qtn_vorec_wait_stop_saved; }
-RESOURCE TBUF r_vr_stop_infonote_label { buf = qtn_vorec_info_record_stopped; }
-RESOURCE TBUF r_vr_corrupt_infonote_label { buf = qtn_vorec_info_memo_corrupted; }
-RESOURCE TBUF r_vr_unsupported_infonote_label { buf = qtn_vorec_info_memo_unsupported; }
-RESOURCE TBUF r_vr_server_error_infonote_label { buf = qtn_vorec_info_server_error; }
-RESOURCE TBUF r_vr_memory_warning { buf = qtn_memlo_memory_running_out; }
-RESOURCE TBUF r_vr_memory_mmc_warning { buf = qtn_memlo_mmc_memory_running_out; }
-RESOURCE TBUF r_vr_memory_low_stop_warning { buf = qtn_memlo_not_enough_memory; }
-
-// Quality strings for UI
-RESOURCE TBUF r_vorec_quality_mms_optimized { buf = qtn_vorec_quality_mms_optimized; }
-
-#ifdef __AAC_ENCODER_PLUGIN
-RESOURCE TBUF r_vorec_quality_normal { buf = qtn_vorec_quality_normal; }
-#endif
-
-RESOURCE TBUF r_vorec_quality_high { buf = qtn_vorec_quality_high; }
-
-// Memo naming strings
-RESOURCE TBUF r_vorec_first_memo_name { buf = qtn_vorec_first_memo_name; }
-RESOURCE TBUF r_vorec_memo_name { buf = qtn_vorec_memo_name; }
-RESOURCE TBUF r_vorec_default_memo_name { buf = qtn_vorec_default_memo_name; }
-
-RESOURCE DIALOG r_vr_rename_dialog
-	{
-	flags = EEikDialogFlagWait|EEikDialogFlagNoDrag | EEikDialogFlagNoTitleBar | EEikDialogFlagCbaButtons | EEikDialogFlagNoShadow;
-	buttons = R_AVKON_SOFTKEYS_OK_CANCEL__OK;
-	items =
-		{
-		DLG_LINE
-			{
-			type = EAknCtQuery;
-			id = EGeneralQuery;
-			control = AVKON_DATA_QUERY 
-				{
-				layout = EDataLayout;
-				label = qtn_fldr_item_name_prmpt;
-				control = EDWIN 
-					{ 
-					flags = EEikEdwinNoHorizScrolling | EEikEdwinResizable
-						| EEikEdwinNoLineOrParaBreaks;
-					maxlength = VRMEMONAMEMAXLENGTH;
-					lines = 1;
-					width = 16;
-					};
-				};
-			}
-		};
-	}
-
-// For remote recording
-RESOURCE DIALOG r_vr_confirmation_query
-	{
-	flags = EGeneralQueryFlags;
-	buttons = R_AVKON_SOFTKEYS_YES_NO;
-	// r_vr_softkeys_ok_cancel;
-	items =
-		{
-		DLG_LINE
-			{
-			type = EAknCtQuery;
-			id = EGeneralQuery;
-			control = AVKON_CONFIRMATION_QUERY 
-				{ 
-				layout = EConfirmationLayout;
-				};
-			}
-		};
-	}
-
-
-// ------- RECORDER VIEW STUFF ---------------------------------------
-
-RESOURCE VR_STATEMACHINE r_vr_recview_states
-	{
-	labelsets =
-		{
-		VR_LABELSET
-			{
-			labels =
-				{
-				LBUF { txt = qtn_vorec_memo_label; },
-				LBUF { txt = qtn_vorec_date_label; },
-				LBUF { txt = qtn_vorec_quality_label; },				
-				LBUF { txt = qtn_vorec_min_label; },
-				LBUF { txt = qtn_vorec_time_indic; },
-				LBUF { txt = " "; }, // this is a placeholder for the status text, don't touch :-)
-				LBUF { txt = " "; } // this is a placeholder for quality text (MMS or High)
-				};
-			},
-
-		VR_LABELSET
-			{
-			},
-
-		VR_LABELSET // for .rng:s
-			{
-			labels =
-				{
-				LBUF { txt = qtn_vorec_memo_label; },
-				LBUF { txt = qtn_vorec_date_label; },
-				LBUF { txt = " "; } // this is a placeholder for the status text, don't touch :-)
-				};
-			}
-		};
-	labelLayouts =
-		{
-		VR_LABEL_LINK { euroLabelId = r_vr_statusinfo_label_1_euro; 
-						apacLabelId = r_vr_statusinfo_label_1_apac;
-						arabicHebrewLabelId = r_vr_statusinfo_label_1_arabic_hebrew;
-					  },
-		VR_LABEL_LINK { euroLabelId = r_vr_statusinfo_label_2_euro; 
-						apacLabelId = r_vr_statusinfo_label_2_apac;
-						arabicHebrewLabelId = r_vr_statusinfo_label_2_arabic_hebrew;
-					  },
-		VR_LABEL_LINK { euroLabelId = r_vr_statusinfo_label_3_euro; 
-						apacLabelId = r_vr_statusinfo_label_3_apac;
-						arabicHebrewLabelId = r_vr_statusinfo_label_3_arabic_hebrew;
-					  },
-		VR_LABEL_LINK { euroLabelId = r_vr_statusinfo_label_4_euro; 
-						apacLabelId = r_vr_statusinfo_label_4_apac;
-						arabicHebrewLabelId = r_vr_statusinfo_label_4_arabic_hebrew;
-					  },
-		VR_LABEL_LINK { euroLabelId = r_vr_statusinfo_label_5_euro; 
-						apacLabelId = r_vr_statusinfo_label_5_apac;
-						arabicHebrewLabelId = r_vr_statusinfo_label_5_arabic_hebrew;
-					  },
-		VR_LABEL_LINK { euroLabelId = r_vr_statusinfo_label_6_euro; 
-						apacLabelId = r_vr_statusinfo_label_6_apac;
-						arabicHebrewLabelId = r_vr_statusinfo_label_6_arabic_hebrew;
-					  }
-		};
-	states =
-		{
-		// memo_open
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_default;
-			cba = r_vr_softkeys_options_exit_select;
-			status = "";
-			labelSetId = 0;
-			hasVolumeControl = 1;
-			focusButton = 0;
-			stateID = EStateIdle; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = ENormal; }
-				};
-			},
-		// memo_deleted
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_deleted;
-			cba = r_vr_softkeys_options_exit_select;
-			status = "";
-			labelSetId = 1;
-			focusButton = 2;
-			stateID = EStateDeleted; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = EDimmed; }
-				};
-			},
-		// memo_recording
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_empty;
-			cba = r_vr_softkeys_pause_stop_select;
-			status = qtn_vorec_recording;
-			labelSetId = 0;
-			focusButton = 1;
-			stateID = EStateRecording; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdPause; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = EDimmed; }
-				};
-			},
-		// memo_record_embed
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_empty;
-			cba = r_vr_softkeys_record_back_select;
-			status = "";
-			labelSetId = 1;
-			focusButton = 2;
-			stateID = EStateRecordEmbedded; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = EDimmed; }
-				};
-			},
-		// memo_playing
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_empty;
-			cba = r_vr_softkeys_pause_stop_select;
-			status = qtn_vorec_playback;
-			labelSetId = 0;
-			hasVolumeControl = 1;
-			focusButton = 1;
-			stateID = EStatePlaying; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPause; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = ENormal; }
-				};
-			},
-		// memo_paused_playback
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_empty;
-			cba = r_vr_softkeys_play_stop_select;
-			status = qtn_vorec_paused;
-			labelSetId = 0;
-			hasVolumeControl = 1;
-			focusButton = 0;
-			stateID = EStatePlayingPaused; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = ENormal; }
-				};
-			},
-		// memo_paused_record
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_empty;
-			cba = r_vr_softkeys_record_stop_select;
-			status = qtn_vorec_paused;
-			labelSetId = 0;
-			focusButton = 2;
-			stateID = EStateRecordingPaused; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = EDimmed; }
-				};
-			},
-		// memo_open_embed
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_viewer;
-			cba = r_vr_softkeys_options_back_select;
-			status = "";
-			labelSetId = 0;
-			hasVolumeControl = 1;
-			focusButton = 0;
-			stateID = EStateIdleEmbedded; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = ENormal; }
-				};
-			},
-		// memo_record_embed_idle
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_empty;
-			cba = r_vr_softkeys_ok_cancel_select;
-			status = "";
-			labelSetId = 0;
-			hasVolumeControl = 1;
-			focusButton = 0;
-			stateID = EStateIdleRecordEmbedded; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = ENormal; }
-				};
-			},
-		// nokia_ringing_tone_idle
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_viewer;
-			cba = r_vr_softkeys_options_back_select;
-			status = "";
-			labelSetId = 2;
-			hasVolumeControl = 1;
-			hasProgressBar = 0;
-			focusButton = 0;
-			stateID = EStateNRTIdle; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = EDimmed; }
-				};
-			},
-		// nokia_ringing_tone_playing
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menubar_viewer;
-			cba = r_vr_softkeys_stop_select;
-			status = "";
-			labelSetId = 2;
-			hasVolumeControl = 1;
-			hasProgressBar = 0;
-			focusButton = 1;
-			stateID = EStateNRTPlaying; 
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdStop; state = ENormal; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdForward; state = EDimmed; }
-				};
-			},
-		// disable_buttons
-		VR_VISUAL_STATE
-			{
-			menubar = r_vr_recview_menupane_incall_recording_disabled;
-			cba = R_AVKON_SOFTKEYS_OPTIONS_EXIT;
-			status = "";
-			labelSetId = 0;
-			hasVolumeControl = 0;
-			hasProgressBar = 0;
-			focusButton = 0;
-			stateID = EStateDisableButtons;
-			buttons = 
-				{
-				VR_BUTTON_INFO { commandId = ECmdPlay;	state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdStop;	state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRecord; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdRewind; state = EDimmed; },
-				VR_BUTTON_INFO { commandId = ECmdForward;state = EDimmed; }
-				};
-			}
-		};
-
-	contexts =
-		{
-		VR_CONTEXT
-			{
-			id = EContextNormal;
-			transition = VR_TRANSITION { next = EStateIdle; };
-			states =
-				{
-				VR_STATE
-					{
-					id = EStateIdle;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecordNew; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStateIdle; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStateIdle; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateDeleted; function = EFunctionDelete; }, 
-						VR_TRANSITION { cmd = ECmdRename; next = EStateIdle; function = EFunctionRename; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdle; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateDeleted;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecordNew; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateDeleted; function = EFunctionNop; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecording;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdPause; next = EStateRecordingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionSilentStopAndSave; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecording; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecording; function = EFunctionNop; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlaying;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPause; next = EStatePlayingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlaying; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlaying; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlaying; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlayingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlayingPaused; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlayingPaused; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlayingPaused; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecordingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecord; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionSilentStopAndSave; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecordingPaused; function = EFunctionSetNewPosition; }
-						};
-					},
-				// Disabled button state
-				VR_STATE	
-					{
-					id = EStateDisableButtons;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdStop;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdForward;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRewind;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRecord;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted;	next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateDisableButtons; function = EFunctionNop; }
-						};
-
-					}
-				};
-			},
-		VR_CONTEXT
-			{
-			id = EContextEmptyNormal;
-			transition = VR_TRANSITION { next = EStateDeleted; };
-			states =
-				{
-				VR_STATE
-					{
-					id = EStateIdle;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecordNew; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStateIdle; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStateIdle; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateDeleted; function = EFunctionDelete; }, 
-						VR_TRANSITION { cmd = ECmdRename; next = EStateIdle; function = EFunctionRename; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdle; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateDeleted;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecordNew; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateDeleted; function = EFunctionNop; }
-// Bentley
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecording;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdPause; next = EStateRecordingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionSilentStopAndSave; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecording; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionSaveBeforeExit; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecording; function = EFunctionNop; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlaying;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPause; next = EStatePlayingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlaying; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlaying; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlaying; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlayingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlayingPaused; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlayingPaused; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlayingPaused; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecordingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecord; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionSaveBeforeExit; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecordingPaused; function = EFunctionNop; }
-						};
-					},
-				// Disabled button state
-				VR_STATE	
-					{
-					id = EStateDisableButtons;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdStop;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdForward;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRewind;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRecord;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted;	next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdle; function = EFunctionNop; }
-						};
-					}
-
-				};
-			},
-		VR_CONTEXT
-			{
-			id = EContextRecordNewNormal;
-			transition = VR_TRANSITION { next = EStateRecording; function = EFunctionRecord; };
-			states =
-				{
-				VR_STATE
-					{
-					id = EStateIdle;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecordNew; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStateIdle; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStateIdle; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateDeleted; function = EFunctionDelete; }, 
-						VR_TRANSITION { cmd = ECmdRename; next = EStateIdle; function = EFunctionRename; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdle; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateDeleted;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecordNew; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateDeleted; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateDeleted; function = EFunctionNop; }
-// Bentley
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecording;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdPause; next = EStateRecordingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionSilentStopAndSave; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecording; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionSaveBeforeExit; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecording; function = EFunctionNop; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlaying;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPause; next = EStatePlayingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlaying; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlaying; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlaying; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlayingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlayingPaused; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlayingPaused; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdle; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlayingPaused; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecordingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdle; function = EFunctionStopAndSave; },
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecord; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdle; function = EFunctionAutoStopAndSave; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecordingPaused; function = EFunctionNop; }
-						};
-					},
-				// Disabled button state
-				VR_STATE	
-					{
-					id = EStateDisableButtons;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdStop;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdForward;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRewind;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRecord;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted;	next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdle; function = EFunctionNop; }
-						};
-					}
-				};
-			}, 
-		VR_CONTEXT
-			{
-			id = EContextRecordNewForRemote;
-			transition = VR_TRANSITION { next = EStateRecordEmbedded; };
-			states =
-				{
-				VR_STATE
-					{
-					id = EStateRecordEmbedded;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecord; },
-						VR_TRANSITION { cmd = ECmdCancel; next = EStateRecordEmbedded; function = EFunctionCancel; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecordEmbedded; function = EFunctionNop; }
-// Bentley
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecording;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdleRecordEmbedded; function = EFunctionStopWithNote; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdPause; next = EStateRecordingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecording; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdleRecordEmbedded; function = EFunctionStopWithNote; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleRecordEmbedded; function = EFunctionStopWithNote; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecording; function = EFunctionNop; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateIdleRecordEmbedded;
-					transitions = 
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStateIdleRecordEmbedded; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStateIdleRecordEmbedded; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdOk; next = EStateIdleRecordEmbedded; function = EFunctionOk; },
-						VR_TRANSITION { cmd = ECmdCancel; next = EStateIdleRecordEmbedded; function = EFunctionCancel; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdleRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdleRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateIdleRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdleRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleRecordEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdleRecordEmbedded; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateRecordingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdRecord; next = EStateRecording; function = EFunctionRecord; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateRecordingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleRecordEmbedded; function = EFunctionStopWithNote; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateRecordingPaused; function = EFunctionNop; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlaying;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPause; next = EStatePlayingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdleRecordEmbedded; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlaying; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlaying; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlaying; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlayingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlayingPaused; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlayingPaused; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdleRecordEmbedded; function = EFunctionAutoStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleRecordEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlayingPaused; function = EFunctionSetNewPosition; }
-						};
-					},
-				// Disabled button state
-				VR_STATE	
-					{
-					id = EStateDisableButtons;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdStop;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdForward;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRewind;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRecord;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted;	next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdle; function = EFunctionNop; }
-						};
-					}
-				};
-			},
-
-		VR_CONTEXT
-			{
-			id = EContextViewer;
-			transition = VR_TRANSITION { next = EStateIdleEmbedded; };
-			states =
-				{
-				VR_STATE
-					{
-					id = EStateIdleEmbedded;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStateIdleEmbedded; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStateIdleEmbedded; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdleEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdleEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateIdleEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStateIdleEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleEmbedded; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateIdleEmbedded; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlaying;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPause; next = EStatePlayingPaused; function = EFunctionPause; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlaying; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlaying; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlaying; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlaying; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStatePlayingPaused;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStatePlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdStop; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdForward; next = EStatePlayingPaused; function = EFunctionForward; },
-						VR_TRANSITION { cmd = ECmdRewind; next = EStatePlayingPaused; function = EFunctionRewind; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall; next = EStatePlayingPaused; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateIdleEmbedded; function = EFunctionStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStatePlayingPaused; function = EFunctionSetNewPosition; }
-						};
-					},
-				// Disabled button state
-				VR_STATE	
-					{
-					id = EStateDisableButtons;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdStop;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdForward;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRewind;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRecord;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted;	next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDisconnectCall;		next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition;       next = EStateIdle; function = EFunctionNop; }
-						};
-
-					}
-				};
-			},
-			
-			VR_CONTEXT
-			{
-			id = EContextNokiaRingTone;
-			transition = VR_TRANSITION { next = EStateNRTIdle; };
-			states =
-				{
-				VR_STATE
-					{
-					id = EStateNRTIdle;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay; next = EStateNRTPlaying; function = EFunctionPlay; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateNRTIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateNRTIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateNRTIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateNRTIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateNRTIdle; function = EFunctionSetNewPosition; }
-						};
-					},
-				VR_STATE
-					{
-					id = EStateNRTPlaying;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdStop; next = EStateNRTIdle; function = EFunctionNRTStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted; next = EStateNRTIdle; function = EFunctionNRTStop; },
-						VR_TRANSITION { cmd = ECmdAutoStopAtEnd; next = EStateNRTIdle; function = EFunctionNRTAutoStop; },
-						VR_TRANSITION { cmd = ECmdDelete; next = EStateNRTIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop; next = EStateNRTIdle; function = EFunctionNRTStop; },
-						VR_TRANSITION { cmd = ECmdEndKey; next = EStateNRTIdle; function = EFunctionNRTStop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition; next = EStateNRTPlaying; function = EFunctionSetNewPosition; }
-						};
-					},
-				// Disabled button state
-				VR_STATE	
-					{
-					id = EStateDisableButtons;
-					transitions =
-						{
-						VR_TRANSITION { cmd = ECmdPlay;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdStop;					next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdForward;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRewind;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdRecord;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdAutoStopInterrupted;	next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSilentStop;			next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdDelete;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdEndKey;				next = EStateIdle; function = EFunctionNop; },
-						VR_TRANSITION { cmd = ECmdSetNewPosition;       next = EStateIdle; function = EFunctionNop; }
-						};
-					}
-				};
-			}		
-		};
-	}
-
-
-// ---------------------------------------------------------
-//
-//	New VoiceRecorder Avkon buttons' resources
-//	Each button has as many states as there are visual states	
-// 	in VR
-//
-// ---------------------------------------------------------
-//	
-RESOURCE VR_BUTTONS_NEW r_vr_button_panel_buttons
-	{
-	buttons = 
-		{
-		// PLAY BUTTON
-		AVKON_BUTTON
-			{
-			flags = KAknButtonNoFrame | KAknButtonReportOnKeyDown;
-	    	states =
-	        	{
-				// memo_open
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_mask;
-		            },
-		        // memo_deleted 
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive_mask;
-		            },
-		        // memo_recording    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive_mask;
-		            },
-		        // memo_record_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive_mask;
-		            },
-		        // memo_playing    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_pause; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_pause_mask;
-		            },
-		        // memo_paused_playback
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_mask;
-		            },
-		        // memo_paused_record    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive_mask;
-		            },
-		        // memo_open_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_mask;
-		            },
-		        // memo_record_embed_idle    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_mask;
-		            },
-		        // nokia_ringing_tone_idle    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_mask;
-		            },
-		        // nokia_ringing_tone_playing   
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive_mask;
-		            },
-		        // disable_buttons     
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_play_inactive_mask;
-		            }                    
-		        };
-			},
-			
-		// STOP BUTTON
-		AVKON_BUTTON
-			{
-			flags = KAknButtonNoFrame | KAknButtonReportOnKeyDown;
-	    	states =
-	        	{
-	        	// memo_open
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive_mask;
-		            },
-		        // memo_deleted   
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive_mask;
-		            },
-		        // memo_recording    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_mask;
-		            },
-		        // memo_record_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive_mask;
-		            },
-		        // memo_playing    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_mask;
-		            },
-		        // memo_paused_playback
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_mask;
-		            },
-		        // memo_paused_record    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_mask;
-		            },
-		        // memo_open_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive_mask;
-		            },
-		        // memo_record_embed_idle    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive_mask;
-		            },
-		        // nokia_ringing_tone_idle    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive_mask;
-		            },
-		        // nokia_ringing_tone_playing 
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_mask;
-		            },
-		        // disable_buttons       
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_stop_inactive_mask;
-		            }                    
-		        };                 
-			},
-			
-		// RECORD BUTTON
-		AVKON_BUTTON
-			{
-			flags = KAknButtonNoFrame | KAknButtonReportOnKeyDown;
-	    	states =
-	        	{
-	        	// memo_open
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_mask;
-		            },
-		        // memo_deleted    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_mask;
-		            },
-		        // memo_recording    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_pause; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_pause_mask;
-		            },
-		        // memo_record_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_mask;
-		            },
-		        // memo_playing    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive_mask;
-		            },
-		        // memo_paused_playback
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive_mask;
-		            },
-		        // memo_paused_record    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_mask;
-		            },
-		        // memo_open_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive_mask;
-		            },
-		        // memo_record_embed_idle    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif"; 
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive;
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_mask;
-		            },
-		        // nokia_ringing_tone_idle    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive_mask;
-		            },
-		        // nokia_ringing_tone_playing  
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive_mask;
-		            },
-		        // disable_buttons      
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rec_inactive_mask;
-		            }   
-		        };                 
-			},
-			
-		// REWIND BUTTON
-		AVKON_BUTTON
-			{
-			flags = KAknButtonNoFrame | KAknButtonReportOnKeyDown;
-	    	states =
-	        	{
-	        	// memo_open
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_mask;
-		            },
-		        // memo_deleted    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive_mask;
-		            },
-		        // memo_recording    
-		        AVKON_BUTTON_STATE
-		            {
-		           	bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive_mask;
-		            },
-		        // memo_record_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive_mask;
-		            },
-		        // memo_playing    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_mask;				         
-		            },
-		        // memo_paused_playback
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_mask;
-		            },
-		        // memo_paused_record    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive_mask;
-		            },
-		        // memo_open_embed  
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_mask;
-		            },
-		        // memo_record_embed_idle   
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_mask;
-		            },
-		        // nokia_ringing_tone_idle     
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive_mask;
-		            },
-		        // nokia_ringing_tone_playing     
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive_mask;
-		            },
-		        // disable_buttons     
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_rew_inactive_mask;
-		            }             
-		                         
-		        };
-			},
-				
-		// FORWARD BUTTON
-		AVKON_BUTTON
-			{
-			flags = KAknButtonNoFrame | KAknButtonReportOnKeyDown;
-	    	states =
-	        	{
-	        	// memo_open
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_mask;
-		            },
-		        // memo_deleted    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive_mask;
-		            },
-		        // memo_recording    
-		        AVKON_BUTTON_STATE
-		            {
-		           	bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive_mask;
-		            },
-		        // memo_record_embed    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive_mask;
-		            },
-		        // memo_playing    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_mask;				 
-		            },
-		        // memo_paused_playback
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_mask;
-		            },
-		        // memo_paused_record   
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive_mask;
-		            },
-		        // memo_open_embed     
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_mask;
-		            },
-		        // memo_record_embed_idle    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		            bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_mask;
-		            },
-		        // nokia_ringing_tone_idle   
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive_mask;
-		            },
-		        // nokia_ringing_tone_playing     
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive_mask;
-		            },
-		        // disable_buttons    
-		        AVKON_BUTTON_STATE
-		            {
-		            bmpfile = "z:\\Resource\\apps\\voicerecorder.mif";
-		           	bmpid = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive; 
-		            bmpmask = EMbmVoicerecorderQgn_indi_vorec_button_forw_inactive_mask;
-		            }
-		                         
-		        };	
-			}
-		};	
-	}	
-
-// ELAF variants
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_1_euro
-	{
-	font = ELatinBold13; C = 215; l = 57; r = 5; B = 23; W = 114; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_2_euro
-	{
-	font = ELatinPlain12; C = 215; l = 62; r = 5; B = 39; W = 109; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_3_euro
-	{
-	font = ELatinPlain12; C = 215; l = 62; r = 5; B = 54; W = 109; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_4_euro
-	{
-	font = ELatinPlain12; C = 215; l = 58; r = 100; B = 115; W = 18; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_5_euro
-	{
-	font = ELatinPlain12; C = 215; l = 142; r = 4; B = 115; W = 30; J = ELayoutAlignRight;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_6_euro
-	{
-	font = ELatinBold13; C = 35; l = 57; r = 5; B = 98; W = 114; J = ELayoutAlignLeft;
-	}
-
-
-// APAC variants
-
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_1_apac
-	{
-	font = EApacPlain16; C = 215; l = 57; r = 5; B = 25; W = 114; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_2_apac
-	{
-	font = EApacPlain12; C = 215; l = 64; r = 5; B = 41; W = 107; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_3_apac
-	{
-	font = EApacPlain12; C = 215; l = 64; r = 5; B = 56; W = 107; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_4_apac
-	{
-	font = EApacPlain12; C = 215; l = 58; r = 100; B = 117; W = 18; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_5_apac
-	{
-	font = EApacPlain12; C = 215; l = 142; r = 4; B = 117; W = 30; J = ELayoutAlignRight;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_6_apac
-	{
-	font = EApacPlain16; C = 35; l = 57; r = 5; B = 100; W = 114; J = ELayoutAlignLeft;
-	}
-
-
-// ABRW variants
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_1_arabic_hebrew
-	{
-	font = ELatinBold13; C = 215; l = 5; r = 57; B = 23; W = 114; J = ELayoutAlignRight;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_2_arabic_hebrew
-	{
-	font = ELatinPlain12; C = 215; l = 5; r = 62; B = 39; W = 109; J = ELayoutAlignRight;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_3_arabic_hebrew
-	{
-	font = ELatinPlain12; C = 215; l = 5; r = 62; B = 54; W = 109; J = ELayoutAlignRight;
-	}
-// l changed from 100 to 90 to make max length label fit
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_4_arabic_hebrew
-	{
-	font = ELatinPlain12; C = 215; l = 90; r = 58; B = 115; W = 30; J = ELayoutAlignRight;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_5_arabic_hebrew
-	{
-	font = ELatinPlain12; C = 215; l = 4; r = 124; B = 115; W = 30; J = ELayoutAlignLeft;
-	}
-RESOURCE AVKON_LAYOUT_LABEL r_vr_statusinfo_label_6_arabic_hebrew
-	{
-	font = ELatinBold13; C = 35; l = 5; r = 57; B = 98; W = 114; J = ELayoutAlignRight;
-	}
-
-
-
-//---------------------------------------------------------------
-// Old CBA resources
-// Middle Softkey not included
-//---------------------------------------------------------------
-//
-RESOURCE CBA r_vr_softkeys_pause_stop
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdPause; txt = qtn_vorec_pause_sk; },
-		CBA_BUTTON { id = ECmdStop; txt = qtn_vorec_stop_sk; }
-		};
-	}
-
-RESOURCE CBA r_vr_softkeys_play_stop
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdPlay; txt = text_softkey_play; },
-		CBA_BUTTON { id = ECmdStop; txt = qtn_vorec_stop_sk; }
-		};
-	}
-
-RESOURCE CBA r_vr_softkeys_record_stop
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdRecord; txt = qtn_vorec_rec_sk; },
-		CBA_BUTTON { id = ECmdStop; txt = qtn_vorec_stop_sk; }
-		};
-	}
-	
-RESOURCE CBA r_vr_softkeys_record_back
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdRecord; txt = qtn_vorec_rec_sk; },
-		CBA_BUTTON { id = ECmdCancel; txt = text_softkey_back; }
-		};
-	}
-
-RESOURCE CBA r_vr_softkeys_ok_cancel
-	{
-	buttons = 
-		{
-		CBA_BUTTON {id=ECmdOk; txt=text_softkey_select;},
-		CBA_BUTTON {id=ECmdCancel; txt= text_softkey_cancel;}
-		};
-	}
-
-RESOURCE CBA r_vr_softkeys_stop
-	{
-	buttons = 
-		{
-		CBA_BUTTON { txt =" "; },
-		CBA_BUTTON {id=ECmdStop; txt= qtn_vorec_stop_sk;}
-		};
-	}
-
-
-//---------------------------------------------------------------
-// New CBA resources
-// Middle Softkey included
-//---------------------------------------------------------------
-//
-RESOURCE CBA r_vr_softkeys_pause_stop_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdPause; txt = qtn_vorec_pause_sk; },
-		CBA_BUTTON { id = ECmdStop; txt = qtn_vorec_stop_sk; },
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-
-RESOURCE CBA r_vr_softkeys_play_stop_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdPlay; txt = text_softkey_play; },
-		CBA_BUTTON { id = ECmdStop; txt = qtn_vorec_stop_sk; },
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-
-RESOURCE CBA r_vr_softkeys_record_stop_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdRecord; txt = qtn_vorec_rec_sk; },
-		CBA_BUTTON { id = ECmdStop; txt = qtn_vorec_stop_sk; },
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-	
-RESOURCE CBA r_vr_softkeys_record_back_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdRecord; txt = qtn_vorec_rec_sk; },
-		CBA_BUTTON { id = ECmdCancel; txt = text_softkey_back; },
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-
-
-#ifdef __SERIES60_31__
-// LSK in 3.1 is "Select"
-RESOURCE CBA r_vr_softkeys_ok_cancel_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdOk; txt = text_softkey_select;},
-		CBA_BUTTON { id = ECmdCancel; txt = text_softkey_cancel;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-#else
-// LSK in 3.2 is "Insert"
-RESOURCE CBA r_vr_softkeys_ok_cancel_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdOk; txt = qtn_vorec_insert_sk;},
-		CBA_BUTTON { id = ECmdCancel; txt = text_softkey_cancel;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-#endif
-
-
-RESOURCE CBA r_vr_softkeys_stop_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { txt =" "; },
-		CBA_BUTTON { id = ECmdStop; txt= qtn_vorec_stop_sk;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-
-// A new CBA resource with MSK. Replaces R_AVKON_SOFTKEYS_OPTIONS_BACK
-RESOURCE CBA r_vr_softkeys_options_back_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = EAknSoftkeyOptions; txt = text_softkey_option; },
-		CBA_BUTTON { id = EAknCmdExit; txt = text_softkey_back;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}
-
-// A new CBA resource with MSK. Replaces R_AVKON_SOFTKEYS_OPTIONS_EXIT	
-RESOURCE CBA r_vr_softkeys_options_exit_select
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = EAknSoftkeyOptions; txt = text_softkey_option; },
-		CBA_BUTTON { id = EAknCmdExit; txt = text_softkey_exit;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}	
-	
-// A CBA resource for disabling CBA use. The texts are shown but LSK and RSK
-// cause no operation.
-RESOURCE CBA r_vr_softkeys_options_exit_select_no_command
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = ECmdNOP; txt = text_softkey_option; },
-		CBA_BUTTON { id = ECmdNOP; txt = text_softkey_exit;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_select;}
-		};
-	}	
-		
-// A new CBA resource for settings dialog	
-RESOURCE CBA r_vr_softkeys_options_back_change
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = EAknSoftkeyOptions; txt = text_softkey_option; },
-		CBA_BUTTON { id = EAknCmdExit; txt = text_softkey_back;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_change;}
-		};
-	}
-	
-// A new CBA resource for General Settings dialog	
-RESOURCE CBA r_vr_softkeys_gs_options_back_change
-	{
-	buttons = 
-		{
-		CBA_BUTTON { id = EAknSoftkeyOptions; txt = text_softkey_option; },
-		CBA_BUTTON { id = ECmdCancel; txt = text_softkey_back;},
-		CBA_BUTTON { id = ECmdMSK; txt = qtn_msk_change;}
-		};
-	}		
-			
-// Resources for General Settings plugin
-
-//----------------------------------------------------
-//   
-//    r_vorec_gs_setting_list_view
-//    Main settings view
-//
-//----------------------------------------------------
-//
-RESOURCE AVKON_VIEW r_vorec_gs_setting_list_view
-    {
-    menubar = r_vorec_gs_settings_menubar;
-    cba = r_vr_softkeys_gs_options_back_change;    
-    }
-
-//----------------------------------------------------
-//   
-//    r_vorec_gs_settings_title_name
-//    Title name used as name of plugin
-//
-//----------------------------------------------------
-//
-RESOURCE TBUF r_vorec_gs_settings_title
-    {
-    buf = qtn_vorec_app_title;
-    }
-
-//----------------------------------------------------
-//   
-//    r_vorec_gs_view_title
-//    Setting view's title.
-//
-//----------------------------------------------------
-//
-RESOURCE TITLE_PANE r_vorec_gs_view_title
-    {
-    txt = qtn_vorec_app_title;
-    }    
-
-//----------------------------------------------------
-//   
-//    r_vorec_gs_settings_menupane
-//    GS Plugin options menu, EEikCmdExit replaced with
-//    ECmdOk to ensure that we can save the settings
-//
-//----------------------------------------------------
-//    
-RESOURCE MENU_PANE r_vorec_gs_settings_menupane
-	{
-	items=
-		{
-		MENU_ITEM { command = ECmdChange;		txt = qtn_vorec_settings_change; flags = EEikMenuItemAction ; },
-		MENU_ITEM { command = EAknCmdHelp; 		txt = qtn_options_help; },
-		MENU_ITEM { command = ECmdOk; 		txt = qtn_options_exit; }
-		};
-	}
-
-RESOURCE MENU_BAR r_vorec_gs_settings_menubar
-	{
-	titles=
-		{
-		MENU_TITLE { menu_pane = r_vorec_gs_settings_menupane; }
-		};
-	}
-
-// ---------------------------------------------------------
-//
-//    r_vorec_memory_selection_dialog
-//    Memory selection dialog, setting page resource
-//
-// ---------------------------------------------------------
-//
-RESOURCE MEMORYSELECTIONDIALOG r_vorec_memory_selection_dialog
-    {
-    title = qtn_vorec_set_store;
-    softkey_1 = text_softkey_ok;
-    softkey_2 = text_softkey_cancel;
-
-    locations =
-        {
-        LOCATION
-            { 
-            root_path = text_phone_memory_root_path;
-            default_folder = text_digital_sounds_path;
-            },
-        LOCATION 
-            { 
-            root_path = text_memory_card_root_path;
-            }
-        };
-    }
-
-RESOURCE DIALOG r_vorec_usb_connected_dialog
-    {
-    flags = EAknWaitNoteFlags|EEikDialogFlagModeless;
-    buttons = R_AVKON_SOFTKEYS_BACK;
-    items=
-        {
-        DLG_LINE
-            {
-            type = EAknCtNote;
-            id = EGeneralQuery;
-            control= AVKON_NOTE 
-                { 
-                layout = EWaitLayout;
-                singular_label = qtn_usb_mode_note_mode_activated;
-                animation = R_QGN_GRAF_WAIT_BAR_ANIM;
-                };
-            }
-        };
-    }
--- a/voicerecorder/gsplugin/data/1020729D.rss	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +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: 
-*        ECOM plugin resource file for GS VoiceRecorder plugin.
-*
-*
-*/
-
-#include <ecom/registryinfo.rh>
-
-/**
-* How to use the resource definition:
-*
-* IMPLEMENTATION_INFO
-*	{
-*	implementation_uid  = <Your implementation UID here>;
-*	version_no          = 1;
-*	display_name        = "<Your plugin name here (just for debugging)>";
-*	default_data        = "<One of the below UIDs your plugin will be part of>";
-*	opaque_data         = "<Position of your plugin in the parent listbox>";
-*	}
-*
-* For example plugins wishing to use Apps Plugin as a parent use 
-* KGSAppsPluginUid (defined in GSFWViewUIDs.h):
-*
-*    default_data = "0x10207239";
-*
-* Note that position of the plugin is supported only for internally provided
-* plugins. Others, such as 3rd party plugins, are sorted according to their
-* name and plugin provider category.
-*
-* Plugin position must follow the postition defined in UI specification.
-* Position starts from 0. Use -1 if position is not to be used in sorting.
-*
-*/
-RESOURCE REGISTRY_INFO theInfo
-	{
-	dll_uid     = 0x1020729D; // Plugin dll UID 
-	interfaces  = 
-		{
-		INTERFACE_INFO
-			{
-			interface_uid   = 0x10207236; // UID for CGSPluginInterface - do not change.
-			implementations = 
-				{
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid  = 0x1020729D; // Plugin UID 
-					version_no          = 1;
-					display_name        = "Voice Recorder settings"; // Plugin debug name
-					default_data        = "0x10207239"; // Parent UID
-					opaque_data         = "90"; // Order number 
-					}
-				};
-			}
-		};
-	}
-
--- a/voicerecorder/gsplugin/group/GSVoiceRecorderPlugin.mmp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +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: 
-*        This is project specification file for GS VoiceRecorder Plugin .
-*
-*/
-
-
-#include <data_caging_paths.hrh>    
-#include <platform_paths.hrh>
-
-CAPABILITY          CAP_ECOM_PLUGIN
-TARGET              GSVoiceRecorderPlugin.dll
-TARGETTYPE          PLUGIN
-UID                 0x10009D8D 0x1020729D
-VENDORID            VID_DEFAULT
-
-SOURCEPATH          ../src
-SOURCE              VRGSPluginImplementationTable.cpp
-SOURCE              CVRGSPlugin.cpp      
-SOURCE              CVRGSPluginContainer.cpp      
-
-USERINCLUDE         ../inc
-USERINCLUDE         ../data
-USERINCLUDE         ../../group
-USERINCLUDE         ../../UtilsInc
-USERINCLUDE	        ../../../inc   // ADo level inc dir
-
-APP_LAYER_SYSTEMINCLUDE
-
-SOURCEPATH          ../data
-
-// ECOM resource definition
-START RESOURCE      1020729D.rss 
-TARGET              GSVoiceRecorderPlugin.rsc 
-END // ECOM resource definition
-
-LANG                SC
-LIBRARY             euser.lib
-LIBRARY             GSEcomPlugin.lib
-LIBRARY             GSFramework.lib
-LIBRARY             GSListBox.lib         // For CGSListBoxItemTextArray
-LIBRARY             cone.lib 
-LIBRARY             commonengine.lib//For RConeResourceLoader
-LIBRARY             commondialogs.lib  // CAknMemorySelectionDialog
-LIBRARY             egul.lib
-LIBRARY             eikcore.lib 
-LIBRARY             eikctl.lib 
-LIBRARY             eikcoctl.lib
-LIBRARY             efsrv.lib
-LIBRARY             bafl.lib 
-LIBRARY             FeatMgr.lib           // Feature manager 
-LIBRARY             avkon.lib
-LIBRARY             aknskins.lib // AknsUtils.h
-LIBRARY             hlplch.lib            // for "Help" options menu
-LIBRARY             VoiceRecorderUtils.lib
-
-#ifdef RD_MULTIPLE_DRIVE
-LIBRARY     PlatformEnv.lib
-#endif
-
-//  - used only by Codewarrior for convenience.
-DOCUMENT            1020729D.rss
-// End of File
--- a/voicerecorder/gsplugin/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +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:  This file provides the information required for building 
-*                VoiceRecorderGSPlugin
-*
-*/
-
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_EXPORTS
-
-PRJ_MMPFILES
-GSVoiceRecorderPlugin.mmp
-
-
-PRJ_TESTMMPFILES
-
-//  End of File  
--- a/voicerecorder/gsplugin/inc/CVRGSPlugin.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,208 +0,0 @@
-/*
-* Copyright (c) 2005 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:	Main settings view class.
-*
-*/
-
-
-#ifndef GS_VOICERECORDERGSPLUGIN_H
-#define GS_VOICERECORDERGSPLUGIN_H
-
-// Includes
-#include <aknview.h>
-#include <eikclb.h>
-#include <ConeResLoader.h>
-#include <gsplugininterface.h>
-#include <gsbaseview.h>
-
-
-// Classes referenced
-class CVRGSPluginContainer;
-class CAknViewAppUi;
-class CGSBaseView;
-
-// Constants
-
-/** 
-* UPDATE THIS:
-*
-* This UID is used for both the view UID and the ECOM plugin implementation 
-* UID.
-*/
-const TUid KGSVoiceRecorderGSPluginUid = { 0x1020729D };
-
-// CLASS DECLARATION
-
-/**
-*  CVRGSPlugin view class.
-*
-* This is an VoiceRecorderGS of the minimal GS plugin.CGSPluginInterface
-*/
-class CVRGSPlugin : public CGSBaseView
-    {
-    
-    public: // Constructors and destructor
-        
-        /**
-        * Symbian OS two-phased constructor
-        * @return 
-        * @since 3.1
-        */
-        static CVRGSPlugin* NewL( TAny* aInitParams );
-            
-        /**
-        * Destructor.
-        */
-        ~CVRGSPlugin();       
-        
-
-    public: // Functions from base classes
-        
-        /**
-        * From CAknView, returns the views id.
-        * @return Returns id of the view.
-        * @since 3.1
-        */       
-        TUid Id() const;
-        
-         /**
-        * From MEikCommandObserver, handles the menu based commands.
-        * @param aCommand identifies the given command.
-        * @since 3.1
-        */
-        void HandleCommandL( TInt aCommand );
-        
-        /**
-        * Updates specific value to container 
-        * @param aListItem item index to update
-        * @param aNewValue new value for the setting
-        * @since 3.1
-        */
-        void UpdateListBoxL( const TInt& aListItem, TInt aNewValue );
-        
-     public: // From CGSPluginInterface 
-     
-        /**
-        * Method for getting caption of this plugin. This should be the
-        * localized name of the settings view to be shown in parent view.
-        * @param aCaption pointer to Caption variable
-        * @since 3.1
-        */
-        void GetCaptionL( TDes& aCaption ) const;
-        
-        /**
-        * Creates a new icon of desired type. Override this to provide custom
-        * icons. Othervise default icon is used. Ownership of the created icon
-        * is transferred to the caller.
-        *
-        * Icon type UIDs (use these defined constants):
-        * KGSIconTypeLbxItem  -   ListBox item icon.
-        * KGSIconTypeTab      -   Tab icon.
-        *
-        * @param aIconType UID Icon type UID of the icon to be created.
-        * @return Pointer of the icon. NOTE: Ownership of this icon is
-        *         transferred to the caller.
-        * @since 3.1
-        */
-        CGulIcon* CreateIconL( const TUid aIconType );
-        
-        /**
-        * Method for checking, if plugin should be visible and used in GS FW.
-        * (for example shown in listbox of the parent view).
-        *
-        * On default plugin is visible. Overwrite this function to enable or
-        * disable your plugin dynamically.
-        *
-        * @return ETrue if plugin should be visible in GS.
-        * @return EFalse if plugin should not be visible in GS.
-        * @since 3.1
-        */
-        TBool Visible() const;
-        
-        /**
-        * Reserved for future use/plugin's custom functionality. This can be
-        * overwritten if plugin needs to have custom functionality which cannot
-        * be fulfilled otherwise.
-        * @since 3.1
-        */
-        TAny* CustomOperationL( TAny* aParam1, TAny* aParam2 );
-        
-        /**
-        * From CEikAppUi
-        * Handle skin change event.
-        * @since 3.1
-        */
-        void HandleClientRectChange();
-        
-        /**
-        * From CAknView Activate this view
-        * @param aPrevViewId 
-        * @param aCustomMessageId 
-        * @param aCustomMessage 
-        * @since 3.1
-        */
-        void DoActivateL( const TVwsViewId& aPrevViewId,
-                          TUid aCustomMessageId,
-                          const TDesC8& aCustomMessage );
-                          
-        /**
-        * From CAknView Deactivate this view
-        * @since 3.1
-        */
-        void DoDeactivate();
-        
-        /**
-        * Get VoiceRecorderGSPlugin's container.
-        * @since 3.1
-        */
-        CVRGSPluginContainer* Container();
-        
-    protected:
-
-        /**
-        * C++ default constructor.
-        */
-        CVRGSPlugin();
-
-        /**
-        * Symbian OS default constructor.
-        */
-        void ConstructL();
-        
-        /**
-        * Handles OK key press.
-        * @since 3.1
-        */
-        void HandleListBoxSelectionL();
-        
-        /**
-        * Creates new container.
-        * @since 3.1
-        */
-        void NewContainerL();
- 
-        void CVRGSPlugin::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
-
-        
-    protected: //Data        
-       
-        RConeResourceLoader iResourceLoader;
-        
-        // Buffered caption of the plugin. Owned
-        HBufC* iCaption; 
-        
-    private:
-    };
-
-#endif // GS_VoiceRecorderGSPLUGIN_H
--- a/voicerecorder/gsplugin/inc/CVRGSPluginContainer.h	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,134 +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:  Voice Recorder sub-menu in General Settings.
-*
-*/
-
-
-#ifndef VOICERECORDERGSPLUGINCONTAINER_H
-#define VOICERECORDERGSPLUGINCONTAINER_H
-
-// INCLUDES
-#include "voicerecorder.hrh"
-
-// System includes
-#include <gsbasecontainer.h>
-#include <CAknMemorySelectionDialog.h>
-
-// FORWARD DECLARATIONS
-class CAknSettingItemArray;
-
-// CLASS DECLARATION
-/**
-*  CVRGSPluginContainer class 
-*/
-class CVRGSPluginContainer  : public CGSBaseContainer
-    {
-    public: // Constructors and destructor
-    
-        /**
-        * Default C++ constructor
-        */
-        CVRGSPluginContainer();
-                
-        /**
-        * Symbian OS default constructor.
-        *
-        * @param aRect gives the correct TRect for construction.
-        */
-        void ConstructL( const TRect& aRect );
-
-        /**
-        * Destructor.
-        */
-        ~CVRGSPluginContainer();
-
-    public:
-
-        /**
-        * Updates list box
-        *
-        * @param aFeatureId is a updated list box item
-        */
-        virtual void UpdateListBoxL( TInt aFeatureId );
-
-        /**
-        * Creates list box
-        *
-        * @param aResLbxId is resource number to create.
-        */  
-        void ConstructListBoxL( TInt aResLbxId );
-
-        /**
-        * Retrieves the currently selected listbox feature id
-        * @return feature id.
-        * @since 3.1
-        */
-        TInt CurrentFeatureId() const;
-        
-        /**
-        * From CCoeControl changes the size of the list box
-        */
-        void SizeChanged();
-        
-        /**
-        * Handle listbox selection event
-        * @param aCommand Command id to tell origin of event
-        */
-        void HandleListBoxSelectionL( TInt aCommand );      
-        
-        /**
-        * Store all values from setting items to permanent storage
-        */
-        void StoreAllL();
-        
-    protected: //new
-
-        /**
-        * Creates list box items
-        */  
-        virtual void CreateListBoxItemsL();
-        
-        /**
-        * Required for help.
-        */
-        void GetHelpContext( TCoeHelpContext& aContext ) const;
-
-        
-    private:
-		/**
-		* Array of setting items contained in the listbox. Owned.
-		*/
-		CAknSettingItemArray* iSettingItemArray;        
-
-        /**
-        * Selected memo quality
-        */		
-		TVRQuality iQuality;	
-		
-		/**
-		* Selected memo store
-		*/
-		CAknMemorySelectionDialog::TMemory iMemoStore;
-
-		/**
-		* Selected memo store
-		*/		
-		TDriveNumber iDrive;
-
-    };
-
-#endif // VOICERECORDERGSPLUGINCONTAINER_H
-
-// End of File
--- a/voicerecorder/gsplugin/src/CVRGSPlugin.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,373 +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:  Main settings view class
-*
-*/
-
-
-// INCLUDE FILES
-#include "CVRGSPlugin.h"
-#include "CVRGSPluginContainer.h"
-
-#include "VRConsts.h"
-#include <voicerecorder.rsg>
-#include "voicerecorder.hrh"
-
-#include "VRUtils.h"
-
-#include <f32file.h> // For icon generation
-#include <gsvoicerecorderplugin.mbg> // For icon generation
-
-#include <data_caging_path_literals.hrh>
-#include <avkon.hrh>
-#include <aknViewAppUi.h>
-#include <akntitle.h>  // CAknTitlePane
-#include <featmgr.h>
-#include <StringLoader.h>     //for StringLoader
-#include <gsfwviewuids.h>     //for KGSMainViewUid
-#include <hlplch.h>             // For HlpLauncher
-#include <bautils.h>            // for BaflUtils
-#include <AknQueryDialog.h>
-
-// ========================= MEMBER FUNCTIONS ================================
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::CVRGSPlugin
-// C++ constructor
-// ---------------------------------------------------------------------------
-//
-CVRGSPlugin::CVRGSPlugin()
-    : iResourceLoader( *iCoeEnv  )
-    {
-    
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::NewLC
-// Symbian OS two-phased constructor
-// ---------------------------------------------------------------------------
-//
-CVRGSPlugin* CVRGSPlugin::NewL( TAny* /*aInitParams*/ )
-    {
-    CVRGSPlugin* self = new(ELeave) CVRGSPlugin();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::ConstructL
-// Symbian OS 2nd phase constructor
-// ---------------------------------------------------------------------------
-//
-void CVRGSPlugin::ConstructL()
-    {
-#ifdef _DEBUG    
-    RDebug::Print(_L("[CVRGSPlugin] ConstructL()" ));
-    RDebug::Print( _L( "[CVRGSPlugin] Loading resource from :" ) );
-    RDebug::Print( KVRAppResourceFile );
-#endif
-    
-     // Find the resource file
-    TParse parse;
-    parse.Set( KVRAppResourceFile,    
-               &KDC_APP_RESOURCE_DIR, 
-               NULL );
-    TFileName fileName( parse.FullName() );
-    
-    // Get language of resource file
-    BaflUtils::NearestLanguageFile( iCoeEnv->FsSession(), fileName );
-
-    // Open resource file
-    iResourceLoader.OpenL( fileName );    
-    FeatureManager::InitializeLibL();
-    
-    BaseConstructL( R_VOREC_GS_SETTING_LIST_VIEW );
-    
-    iCaption = StringLoader::LoadL( R_VOREC_GS_SETTINGS_TITLE );
-    }
-
-
-// Destructor
-CVRGSPlugin::~CVRGSPlugin()
-    {
-    FeatureManager::UnInitializeLib();
-
-    if( iContainer )
-        {
-        if ( iAppUi )
-            {
-            iAppUi->RemoveFromViewStack( *this, iContainer );
-            }
-        delete iContainer;
-        iContainer=NULL;
-        }  
-        
-    iResourceLoader.Close(); 
-    
-    delete iCaption; 
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::Id
-// Return UID of view
-// ---------------------------------------------------------------------------
-//
-TUid CVRGSPlugin::Id() const
-    {
-    return KGSVoiceRecorderGSPluginUid;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::HandleCommandL
-// Handle commands
-// ---------------------------------------------------------------------------
-//
-void CVRGSPlugin::HandleCommandL( TInt aCommand )
-    {
-   
-    switch ( aCommand )
-        {
-        case ECmdChange:
-        case EAknCmdOpen:
-            // Delegate to container
-            Container()->HandleListBoxSelectionL( EAknCmdOpen );
-            break;
-        case ECmdMSK:
-        	// Delegate to container
-        	// Selection view is not open when command is ECmdMSK
-            Container()->HandleListBoxSelectionL( ECmdMSK );
-        	break;          
-        case EAknSoftkeyBack:
-        case ECmdCancel:   
-            // Activate previous view
-#ifdef _DEBUG                
-    RDebug::Print(_L("VRGS: activating view 0x%x"), iPrevViewId.iViewUid.iUid);                            
-#endif
-            iAppUi->ActivateLocalViewL( iPrevViewId.iViewUid );
-            break; 
-        case EAknCmdHelp:
-            if( FeatureManager::FeatureSupported( KFeatureIdHelp ) )
-                {
-                HlpLauncher::LaunchHelpApplicationL(
-                    iEikonEnv->WsSession(), iAppUi->AppHelpContextL() );
-                }
-            break;           
-        case ECmdOk: // Exit selected from options menu
-            {
-            iAppUi->HandleCommandL( EEikCmdExit ); 
-            break;
-            }
-        default:
-            iAppUi->HandleCommandL( aCommand );
-            break;
-        } 
-    }
-    
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::DoActivate
-// Activate this view
-// ---------------------------------------------------------------------------
-//
-    
-void CVRGSPlugin::DoActivateL( const TVwsViewId& aPrevViewId,
-                                  TUid aCustomMessageId,
-                                  const TDesC8& aCustomMessage )
-    {       
-    CGSBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::DoDeactivate
-// Deactivate this view
-// ---------------------------------------------------------------------------
-//
-void CVRGSPlugin::DoDeactivate()
-    {
-    CGSBaseView::DoDeactivate();
-    }
-    
-
-// -----------------------------------------------------------------------------
-// CVRGSPlugin::HandleClientRectChange
-// Handle screen size change.
-// -----------------------------------------------------------------------------
-//
-void CVRGSPlugin::HandleClientRectChange()
-    {
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        } 
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::Container
-// Return handle to container class.
-// ---------------------------------------------------------------------------
-//
-CVRGSPluginContainer* CVRGSPlugin::Container()
-    {
-    return static_cast<CVRGSPluginContainer*>( iContainer );
-    }
-    
-    
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::HandleListBoxSelectionL
-// Handle any user actions while in the list view.
-// ---------------------------------------------------------------------------
-//
-void CVRGSPlugin::HandleListBoxSelectionL() 
-    {
-    // Delegate to container
-    Container()->HandleListBoxSelectionL( ECmdChange );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::GetCaptionL
-// Caption text for view to be displayed in NaviPane.
-// ---------------------------------------------------------------------------
-//
-void CVRGSPlugin::GetCaptionL( TDes& aCaption ) const
-    {
-    aCaption.Copy( *iCaption );
-    }
-    
-    
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::NewContainerL
-// Creates new iContainer.
-// ---------------------------------------------------------------------------
-//
-void CVRGSPlugin::NewContainerL()
-    {
-    iContainer = new( ELeave ) CVRGSPluginContainer;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::CreateIconL
-// Return the icon, if has one.
-// ---------------------------------------------------------------------------
-//
-CGulIcon* CVRGSPlugin::CreateIconL( const TUid /*aIconType*/ )
-    {
-
-	// New implementation
-	TParse* fp = new(ELeave) TParse();
-    CleanupStack::PushL( fp );
-    TInt err = fp->Set( KVRPluginFile, &KDC_APP_BITMAP_DIR, NULL ); 
-
-    if ( err != KErrNone )
-        { 
-        User::Leave( err );
-        }
-
-    TBuf<KMaxFileName> fileName = fp->FullName();
-    CleanupStack::PopAndDestroy();  //fp
-
-    CGulIcon* icon;
-    
-    icon = AknsUtils::CreateGulIconL(
-        AknsUtils::SkinInstance(), 
-        KAknsIIDQgnPropSetAppsVoirec,
-        fileName,
-        EMbmGsvoicerecorderpluginQgn_prop_set_apps_voirec,
-		EMbmGsvoicerecorderpluginQgn_prop_set_apps_voirec_mask );
-    
-    return icon;
-
-    }
-    
-   
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::Visible()
-// Method for checking, if plugin should be visible and used in GS.
-// ---------------------------------------------------------------------------
-//    
-TBool CVRGSPlugin::Visible() const
-    {
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) ||
-         FeatureManager::FeatureSupported( KFeatureIdMmc ) )
-        {
-        return ETrue;
-        }
-    else
-        {
-        return EFalse;
-        }
-
-    }
-    
-    
-// ---------------------------------------------------------------------------
-// CVRGSPlugin::CustomOperationL()
-// Reserved for later use.
-// ---------------------------------------------------------------------------
-//        
-TAny* CVRGSPlugin::CustomOperationL( TAny* aParam1, TAny* /*aParam2*/ )
-    {
-    return aParam1;    
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRSettingsDialog::DynInitMenuPaneL
-// 
-// ---------------------------------------------------------------------------
-//
-void CVRGSPlugin::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
-	{
-
-	switch ( aResourceId )
-		{
-		case R_VOREC_GS_SETTINGS_MENUPANE:
-			{
-			// Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-			if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-				{
-				aMenuPane->SetItemDimmed(EAknCmdHelp, ETrue);
-				}
-            break; 
-			}
-		case R_VR_SETTINGS_MENUPANE:
-			{
-			// Check if HELP is enabled in FeatureManager, if not, disable the Help menu item
-			if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-				{
-				aMenuPane->SetItemDimmed(ECmdHelp, ETrue);
-				}
-            break; 
-			}
-
-
-		default:
-			{
-			break;
-			}
-		}
-	}   
-
-// End of file
-
-
--- a/voicerecorder/gsplugin/src/CVRGSPluginContainer.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,369 +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:  Voice Recorder sub-menu in General Settings.
-*
-*/
-
-
-// INCLUDES
-#include "CVRGSPluginContainer.h"
-#include "CVRGSPlugin.h"
-
-#include <voicerecorder.rsg>
-#include <VoiceRecorderUID.h>
-
-#include "VRConsts.h"
-#include "VRUtils.h"
-#include <csxhelp/vorec.hlp.hrh>
-
-
-#include <aknlists.h>               //for CAknSettingStyleListBox
-#include <aknsettingitemlist.h>
-#include <CAknMemorySelectionSettingItem.h>
-#include <aknnotewrappers.h> // for CAknInformationNote
-//#include <GSCamcorderPlugin.mbg>
-#include <gslistbox.h>              //for listbox clases
-#include <AknIconArray.h>   // CAknIconArray
-#include <eikclbd.h>        // CColumnListBoxData
-
-#ifdef RD_MULTIPLE_DRIVE
-#include <driveinfo.h>
-#include <CAknMemorySelectionSettingItemMultiDrive.h>
-#include <AknCommonDialogsDynMem.h>
-#endif
-
-const TUid KVRAppUID = { KVoiceRecorderAppUID3 };
-
-// ListBox item index
-enum TListItemIndex
-    {
-    EListItemQualityIndex = 0,
-    ElistItemMemoStoreIndex,
-    };
-
-// ========================= MEMBER FUNCTIONS ================================
-
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::ConstructL
-// Symbian OS default constructor
-// ---------------------------------------------------------------------------
-//
-void CVRGSPluginContainer::ConstructL( const TRect& aRect )
-    {
-    // Construct iListBox
-    iListBox = new ( ELeave ) CAknSettingStyleListBox;      
-    iSettingItemArray = new(ELeave) CAknSettingItemArray(2,0,0);
-
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-	    iQuality = VRUtils::QualityL();
-        }
-
-	// Convert the internal memory enumeration to CFD enumeration
-#ifndef RD_MULTIPLE_DRIVE 
-	if ( VRUtils::MemoStoreL() == EMemoStorePhoneMemory )
-		{
-		iMemoStore = CAknMemorySelectionSettingPage::EPhoneMemory;
-		}
-	else
-		{
-		iMemoStore = CAknMemorySelectionSettingPage::EMemoryCard;
-		}    
-#else
-    iDrive = (TDriveNumber)VRUtils::MemoDriveL();
-
-#endif
-
-    BaseConstructL( aRect, R_VOREC_GS_VIEW_TITLE, 0 );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::~CGSTelPluginContainer
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CVRGSPluginContainer::~CVRGSPluginContainer()
-    {
-    if ( iSettingItemArray )
-        {
-        iSettingItemArray->ResetAndDestroy();
-        }
-    
-    delete iSettingItemArray;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::CGSTelPluginContainer
-// Default constructor
-// ---------------------------------------------------------------------------
-//
-CVRGSPluginContainer::CVRGSPluginContainer()
-    : iQuality( EQualityMMSOptimized ),
-      iMemoStore( CAknMemorySelectionSettingPage::EPhoneMemory )
-    {
-    }
-    
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::UpdateListBoxL
-// Update listbox item
-// ---------------------------------------------------------------------------
-//
-void CVRGSPluginContainer::UpdateListBoxL( TInt /*aFeatureId*/ )
-    {
-    
-    // Update the listbox
-    iListBox->HandleItemAdditionL();
-    }
-
-    
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::ConstructListBoxL
-// Update listbox item
-// Items are added manually, instead of loading them from resources
-// ---------------------------------------------------------------------------
-//
-void CVRGSPluginContainer::ConstructListBoxL( TInt /*aResLbxId*/ )
-    {
-    iListBox->ConstructL( this, EAknListBoxSelectionList );
-
-    // Create items to array
-    CreateListBoxItemsL(); 
-
-    // Set array to listbox
-	CTextListBoxModel* model = iListBox->Model();
-	model->SetItemTextArray( iSettingItemArray );
-	// Ownership retained by us
-	model->SetOwnershipType( ELbmDoesNotOwnItemArray );
-
-	iSettingItemArray->RecalculateVisibleIndicesL();
-	iListBox->CreateScrollBarFrameL( ETrue );
-	iListBox->ScrollBarFrame()->SetScrollBarVisibilityL(
-						CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto );
-	iListBox->HandleItemAdditionL();
-	iListBox->UpdateScrollBarsL();
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::CreateListBoxItemsL
-// Update listbox item
-// ---------------------------------------------------------------------------
-//
-void CVRGSPluginContainer::CreateListBoxItemsL()
-    {
-    CAknSettingItem* settingItem;
-    HBufC* itemTitle;
-
-	// Add quality setting
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
- 
-    	// Add quality setting
-#ifdef  __AAC_ENCODER_PLUGIN    	
-    	settingItem = new( ELeave ) CAknEnumeratedTextPopupSettingItem ( 0, ( TInt& ) iQuality );
-
-#else
-        settingItem = new( ELeave ) CAknBinaryPopupSettingItem ( 0, ( TInt& ) iQuality );
-#endif
-    	CleanupStack::PushL( settingItem );
-
-    	itemTitle = iCoeEnv->AllocReadResourceLC( R_QTN_VOREC_SET_QUALITY );
-    	settingItem->ConstructL( EFalse, EListItemQualityIndex, *itemTitle, NULL,
-    	                     R_VR_SETTINGS_DEFAULT_SPEAKER_PAGE, 
-    	                     EAknCtPopupField, NULL,
-    						 R_VR_SETTINGS_QUALITY_TEXTS );
-    	
-    	CleanupStack::PopAndDestroy();		// itemTitle
-
-    	// Add quality item to the settings array
-    	iSettingItemArray->AppendL( settingItem );
-      	CleanupStack::Pop();	// settingItem        
-        }
-      if ( VRUtils::MultipleMassStorageAvailable() )
-        {
-    // Add memo store setting
-	// Create the memo store item
-#ifndef RD_MULTIPLE_DRIVE	
-	settingItem =
-				new( ELeave ) CAknMemorySelectionSettingItem( 0, iMemoStore );
-   //multiple drives
-#else
-    settingItem =
-                new( ELeave ) CAknMemorySelectionSettingItemMultiDrive(0, iDrive );
-       TInt includedMedias = AknCommonDialogsDynMem::EMemoryTypeInternalMassStorage |
-                          AknCommonDialogsDynMem::EMemoryTypeMMCExternal;
-       static_cast< CAknMemorySelectionSettingItemMultiDrive *> ( settingItem )->SetIncludedMediasL( includedMedias );
-#endif
-
-	CleanupStack::PushL( settingItem );
-
-	itemTitle = iCoeEnv->AllocReadResourceLC( R_QTN_VOREC_SET_STORE );
-
-#ifndef RD_MULTIPLE_DRIVE
-	// Set memo store item's title
-	settingItem->ConstructL( EFalse, id, *itemTitle, NULL,
-	    R_VOREC_MEMORY_SELECTION_DIALOG, EAknCtPopupSettingList );
-#else
-        settingItem->ConstructL( EFalse, ElistItemMemoStoreIndex, *itemTitle, NULL, 0, EAknCtPopupSettingList );
-#endif
-	    
-	CleanupStack::PopAndDestroy();	// itemTitle
-
-        // Add memo store item to the settings array
-        iSettingItemArray->AppendL( settingItem );
-        CleanupStack::Pop();	// settingItem
-    	}
-    }
-
-
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::CurrentFeatureId
-// Get the currently selected feature
-// ---------------------------------------------------------------------------
-//
-TInt CVRGSPluginContainer::CurrentFeatureId() const
-    {
-    if ( iSettingItemArray )
-        {
-        return iSettingItemArray->MdcaCount();
-        }
-    else
-        {
-        return 0;
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::GetHelpContext
-// Get help for this view
-// ---------------------------------------------------------------------------
-//
-void CVRGSPluginContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-    aContext.iMajor = KVRAppUID; 
-    aContext.iContext = KVOREC_HLP_SETTINGS;    
-    }
-  
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::SizeChanged
-// Set the size and position of component controls.
-// ---------------------------------------------------------------------------
-//
-void CVRGSPluginContainer::SizeChanged()
-    {
-    if ( iListBox )
-        {
-        iListBox->SetRect( Rect() );
-        }
-    }
-  
-void CVRGSPluginContainer::HandleListBoxSelectionL( TInt aCommand ) 
-    {
-	TInt index( iListBox->CurrentItemIndex() );
-	TInt driveDefaultMassStorage = VRUtils::DefaultMemoDriveL();
-	TInt driveRemovableMassStorage = VRUtils::GetRemovableMassStorageL();
-	
-	if ( index >=0 )	// index is -1 if there are no items in the list
-		{
-        if(index == ElistItemMemoStoreIndex &&
-		        !VRUtils::DriveValid(driveDefaultMassStorage) && 
-		            !VRUtils::DriveValid(driveRemovableMassStorage) )
-            {
-            return;
-            }
-		// Open edit dialog if EAknCmdOpen, invert the value otherwise
-		iSettingItemArray->At( index )->EditItemL( aCommand == EAknCmdOpen );
-		iListBox->DrawItem( index );
-		//Store all settings after change
-		StoreAllL();
-		}
-    }  
-
-// ---------------------------------------------------------------------------
-// CVRGSPluginContainer::StoreAll
-// Stores values in settings list to permanent storage
-// ---------------------------------------------------------------------------
-//
-void CVRGSPluginContainer::StoreAllL()
-    {
-    // Retrieve values to member variables
-	TInt settingItemCount( iSettingItemArray->Count() );
-
-	for ( TInt i( 0 ); i < settingItemCount; i++ )
-		{
-		iSettingItemArray->At( i )->StoreL();
-		}
-
-    // Save memo store setting
-#ifndef RD_MULTIPLE_DRIVE    
-	if ( iMemoStore == CAknMemorySelectionSettingPage::EPhoneMemory )
-		{
-		VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-		}
-	else
-		{
-		// check if MMC is read-only
-		TVRDriveInfo mmcInfo;
-		VRUtils::GetMMCInfo( mmcInfo );
-
-		if ( mmcInfo.iDriveReadOnly )
-			{
-			HBufC* noteText = iCoeEnv->AllocReadResourceLC(
-													 R_QTN_MEMC_READONLY );
-			CAknInformationNote* infoNote =
-								new( ELeave ) CAknInformationNote( ETrue );
-			infoNote->ExecuteLD( *noteText );
-			CleanupStack::PopAndDestroy();	// noteText
-			VRUtils::SetMemoStoreL( EMemoStorePhoneMemory );
-			}
-		else
-			{
-			VRUtils::SetMemoStoreL( EMemoStoreMMC );
-			}
-		}
-#else
-     TUint status( 0 );
-	 TInt defaultDrive = VRUtils::DefaultMemoDriveL();
-	 if (VRUtils::MemoDriveL() != defaultDrive)
-	 	{
- 	    VRUtils::GetDriveInfo(iDrive, status);
-     	// check if drive status is ok 
-	 	if ( status & DriveInfo::EDriveReadOnly )
-			{
-			HBufC* noteText = iCoeEnv->AllocReadResourceLC(R_QTN_MEMC_READONLY );
-			CAknInformationNote* infoNote =	new( ELeave ) CAknInformationNote( ETrue );
-			infoNote->ExecuteLD( *noteText );
-			CleanupStack::PopAndDestroy();	// noteText
-        
-        	// use default device drive to save files
-        	iDrive = (TDriveNumber)defaultDrive;
-  			}
-	 	}
-    if(iDrive == defaultDrive || iDrive == VRUtils::GetRemovableMassStorageL())
-        {
-        VRUtils::SetMemoDriveL( iDrive );
-        }
-#endif 
-
-    // Save quality setting
-    if ( VRUtils::FeatureEnabled( EVRFeatureShowQualitySetting ) )
-        {
-        // Save the quality setting	
-	    VRUtils::SetQualityL( iQuality );
-        }
-        
-    }
-  
-// End of File
--- a/voicerecorder/gsplugin/src/VRGSPluginImplementationTable.cpp	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +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: 
-*        ECOM proxy table for this plugin
-*
-*/
-
-
-// System includes
-#include <e32std.h>
-#include <ecom/implementationproxy.h>
-
-// User includes
-#include "CVRGSPlugin.h"
-
-// Constants
-const TImplementationProxy KVoiceRecorderGSPluginImplementationTable[] = 
-	{
-	// UPDATE THIS - Uid for plugin implementation:
-	IMPLEMENTATION_PROXY_ENTRY( 0x1020729D,	CVRGSPlugin::NewL )
-	};
-
-
-// ---------------------------------------------------------------------------
-// ImplementationGroupProxy
-// Gate/factory function
-// ---------------------------------------------------------------------------
-//
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-	{
-	aTableCount = sizeof(KVoiceRecorderGSPluginImplementationTable) 
-        / sizeof(TImplementationProxy);
-	return KVoiceRecorderGSPluginImplementationTable; 
-	}
-
Binary file voicerecorder/help/data/xhtml.zip has changed
--- a/voicerecorder/help/group/bld.inf	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +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:
-* Export help related files.
-*
-*/
-
-#include <platform_paths.hrh>				
-PRJ_EXPORTS
-:zip ../data/xhtml.zip   /epoc32/data/z/resource/ overwrite
-:zip ../data/xhtml.zip   /epoc32/winscw/c/resource/ overwrite
-
-../inc/vorec.hlp.hrh	MW_LAYER_PLATFORM_EXPORT_PATH(csxhelp/vorec.hlp.hrh)
-../rom/voicerechelps_variant.iby		CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(voicerechelps_variant.iby)
--- a/voicerecorder/help/inc/vorec.hlp.hrh	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +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:
-*
-*/
-	
-//
-// vorec.hlp.hrh generated by CSXHelp Utilities.
-//           
-
-#ifndef __VOREC_HLP_HRH__
-#define __VOREC_HLP_HRH__
-
-_LIT(KVOREC_HLP_EMPTY_RECORDER, "VOREC_HLP_EMPTY_RECORDER"); // 
-_LIT(KVOREC_HLP_MAIN, "VOREC_HLP_MAIN"); // 
-_LIT(KVOREC_HLP_SETTINGS, "VOREC_HLP_SETTINGS"); // 
-
-#endif 
\ No newline at end of file
--- a/voicerecorder/help/rom/voicerechelps_variant.iby	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +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:
-* Export resource files for S60 Voice Recorder helps.
-*
-*/
-
-#ifndef __VOICERECHELPS_VARIANT_IBY__
-#define __VOICERECHELPS_VARIANT_IBY__
-
-#if defined(FF_S60_HELPS_IN_USE)
-    data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058CA\contents.zip, RESOURCE_FILES_DIR\xhtml\%02d\0x100058CA\contents.zip)
-    data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058CA\index.xml, RESOURCE_FILES_DIR\xhtml\%02d\0x100058CA\index.xml)
-    data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058CA\keywords.xml, RESOURCE_FILES_DIR\xhtml\%02d\0x100058CA\keywords.xml)
-    data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058CA\meta.xml, RESOURCE_FILES_DIR\xhtml\%02d\0x100058CA\meta.xml)
-#endif
-
-#endif
\ No newline at end of file
--- a/voicerecorder/loc/voicerecorder.loc	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,345 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     This is a localisation file for VoiceRecorder.app
-*     A .loc file is the one and only place where the logical strings
-*     to be localised are defined. 
-*     
-*
-*/
-
-
-//  LOCALISATION STRINGS
-
-// d: Application title from list. 
-// l: list_single_large_graphic_pane_t1
-// w:
-// r: 3.0
-#define	qtn_vorec_app_title			"Recorder"
-
-// d: Application title from grid. 
-// l: cell_app_pane_t1
-#define	qtn_vorec_app_menu_grid			"Recorder"
-
-// d: Default file name created by VoiceRec application.
-// d: The first memo will be assigned with this name.
-// d: The maximum length for the name is 20 characters 
-// d: The filename extension (.amr) is NOT included in the translation.
-// l: vorec_t1
-// w:
-// r: 1.0
-#define qtn_vorec_first_memo_name		"Sound clip"
-
-// d: Default file name created by VoiceRec application.
-// d: Memos after the first memo will be assigned with this name
-// d: The maximum name length is specified as 20 characters, but the
-// d: number formatting must be taken into account ( Memo(105) ).
-// d: The filename extension (.amr) is NOT included in the translation.
-// d: Can be removed after qtn_vorec_default_memo_name has been taken in use
-// l: vorec_t1
-// w:
-// r: 3.1
-#define qtn_vorec_memo_name			"Sound clip(%N)"
-
-//d: A new default file name created by VoiceRec application.
-//d: Replaces qtn_vorec_memo_name.
-//d: Memos after the first memo will be assigned with this name
-//d: The maximum name length is specified as 20 characters, but the
-//d: number formatting must be taken into account (e.g. Memo(105) ).
-//d: The filename extension (.amr) is NOT included in the translation.
-//d: %U is replaced by the running memo count number retrieved from the Central Repository
-//l: vorec_t1
-//w:
-//r: 3.1
-//
-#define qtn_vorec_default_memo_name 	"Sound clip(%U)"
-
-// d: Menu string	
-// d: Close memo and open empty to record option on menu. 
-// l: list_single_pane_t1_cp2
-#define qtn_vorec_rec_new				"Record new"
-
-// d: Menu string	
-// d: Erase current memo menu item. 
-// l: list_single_pane_t1_cp2
-#define qtn_vorec_delete				"Delete"
-
-// d: Menu string
-// d: Change name of current memo option on menu. 
-// l: list_single_pane_t1_cp2
-#define text_voice_rec_edit_title		"Edit name"
-
-// d: Menu string
-// d: Go to File Manager app at location of clips.
-// l: list_single_pane_t1_cp2
-#define qtn_vorec_goto_my_clips			"Go to my clips"
-
-// d: Menu item	
-// d: Save mail attachment. 
-// l: list_single_pane_t1_cp2
-#define qtn_vorec_save_mail_atta		"Save"
-
-// d: Softkey text
-// d: provides the command to record
-// l: control_pane_t1/opt7
-#define qtn_vorec_rec_sk				"Record"
-
-// d: Softkey text
-// d: provides the command to play
-// l: control_pane_t1/opt7
-#define text_softkey_play				"Play"
-
-// d: Softkey text
-// d: provides the command to pause
-// l: control_pane_t1/opt7
-#define qtn_vorec_pause_sk				"Pause"
-
-// d: Softkey text
-// d: Provides the command to stop
-// l: control_pane_t1/opt7
-#define qtn_vorec_stop_sk				"Stop"
-
-//d:Softkey text
-//l:control_pane_t1/opt7
-//w:
-//r:3.2
-//
-#define qtn_vorec_insert_sk 			"Insert"
-
-// d: Information Note
-// d: Shown when recording is stopped while in embedded mode
-// l: popup_note_window
-#define qtn_vorec_info_record_stopped	"Recording stopped"
-
-// d: Information Note
-// d: Shown when trying to use Voice Recorder during a video call
-// l: popup_note_window
-#define qtn_vorec_info_video_call_ongoing	"Voice Recorder cannot be used during video call"
-
-// d: Information Note
-// d: Shown when trying to use Voice Recorder during an internet call
-// l: popup_note_window
-// w:
-// r: 3.0
-#define qtn_vorec_info_internet_call_ongoing	"Voice Recorder cannot be used during an internet call"
-
-// d: Error note text
-// d: Failed to open or play memo. File format error.
-// l: popup_note_window
-#define qtn_vorec_info_memo_unsupported	"Unable to play memo. Memo format not supported."
-
-// d: Error note text
-// d: Failed to open or play memo. File format error.
-// l: popup_note_window
-#define qtn_vorec_info_memo_corrupted	"Unable to play memo. Memo corrupted."
-
-// d: Error note text
-// d: Failed to play or record. Media Server error.
-// l: popup_note_window
-#define qtn_vorec_info_server_error		"Unable to continue. Media server error."
-
-// d: Wait note text
-// d: Shown when voice memo is being saved to permanent storage
-// d: Recording is stopped by user
-// l: popup_note_wait_window
-#define qtn_vorec_wait_saving_memo		"Saving memo..."
-
-// d: Wait note text
-// d: Shown when voice memo is being saved to permanent storage
-// d: Recording is stopped automatically
-// l: popup_note_wait_window
-#define qtn_vorec_wait_stop_saved		"Saving stopped memo..."
-
-// d: Menu string	
-// d: Settings Options submenu item for changing item settings.
-// l: list_single_pane_t1_cp2
-#define qtn_vorec_settings_change		"Change"
-
-// d: Recorder View Status text
-// d: Displayed while recording is in progress
-// l: vorec_t4
-#define qtn_vorec_recording				"Recording"
-
-// d: Recorder View Status text
-// d: Displayed while playback is in progress
-// l: vorec_t4
-// w:
-// r: 3.1
-#define qtn_vorec_playback				"Playing"
-
-// d: Recorder View Status text
-// d: Displayed while playing/recording is paused
-// l: vorec_t4
-#define qtn_vorec_paused				"Paused"
-
-// d: Format string for the memo name
-// d: Memo name is placed in %U
-// l: vorec_t1
-#define qtn_vorec_memo_label			"%U"
-
-// d: Format string for the creation date of the memo
-// d: Date is placed in %0U and time in %1U
-// d: %0U is formatted with R_QTN_DATE_USUAL_WITH_ZERO
-// d: %1U is formatted with R_QTN_TIME_USUAL_WITH_ZERO
-// l: vorec_t2
-// w:
-// r: 3.1
-#define qtn_vorec_date_label			"%0U %1U"
-
-// d: Min/Start value of the memo play/record progress bar
-// d: Always zero.
-// l: vorec_t6
-#define qtn_vorec_min_label				"0"
-
-// d: Format for displaying elapsed time and time left in recording and playback states.
-// d: %0U is elapsed time
-// d: %1U is maximum recording time, estimated time left or length of played memo
-// d: %0U and %1U are formatted with R_QTN_TIME_DURAT_MIN_SEC_WITH_ZERO, or
-// d: R_QTN_TIME_DURAT_LONG if the time is longer than one hour
-// l: vorec_t5
-// w:
-// r: 3.1
-#define qtn_vorec_time_indic             "%0U / %1U"
-
-// d: Recorder view quality text
-// l: vorec_t7
-// w:
-// r: 3.1
-#define qtn_vorec_quality_label		"Quality:"
-
-// d: Recorder view quality text for MMS optimized quality
-// l: vorec_t3
-// w:
-// r: 3.1
-#define qtn_vorec_quality_mms_optimized	"MMS"
-
-// d: Recorder view quality text for High quality
-// l: vorec_t3
-// w:
-// r: 3.1
-#define qtn_vorec_quality_high		"High"
-
-// d: Recorder view quality text for Normal quality
-// l: vorec_t7
-// w:
-// r: 3.2
-#define qtn_vorec_quality_normal		"Normal"
-
-// ---------------------------------------------------------------------------
-// Memory store usage specific strings
-
-// d: Information note 
-// d: Shown when VR is started and MMC is selected as default store,
-// d: but MMC is not available or it is locked
-// l: popup_note_window
-// w:
-// r: 1.0
-#define qtn_memc_vorec_note1			"The selected memory store is not accessible. Phone memory will be used instead."
-
-// d: Information note 
-// d: Shown when VR is started and MMC is selected as default store, but MMC is read-only
-// l: popup_note_window
-// w: 
-// r: 3.1
-#define qtn_memc_vorec_note2			"The selected memory store is read-only. Phone memory will be used instead."
-
-// d: Error note
-// d: Shown when user tries to unlock MMC, but enters an incorrect password
-// l: popup_note_window
-#define qtn_memc_set_password_error		"The passwords don't match, try again!"
-
-// d: Setting item title
-// d: Title for Memo Store Setting Item
-// l: list_setting_pane_t1
-#define qtn_vorec_set_store				"Memo store"
-
-// d: Confirmation note
-// d: Shown if when VR is started and MMC is locked
-// l: popup_note_window
-#define qtn_memc_unlock_query1		"The selected memory store is locked, it can't be used. Do you want to unlock it?"
-
-// d: Information note
-// d: Shown when VR is started and the SD card is not inserted
-// l: popup_note_window
-// w: 
-// r: 3.1
-#define qtn_ccor_insert_mmc            "Please insert memory card."
-
-// d: Information note
-// d: Shown when VR is started and the USB is inserted in Mass Storage mode
-// l: popup_note_window
-// w: 
-// r: 3.1
-#define qtn_usb_mode_note_mode_activated            "USB connected in Mass storage mode"
-
-// ---------------------------------------------------------------------------
-// No voice key specific strings
-
-// d: Setting item title
-// d: Title for Memo Store Setting Item
-// l: list_setting_pane_t1
-#define qtn_vorec_set_ihf		"Default speaker"
-
-// d: setting_item_with_two_available_ values
-// d: Indicates that the IHF is being selected as default speaker
-// l: list_set_graphic_pane_t1
-#define qtn_vorec_settings_ihf_hf	"Handsfree"
-
-// d: setting_item_with_two_available_ values
-// d: Indicates that the earpiece is being selected as default speaker
-// l: list_set_graphic_pane_t1
-#define qtn_vorec_settings_ihf_ear	"Earpiece"
-
-
-// ---------------------------------------------------------------------------
-// No voice key AND MMC specific strings
-
-// d: Menu string	
-// d: Displays the settings dialog. 
-// l: list_single_pane_t1_cp2
-// w:
-// r: 3.0
-#define qtn_vorec_settings				"Settings"
-
-// ---------------------------------------------------------------------------
-// Quality specific strings
-
-// d: Setting item title
-// d: Title for Recording quality setting item
-// l: list_setting_pane_t1
-// w:
-// r: 3.1
-#define qtn_vorec_set_quality		"Recording quality"
-
-// d: setting_item_with_two_available_ values
-// d: Indicates that memo quality is MMS Optimized
-// l: list_set_graphic_pane_t1
-// w:
-// r: 3.1
-#define qtn_vorec_settings_quality_mms_optimized	"MMS Optimized"
-
-// d: setting_item_with_two_available_ values
-// d: Indicates that memo quality is High quality
-// l: list_set_graphic_pane_t1
-// w:
-// r: 3.1
-#define qtn_vorec_settings_quality_high	"High"
-
-
-// d: setting_item_with_three_available_ values
-// d: Indicates that memo quality is Normal quality
-// l: list_set_graphic_pane_t1
-// w:
-// r: 3.2
-#define qtn_vorec_settings_quality_normal		"Normal"
--- a/voicerecorder/rom/Voicerecorder.iby	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*
-* Copyright (c) 2005 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: 
-* Image description file for project Voicerecorder
-*	  
-*
-*/
-
-#ifndef __VOICERECORDER_IBY__
-#define __VOICERECORDER_IBY__
-
-S60_APP_EXE(Voicerecorder)
-S60_APP_AIF_ICONS(Voicerecorder)
-S60_UPGRADABLE_APP_REG_RSC(Voicerecorder)
-
-ECOM_PLUGIN(GSVoiceRecorderPlugin.dll,GSVoiceRecorderPlugin.rsc)
-
-SCALABLE_IMAGE(Resource\apps,APP_BITMAP_DIR,Voicerecorder)
-
-file=ABI_DIR\BUILD_DIR\VoicerecorderUtils.DLL           SHARED_LIB_DIR\VoicerecorderUtils.DLL
-file=ABI_DIR\BUILD_DIR\VoicerecorderRecview.DLL         SHARED_LIB_DIR\VoicerecorderRecview.DLL
-file=ABI_DIR\BUILD_DIR\NewService.DLL       		SHARED_LIB_DIR\NewService.DLL
-
-data=DATAZ_\BITMAP_DIR\GSVoiceRecorderPlugin.mif	BITMAP_DIR\GSVoiceRecorderPlugin.mif
-
-data=ZPRIVATE\100058CA\backup_registration.xml        	private\100058CA\backup_registration.xml
-
-data=ZSYSTEM\Install\VoiceRecorder_stub.SIS   System\install\VoiceRecorder_stub.SIS
-
-#endif
-
--- a/voicerecorder/rom/VoicerecorderResources.iby	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-/*
-* Copyright (c) 2005 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: 
-* The iby file contains files that must be included in image
-*	  
-*
-*/
-
-#ifndef __VOICERECORDERRESOURCES_IBY__
-#define __VOICERECORDERRESOURCES_IBY__
-
-S60_APP_CAPTION(Voicerecorder)
-
-data=DATAZ_\APP_RESOURCE_DIR\Voicerecorder.rsc                       			  APP_RESOURCE_DIR\Voicerecorder.rsc
-//data=ZSYSTEM\Data\voicerecview.rsc                                    System\Data\voicerecview.rsc
-
-#endif
-
Binary file voicerecorder/sis/101F87A3.cre has changed
--- a/voicerecorder/sis/VoiceRecorder.pkg	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +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:	Package file for VoiceRecorder.
-;
-; Languages
-&EN
-
-; Packet-header (name, uid, major, minor, build, type)
-#{"Voice Recorder"},(0x10207BB4),1,1,0,TYPE=SA, RU
-
-; Localised vendor name
-%{"Nokia"}
-
-; Unique vendor name
-:"Nokia"
-"\epoc32\release\armv5\urel\VoiceRecorder.exe"	              -"c:\sys\bin\VoiceRecorder.exe"
-"\epoc32\release\armv5\urel\VoiceRecorderUtils.dll"	-"c:\sys\bin\VoiceRecorderUtils.dll"
-"\epoc32\release\armv5\urel\VoiceRecorderRecView.dll"	-"c:\sys\bin\VoiceRecorderRecView.dll"
-"\epoc32\release\armv5\urel\NewService.dll"	-"c:\sys\bin\NewService.dll"
-"\epoc32\release\armv5\urel\GSVoiceRecorderPlugin.dll"	   -"c:\sys\bin\GSVoiceRecorderPlugin.dll"
-
-"\epoc32\data\Z\resource\apps\VoiceRecorder.rsc"		-"c:\resource\apps\VoiceRecorder.rsc"
-"\epoc32\data\Z\private\10003a3f\apps\VoiceRecorder_reg.rsc"		-"c:\private\10003a3f\import\apps\VoiceRecorder_reg.rsc"
-"\epoc32\data\Z\resource\plugins\GSVoiceRecorderPlugin.rsc"           -"c:\resource\plugins\GSVoiceRecorderPlugin.rsc"
-
-"\epoc32\data\Z\resource\apps\voicerecorder.mif"		-"c:\resource\apps\voicerecorder.mif"
-"\epoc32\data\Z\resource\apps\voicerecorder_aif.mif"		-"c:\resource\apps\voicerecorder_aif.mif"
-"\epoc32\data\Z\resource\apps\GSVoiceRecorderPlugin.mif"		-"c:\resource\apps\GSVoiceRecorderPlugin.mif"
-
-; CenRep ini file
-;"\epoc32\data\z\private\10202be9\101F87A3.txt"  -"c:\private\10202BE9\persists\101F87A3.txt"
-"101F87A3.cre" - "c:\private\10202be9\101F87A3.cre"
\ No newline at end of file
--- a/voicerecorder/sis/VoiceRecorder.xml	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ad:metadata xmlns="http://nokia.com/arrow/repository/ia_component"
-  xmlns:ad="http://nokia.com/arrow/application_metadata">
-  <!-- 
-  The appResources element contains all the language metadata of one IAC. 
-  IAC may have one or more language-specific component names 
-  and descriptions inside appResource element.
-  
-  Language ID 1 should be always defined as this is the default language
-  in case other languages supported by the client cannot be found.
-  -->
-  <appResources>
-    <appResource>
-      <!-- Language ID -->
-      <language>1</language>
-      <!-- Name in given language -->
-      <iacName>S60 VoiceRecorder</iacName>
-      <!-- Description in given language -->
-      <iacDescription>VoiceRecorder</iacDescription>
-    </appResource>
-  </appResources>
-  <!-- Specifies for what versions of what platform this component is for. -->
-  <swPlatformDep>
-    <!-- platform code -->
-    <platform>S60</platform>
-    <versionFrom>
-      <!--
-        platform version number separated in major and minor number (i.e. 
-        3.0 has 3 as major and 0 as minor)
-      -->    
-      <major>5</major>
-      <minor>0</minor>
-      <!--
-        date-element can be used to pinpoint platform version number to even 
-        more specific one. It is not currently used in the system.
-      -->
-      <date>
-        <year>2008</year>
-        <week>46</week>
-      </date>
-    </versionFrom>
-    <!-- the latest platform version this component is for -->
-    <versionTo>
-      <major>5</major>
-      <minor>0</minor>
-      <date>
-        <year>2010</year>
-        <week>1</week>
-      </date>
-    </versionTo>
-  </swPlatformDep>
-  <!-- specifies dependencies to other IACs -->
- 
-</ad:metadata>
\ No newline at end of file
Binary file voicerecorder/sis/VoiceRecorderCenrep.pkg has changed
--- a/voicerecorder/sis/VoiceRecorder_stub.pkg	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +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:	Package file for project VoiceRecorder stub sis.
-;
-;Language
-&EN
-
-;Header
-# {"Voice Recorder"}, (0x10207BB4), 1, 0, 0, TYPE=SA
-
-; Localised Vendor Name
-%{"Nokia"}
-
-;Unique Vendor name
-:"Nokia"
-
Binary file voicerecorder/sis/VoiceRecorder_stub.sis has changed
--- a/voicerecorder/sis/VoiceRecorder_udeb.pkg	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +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:	Package file for VoiceRecorder udeb version.
-;
-; Languages
-&EN
-
-; Packet-header (name, uid, major, minor, build, type)
-#{"Voice Recorder"},(0x10207BB4),1,1,0,TYPE=SA, RU
-
-; Localised vendor name
-%{"Nokia"}
-
-; Unique vendor name
-:"Vendor"
-
-"\epoc32\release\armv5\udeb\VoiceRecorder.exe"	              -"c:\sys\bin\VoiceRecorder.exe"
-"\epoc32\release\armv5\udeb\VoiceRecorderUtils.dll"	-"c:\sys\bin\VoiceRecorderUtils.dll"
-"\epoc32\release\armv5\udeb\VoiceRecorderRecView.dll"	-"c:\sys\bin\VoiceRecorderRecView.dll"
-"\epoc32\release\armv5\udeb\NewService.dll"	-"c:\sys\bin\NewService.dll"
-"\epoc32\release\armv5\udeb\GSVoiceRecorderPlugin.dll"	   -"c:\sys\bin\GSVoiceRecorderPlugin.dll"
-
-"\epoc32\data\Z\resource\apps\VoiceRecorder.rsc"		-"c:\resource\apps\VoiceRecorder.rsc"
-"\epoc32\data\Z\private\10003a3f\apps\VoiceRecorder_reg.rsc"		-"c:\private\10003a3f\import\apps\VoiceRecorder_reg.rsc"
-"\epoc32\data\Z\resource\plugins\GSVoiceRecorderPlugin.rsc"           -"c:\resource\plugins\GSVoiceRecorderPlugin.rsc"
-
-"\epoc32\data\Z\resource\apps\voicerecorder.mif"		-"c:\resource\apps\voicerecorder.mif"
-"\epoc32\data\Z\resource\apps\voicerecorder_aif.mif"		-"c:\resource\apps\voicerecorder_aif.mif"
-"\epoc32\data\Z\resource\apps\GSVoiceRecorderPlugin.mif"		-"c:\resource\apps\GSVoiceRecorderPlugin.mif"
-
-
-
-
-
-; CenRep ini file
-;"\epoc32\data\z\private\10202be9\101F87A3.txt"  -"c:\private\10202BE9\persists\101F87A3.txt"
-"101F87A3.cre" - "c:\private\10202be9\101F87A3.cre"
--- a/voicerecorder/sis/build_cenrep_sisx.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	Bat file for making mpxcenrep.sisx.
-rem
-Echo please copy key files to ROOT before build sis file
-del voicerecordercenrep.sis voicerecordercenrep.sisx
-makesis -v voicerecordercenrep.pkg
-signsis voicerecordercenrep.sis voicerecordercenrep.sisx Nokia_RnDCert_02.der Nokia_RnDCert_02.key
-//del voicerecordercenrep.sis
\ No newline at end of file
--- a/voicerecorder/sis/build_sis_stub.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	Bat file for making VoiceRecorder_stub.sis.
-rem
-makesis -s VoiceRecorder_stub.pkg VoiceRecorder_stub.sis
\ No newline at end of file
--- a/voicerecorder/sis/build_sisx.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:  Delete old sis file, creating new sis package and sign it.
-rem
-
-del VoiceRecorder.sis VoiceRecorder.sisx
-makesis -v VoiceRecorder.pkg
-signsis -v VoiceRecorder.sis VoiceRecorder.sisx Nokia_RnDCert_02.der Nokia_RnDCert_02.key
--- a/voicerecorder/sis/build_sisx_udeb.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:  Delete old udeb sis file, creating new sis package and sign it.
-rem
-
-del VoiceRecorder_udeb.sis VoiceRecorder_udeb.sisx
-makesis -v VoiceRecorder_udeb.pkg
-signsis -v VoiceRecorder_udeb.sis VoiceRecorder_udeb.sisx Nokia_RnDCert_02.der Nokia_RnDCert_02.key
--- a/voicerecorder/sis/change_version.bat	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-rem
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-rem All rights reserved.
-rem This component and the accompanying materials are made available
-rem under the terms of "Eclipse Public License v1.0"
-rem which accompanies this distribution, and is available
-rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-rem
-rem Initial Contributors:
-rem Nokia Corporation - initial contribution.
-rem
-rem Contributors:
-rem
-rem Description:	A utility to change version of the binaries.
-rem
-
-elftran.exe -version 15.9 \epoc32\release\armv5\urel\VoiceRecorder.exe
-elftran.exe -version 15.9 \epoc32\release\armv5\urel\VoiceRecorderUtils.dll
-elftran.exe -version 15.9 \epoc32\release\armv5\urel\VoiceRecorderRecView.dll
-elftran.exe -version 15.9 \epoc32\release\armv5\urel\NewService.dll
-elftran.exe -version 15.9 \epoc32\release\armv5\urel\GSVoiceRecorderPlugin.dll
-
-elftran.exe -version 15.9 \epoc32\release\armv5\udeb\VoiceRecorder.exe
-elftran.exe -version 15.9 \epoc32\release\armv5\udeb\VoiceRecorderUtils.dll
-elftran.exe -version 15.9 \epoc32\release\armv5\udeb\VoiceRecorderRecView.dll
-elftran.exe -version 15.9 \epoc32\release\armv5\udeb\NewService.dll
-elftran.exe -version 15.9 \epoc32\release\armv5\udeb\GSVoiceRecorderPlugin.dll
\ No newline at end of file
--- a/voicerecorder/sis/readme.txt	Thu Aug 19 09:57:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-***************************************
-* Steps to create Voice Recorder SISX
-***************************************
-
-************ Voice Recorder has to be upgraded as "full upgrade" package
-************ The DLLs and the resource file will always be upgraded together
-
-
-1. Upgrade the DLLs version number (refer to: Upgrade dll version number)
-2. Build the VoiceRecorder sisx file
-3. Build the cenrep sisx file
-
-
-**************************************
-*  Cenrep
-**************************************
-1. Build centrepconv.exe (refer to IAD wiki)
-
-2. Create the cenrep.txt file using the "cenrep Configuration Tool"
-Refer to:
-K:\s60\tools\toolsextensions\ConfigurationTool
-
-3. Copy the cenrep .txt file into c:\cenrep\
-
-4. Create the cenrep .cre file:
-K:\epoc32\release\winscw\udeb>centrepconv.exe  -nowait  -o c:\cenrep\101F87A3.cre c:\cenrep\101F87A3.txt
-
-5. To create the cenrep sis file:
-- copy "101F87A3.cre" into the "\voicerec\VoiceRecorder\sis" directory, then run the "build_cenrep_sisx.bat"
-
-
-**************************************
-* Upgrade dll version number
-**************************************
-1. Run "change_version.bat" script from \voicerec\VoiceRecorder\sis