201033
authorhgs
Mon, 23 Aug 2010 14:17:50 +0300
changeset 44 0a3ad94fc71c
parent 39 ac7857bd5fdb
child 47 74b7c6e79031
201033
radioapp/bwins/fmradiowidgetsu.def
radioapp/eabi/fmradiowidgetsu.def
radioapp/radioapplication/src/radioapplication.cpp
radioapp/radioenginewrapper/stub/radioenginewrapper_stub.pro
radioapp/radioenginewrapper/tsrc/inc/t_radioenginewrapper.h
radioapp/radioenginewrapper/tsrc/src/t_radioenginewrapper.cpp
radioapp/radioenginewrapper/tsrc/t_radioenginewrapper.pro
radioapp/radiouiengine/inc/radiogenrelocalizer.h
radioapp/radiowidgets/inc/radiomainview.h
radioapp/radiowidgets/inc/radiostationcarousel.h
radioapp/radiowidgets/radiowidgets.pro
radioapp/radiowidgets/res/fmradioui.qrc
radioapp/radiowidgets/src/radiofrequencystripbase.cpp
radioapp/radiowidgets/src/radiomainview.cpp
radioapp/radiowidgets/src/radiostationcarousel.cpp
radioapp/radiowidgets/src/radiostationsview.cpp
radioengine/engine/src/cradioengineimp.cpp
radioengine/engine/stub/group/bld.inf
radioengine/engine/stub/group/radioengine_stub.mmp
radioengine/settings/stub/group/bld.inf
radioengine/settings/stub/group/radioenginesettings_stub.mmp
radioengine/settings/tsrc/group/RestoreOrigCenrep.cmd
radioengine/settings/tsrc/group/TestEnvInit.cmd
radioengine/settings/tsrc/inc/trace.h
radioengine/settings/tsrc/inc/traceconfiguration.hrh
radioengine/settings/tsrc/rom/settingstestmodule.iby
radioengine/utils/stub/group/bld.inf
radioengine/utils/stub/group/radioengineutils_stub.mmp
radioengine/utils/stub/src/cradioremcontargetimp_stub.cpp
radiohswidget/locales/fmradiohswidget.qm
radiohswidget/locales/fmradiohswidget.ts
radiohswidget/qmakepluginstubs/fmradiohswidget.qtplugin
radiohswidget/radiohswidget.pro
radiohswidget/src/radiohswidget.cpp
radiohswidget/src/radiohswidgetplugin.cpp
--- a/radioapp/bwins/fmradiowidgetsu.def	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/bwins/fmradiowidgetsu.def	Mon Aug 23 14:17:50 2010 +0300
@@ -118,17 +118,16 @@
 	?setFrequency@RadioFrequencyStrip@@UAEXIHW4Direction@Scroll@@@Z @ 117 NONAME ; void RadioFrequencyStrip::setFrequency(unsigned int, int, enum Scroll::Direction)
 	?frequencyChanged@RadioStationCarousel@@IAEXIHH@Z @ 118 NONAME ; void RadioStationCarousel::frequencyChanged(unsigned int, int, int)
 	?trimIndex@RadioStationCarousel@@AAEHH@Z @ 119 NONAME ; int RadioStationCarousel::trimIndex(int)
-	?setAlternateSkippingMode@RadioStationCarousel@@QAEX_N@Z @ 120 NONAME ; void RadioStationCarousel::setAlternateSkippingMode(bool)
-	?initView@RadioWindow@@AAEXXZ @ 121 NONAME ; void RadioWindow::initView(void)
-	?trUtf8@RadioStationCarousel@@SA?AVQString@@PBD0H@Z @ 122 NONAME ; class QString RadioStationCarousel::trUtf8(char const *, char const *, int)
-	??_ERadioFadingLabel@@UAE@I@Z @ 123 NONAME ; RadioFadingLabel::~RadioFadingLabel(unsigned int)
-	?init@RadioWindow@@QAEXXZ @ 124 NONAME ; void RadioWindow::init(void)
-	?isScrollingAllowed@RadioStationCarousel@@ABE_NXZ @ 125 NONAME ; bool RadioStationCarousel::isScrollingAllowed(void) const
-	?qt_metacast@RadioFrequencyStrip@@UAEPAXPBD@Z @ 126 NONAME ; void * RadioFrequencyStrip::qt_metacast(char const *)
-	?staticMetaObject@RadioWindow@@2UQMetaObject@@B @ 127 NONAME ; struct QMetaObject const RadioWindow::staticMetaObject
-	?cleanRdsData@RadioStationCarousel@@QAEXXZ @ 128 NONAME ; void RadioStationCarousel::cleanRdsData(void)
-	?clearInfoText@RadioStationCarousel@@QAEXXZ @ 129 NONAME ; void RadioStationCarousel::clearInfoText(void)
-	?adjustPos@RadioStationCarousel@@AAEXH@Z @ 130 NONAME ; void RadioStationCarousel::adjustPos(int)
-	?frequencyAtIndex@RadioFrequencyStrip@@EBEIH@Z @ 131 NONAME ; unsigned int RadioFrequencyStrip::frequencyAtIndex(int) const
-	?scanAnimationFinished@RadioStationCarousel@@IAEXXZ @ 132 NONAME ; void RadioStationCarousel::scanAnimationFinished(void)
+	?initView@RadioWindow@@AAEXXZ @ 120 NONAME ; void RadioWindow::initView(void)
+	?trUtf8@RadioStationCarousel@@SA?AVQString@@PBD0H@Z @ 121 NONAME ; class QString RadioStationCarousel::trUtf8(char const *, char const *, int)
+	??_ERadioFadingLabel@@UAE@I@Z @ 122 NONAME ; RadioFadingLabel::~RadioFadingLabel(unsigned int)
+	?init@RadioWindow@@QAEXXZ @ 123 NONAME ; void RadioWindow::init(void)
+	?isScrollingAllowed@RadioStationCarousel@@ABE_NXZ @ 124 NONAME ; bool RadioStationCarousel::isScrollingAllowed(void) const
+	?qt_metacast@RadioFrequencyStrip@@UAEPAXPBD@Z @ 125 NONAME ; void * RadioFrequencyStrip::qt_metacast(char const *)
+	?staticMetaObject@RadioWindow@@2UQMetaObject@@B @ 126 NONAME ; struct QMetaObject const RadioWindow::staticMetaObject
+	?cleanRdsData@RadioStationCarousel@@QAEXXZ @ 127 NONAME ; void RadioStationCarousel::cleanRdsData(void)
+	?clearInfoText@RadioStationCarousel@@QAEXXZ @ 128 NONAME ; void RadioStationCarousel::clearInfoText(void)
+	?adjustPos@RadioStationCarousel@@AAEXH@Z @ 129 NONAME ; void RadioStationCarousel::adjustPos(int)
+	?frequencyAtIndex@RadioFrequencyStrip@@EBEIH@Z @ 130 NONAME ; unsigned int RadioFrequencyStrip::frequencyAtIndex(int) const
+	?scanAnimationFinished@RadioStationCarousel@@IAEXXZ @ 131 NONAME ; void RadioStationCarousel::scanAnimationFinished(void)
 
--- a/radioapp/eabi/fmradiowidgetsu.def	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/eabi/fmradiowidgetsu.def	Mon Aug 23 14:17:50 2010 +0300
@@ -86,51 +86,50 @@
 	_ZN20RadioStationCarousel19updateAntennaStatusEb @ 85 NONAME
 	_ZN20RadioStationCarousel21scanAnimationFinishedEv @ 86 NONAME
 	_ZN20RadioStationCarousel22handleRadiotextClickedERK12RadioStation @ 87 NONAME
-	_ZN20RadioStationCarousel24setAlternateSkippingModeEb @ 88 NONAME
-	_ZN20RadioStationCarousel4initER13RadioUiLoaderP13RadioUiEngine @ 89 NONAME
-	_ZN20RadioStationCarousel4skipEN11StationSkip4ModeE @ 90 NONAME
-	_ZN20RadioStationCarousel6updateERK12RadioStation @ 91 NONAME
-	_ZN20RadioStationCarousel8uiEngineEv @ 92 NONAME
-	_ZN20RadioStationCarousel9adjustPosEi @ 93 NONAME
-	_ZN20RadioStationCarousel9nextIndexEi @ 94 NONAME
-	_ZN20RadioStationCarousel9prevIndexEi @ 95 NONAME
-	_ZN20RadioStationCarousel9showEventEP10QShowEvent @ 96 NONAME
-	_ZN20RadioStationCarousel9trimIndexEi @ 97 NONAME
-	_ZN20RadioStationCarouselC1EP13QGraphicsItem @ 98 NONAME
-	_ZN20RadioStationCarouselC2EP13QGraphicsItem @ 99 NONAME
-	_ZNK11RadioWindow10metaObjectEv @ 100 NONAME
-	_ZNK16RadioFadingLabel10metaObjectEv @ 101 NONAME
-	_ZNK19RadioFrequencyStrip10isScanningEv @ 102 NONAME
-	_ZNK19RadioFrequencyStrip10metaObjectEv @ 103 NONAME
-	_ZNK19RadioFrequencyStrip13isInitializedEv @ 104 NONAME
-	_ZNK19RadioFrequencyStrip15stationsInRangeEjj @ 105 NONAME
-	_ZNK19RadioFrequencyStrip16frequencyAtIndexEi @ 106 NONAME
-	_ZNK20RadioStationCarousel10metaObjectEv @ 107 NONAME
-	_ZNK20RadioStationCarousel12favoriteIconEv @ 108 NONAME
-	_ZNK20RadioStationCarousel13isInitializedEv @ 109 NONAME
-	_ZNK20RadioStationCarousel14autoScrollTimeEv @ 110 NONAME
-	_ZNK20RadioStationCarousel14isInManualSeekEv @ 111 NONAME
-	_ZNK20RadioStationCarousel15nonFavoriteIconEv @ 112 NONAME
-	_ZNK20RadioStationCarousel16isInScanningModeEv @ 113 NONAME
-	_ZNK20RadioStationCarousel17isAntennaAttachedEv @ 114 NONAME
-	_ZNK20RadioStationCarousel18isScrollingAllowedEv @ 115 NONAME
-	_ZTI11RadioWindow @ 116 NONAME
-	_ZTI16RadioFadingLabel @ 117 NONAME
-	_ZTI19RadioFrequencyStrip @ 118 NONAME
-	_ZTI20RadioStationCarousel @ 119 NONAME
-	_ZTV11RadioWindow @ 120 NONAME
-	_ZTV16RadioFadingLabel @ 121 NONAME
-	_ZTV19RadioFrequencyStrip @ 122 NONAME
-	_ZTV20RadioStationCarousel @ 123 NONAME
-	_ZThn28_N20RadioStationCarousel11findStationEj @ 124 NONAME
-	_ZThn28_N20RadioStationCarousel13localizeGenreEi @ 125 NONAME
-	_ZThn28_N20RadioStationCarousel16handleUrlClickedERK12RadioStation @ 126 NONAME
-	_ZThn28_N20RadioStationCarousel17handleIconClickedERK12RadioStation @ 127 NONAME
-	_ZThn28_N20RadioStationCarousel22handleRadiotextClickedERK12RadioStation @ 128 NONAME
-	_ZThn28_NK20RadioStationCarousel12favoriteIconEv @ 129 NONAME
-	_ZThn28_NK20RadioStationCarousel14isInManualSeekEv @ 130 NONAME
-	_ZThn28_NK20RadioStationCarousel15nonFavoriteIconEv @ 131 NONAME
-	_ZThn8_N11RadioWindowD0Ev @ 132 NONAME
-	_ZThn8_N11RadioWindowD1Ev @ 133 NONAME
-	_ZThn8_N20RadioStationCarousel15mousePressEventEP24QGraphicsSceneMouseEvent @ 134 NONAME
+	_ZN20RadioStationCarousel4initER13RadioUiLoaderP13RadioUiEngine @ 88 NONAME
+	_ZN20RadioStationCarousel4skipEN11StationSkip4ModeE @ 89 NONAME
+	_ZN20RadioStationCarousel6updateERK12RadioStation @ 90 NONAME
+	_ZN20RadioStationCarousel8uiEngineEv @ 91 NONAME
+	_ZN20RadioStationCarousel9adjustPosEi @ 92 NONAME
+	_ZN20RadioStationCarousel9nextIndexEi @ 93 NONAME
+	_ZN20RadioStationCarousel9prevIndexEi @ 94 NONAME
+	_ZN20RadioStationCarousel9showEventEP10QShowEvent @ 95 NONAME
+	_ZN20RadioStationCarousel9trimIndexEi @ 96 NONAME
+	_ZN20RadioStationCarouselC1EP13QGraphicsItem @ 97 NONAME
+	_ZN20RadioStationCarouselC2EP13QGraphicsItem @ 98 NONAME
+	_ZNK11RadioWindow10metaObjectEv @ 99 NONAME
+	_ZNK16RadioFadingLabel10metaObjectEv @ 100 NONAME
+	_ZNK19RadioFrequencyStrip10isScanningEv @ 101 NONAME
+	_ZNK19RadioFrequencyStrip10metaObjectEv @ 102 NONAME
+	_ZNK19RadioFrequencyStrip13isInitializedEv @ 103 NONAME
+	_ZNK19RadioFrequencyStrip15stationsInRangeEjj @ 104 NONAME
+	_ZNK19RadioFrequencyStrip16frequencyAtIndexEi @ 105 NONAME
+	_ZNK20RadioStationCarousel10metaObjectEv @ 106 NONAME
+	_ZNK20RadioStationCarousel12favoriteIconEv @ 107 NONAME
+	_ZNK20RadioStationCarousel13isInitializedEv @ 108 NONAME
+	_ZNK20RadioStationCarousel14autoScrollTimeEv @ 109 NONAME
+	_ZNK20RadioStationCarousel14isInManualSeekEv @ 110 NONAME
+	_ZNK20RadioStationCarousel15nonFavoriteIconEv @ 111 NONAME
+	_ZNK20RadioStationCarousel16isInScanningModeEv @ 112 NONAME
+	_ZNK20RadioStationCarousel17isAntennaAttachedEv @ 113 NONAME
+	_ZNK20RadioStationCarousel18isScrollingAllowedEv @ 114 NONAME
+	_ZTI11RadioWindow @ 115 NONAME
+	_ZTI16RadioFadingLabel @ 116 NONAME
+	_ZTI19RadioFrequencyStrip @ 117 NONAME
+	_ZTI20RadioStationCarousel @ 118 NONAME
+	_ZTV11RadioWindow @ 119 NONAME
+	_ZTV16RadioFadingLabel @ 120 NONAME
+	_ZTV19RadioFrequencyStrip @ 121 NONAME
+	_ZTV20RadioStationCarousel @ 122 NONAME
+	_ZThn28_N20RadioStationCarousel11findStationEj @ 123 NONAME
+	_ZThn28_N20RadioStationCarousel13localizeGenreEi @ 124 NONAME
+	_ZThn28_N20RadioStationCarousel16handleUrlClickedERK12RadioStation @ 125 NONAME
+	_ZThn28_N20RadioStationCarousel17handleIconClickedERK12RadioStation @ 126 NONAME
+	_ZThn28_N20RadioStationCarousel22handleRadiotextClickedERK12RadioStation @ 127 NONAME
+	_ZThn28_NK20RadioStationCarousel12favoriteIconEv @ 128 NONAME
+	_ZThn28_NK20RadioStationCarousel14isInManualSeekEv @ 129 NONAME
+	_ZThn28_NK20RadioStationCarousel15nonFavoriteIconEv @ 130 NONAME
+	_ZThn8_N11RadioWindowD0Ev @ 131 NONAME
+	_ZThn8_N11RadioWindowD1Ev @ 132 NONAME
+	_ZThn8_N20RadioStationCarousel15mousePressEventEP24QGraphicsSceneMouseEvent @ 133 NONAME
 
--- a/radioapp/radioapplication/src/radioapplication.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radioapplication/src/radioapplication.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -132,7 +132,7 @@
 
     // Splash screen needs to be shown when not started by homescreen widget
     if ( !XQServiceUtil::isService() ) {
-        HbSplashScreen::setAppId( "fmradio" );
+        HbSplashScreen::setAppId( "0x2002FF4E" );
         HbSplashScreen::start();
     }
 
--- a/radioapp/radioenginewrapper/stub/radioenginewrapper_stub.pro	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radioenginewrapper/stub/radioenginewrapper_stub.pro	Mon Aug 23 14:17:50 2010 +0300
@@ -2,7 +2,7 @@
 # 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 the License "Eclipse Public License v1.0"
+# 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".
 #
@@ -14,87 +14,75 @@
 # Description:
 #
 
+TMP_DIR_NAME = enginewrapper_stub
 include(../../buildflags.pri)
 
 TEMPLATE    = lib
-TARGET      = radioenginewrapper_stub
+TARGET      = fmradioenginewrapper_stub
 CONFIG      += dll
 DEFINES     += BUILD_WRAPPER_DLL
-win32:DESTDIR = ../bin
-
-# Wrapper does not depend on QtGui or Orbit
-QT          = core
-CONFIG      -= gui hb
+    
 USE_DUMMY_RADIO_DATA:QT += xml
 
+INCLUDEPATH += ../inc
+INCLUDEPATH += ../../../common
+
+# Common headers
+HEADERS     += radiowrapperexport.h
+HEADERS     += radio_global.h
+HEADERS     += radiologger.h
+HEADERS     += radioenginewrapper.h
+HEADERS     += radiosettingsif.h
+HEADERS     += radiosettings.h
+HEADERS     += radiostationhandlerif.h
+HEADERS     += radioenginewrapperobserver.h
+
+INTERNAL_HEADERS += radiosettings_p.h
+
+#USE_DUMMY_RADIO_DATA:HEADERS += t_radiodataparser.h
+
+# Common sources
+SOURCES     += radiosettings.cpp
+SOURCES     += radiologger.cpp
+SOURCES     += radioenginewrapperobserver.cpp
+
+# Symbian specific stuff
 symbian: {
-    DEFINES += SYMBIAN
-    TARGET.EPOCALLOWDLLDATA = 1
-    TARGET.CAPABILITY = CAP_GENERAL_DLL
-    
     INCLUDEPATH += ../../../radioengine/utils/api
     INCLUDEPATH += ../../../radioengine/settings/api
     INCLUDEPATH += ../../../radioengine/engine/api
-    MMP_RULES += SMPSAFE
-}
-
-win32: {
-    INCLUDEPATH += inc/win32
-}
-INCLUDEPATH += ../inc
-INCLUDEPATH += ../commoninc
-
-
-symbian:LIBS *= -lradioengineutils_stub
-symbian:LIBS *= -lradioenginesettings_stub
-symbian:LIBS *= -lradioengine_stub
-symbian:LIBS *= -lflogger
-
-DEPENDPATH += $$INCLUDEPATH ../src
 
-# $$_PRO_FILE_PWD_ points to the directory of the pro file
-MOC_DIR = $$_PRO_FILE_PWD_/tmp
+    LIBS *= -lfmradioengineutils_stub
+    LIBS *= -lfmradioenginesettings_stub
+    LIBS *= -lfmradioengine_stub
 
-# Input
-HEADERS += radiowrapperexport.h
-HEADERS += radio_global.h
-HEADERS += radiologger.h
-HEADERS += radioenginewrapper.h
-HEADERS += radiosettings.h
-HEADERS += radiostationhandlerif.h
-
-INTERNAL_HEADERS += radiosettings_p.h
-
-symbian: {
-    HEADERS += cradioenginehandler.h
+    HEADERS += radioenginehandler.h
     HEADERS += mradioenginehandlerobserver.h
-    HEADERS += radiofrequencyscanninghandler.h
     HEADERS += radiocontroleventlistener.h
     HEADERS += radiordslistener.h
-    
-    INTERNAL_HEADERS += radioenginewrapper_p.h
-}
-
-#USE_DUMMY_RADIO_DATA:HEADERS += t_radiodataparser.h
 
-win32:HEADERS += radioenginewrapper_win32_p.h
-win32:HEADERS += $$INTERNAL_HEADERS
+    INTERNAL_HEADERS += radioenginewrapper_p.h
 
-SOURCES += radiosettings.cpp
-SOURCES += radiologger.cpp
-
-symbian: {
     SOURCES += radiosettings_p.cpp
     SOURCES += radioenginewrapper.cpp
     SOURCES += radioenginewrapper_p.cpp
-    SOURCES += cradioenginehandler.cpp
-    SOURCES += radiofrequencyscanninghandler.cpp
+    SOURCES += radioenginehandler.cpp
     SOURCES += radiocontroleventlistener.cpp
     SOURCES += radiordslistener.cpp
 }
 
 #USE_DUMMY_RADIO_DATA:SOURCES += t_radiodataparser.cpp
 
-win32:SOURCES += radiosettings_win32_p.cpp
-win32:SOURCES += radioenginewrapper_win32.cpp
-win32:SOURCES += radioenginewrapper_win32_p.cpp
+# Win32 specific stuff
+win32: {
+    INCLUDEPATH += inc/win32
+
+    HEADERS += radioenginewrapper_win32_p.h
+    HEADERS += $$INTERNAL_HEADERS
+
+    SOURCES += radiosettings_win32_p.cpp
+    SOURCES += radioenginewrapper_win32.cpp
+    SOURCES += radioenginewrapper_win32_p.cpp
+}
+
+DEPENDPATH  += $$INCLUDEPATH ../src
--- a/radioapp/radioenginewrapper/tsrc/inc/t_radioenginewrapper.h	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radioenginewrapper/tsrc/inc/t_radioenginewrapper.h	Mon Aug 23 14:17:50 2010 +0300
@@ -24,11 +24,11 @@
 #include <QtTest/QtTest>
 #include <e32property.h>
 #include <centralrepository.h>
+#include <RadioStubManager.h>
 
 #include "radioenginewrapperobserver.h"
 #include "radiostationhandlerif.h"
 //#include "radiostation.h"
-#include "radiostubmanager.h"
 #include "t_schedulerstartandstoptimer.h"
 
 class RadioUiEngine;
@@ -49,12 +49,11 @@
     enum SlotEnteredFlag
     {
     	NoSlotsEntered         = 0
-        ,HeadsetConnected       = 1 << 0
-        ,SeekingStarted         = 1 << 1
-        ,TunedToFrequency       = 1 << 2
-        ,MuteChanged            = 1 << 3
-        ,VolumeChanged          = 1 << 4
-        ,ItemAdded              = 1 << 5
+        ,TunedToFrequency       = 1 << 0
+        ,MuteChanged            = 1 << 1
+        ,VolumeChanged          = 1 << 2
+        ,AntennaChanged         = 1 << 3
+        ,ItemAdded              = 1 << 4
     };
     Q_DECLARE_FLAGS( Slots, SlotEnteredFlag )    
     
@@ -76,8 +75,6 @@
     void init();
     void cleanup();
     
-    void testIsEngineConstructed();
-    
     void testRadioSettingsReference();
     
     void testRegion();
@@ -86,16 +83,15 @@
 
     void testTuning();
     
-    void testTuningWithDelay();
+    void testCancelSeeking();
     
-    void testMuteToggling();
+    // Mute's callback function CRadioEngine::MrpoMuteChange() is commented in radio engine, so no point to test here.
+    // void testMute();
     
     void testVolumeSetting();
     
     void testLoudSpeakerUsage();
     
-    void testScanning();
-    
     void cleanupTestCase();
     
 private:
@@ -125,25 +121,22 @@
     
     // c =>
     void tunedToFrequency( uint frequency, int commandSender );
-    void seekingStarted( Seeking::Direction direction );
-    void radioStatusChanged( bool radioIsOn );
 
     void rdsAvailabilityChanged( bool available );
 
+    void increaseVolume();
+    void decreaseVolume();
     void volumeChanged( int volume );
     void muteChanged( bool muted );
 
+    void antennaStatusChanged( bool connected ); // uusi
+    
     void audioRouteChanged( bool loudspeaker );
-    void scanAndSaveFinished();
-    void headsetStatusChanged( bool connected );
 
     void skipPrevious();
     void skipNext();
     // <= from base class RadioStationHandlerIf 
       
-    // subfunctions used by the test framework called slots =>
-    // void testRadioStationModelInit();
-
     // from base class MSchedulerStartAndStopTimerObserver =>
     void Timeout( TUint aTimerId );    
     void CreateMUT();
@@ -155,7 +148,7 @@
     TInt tstGetFrequency();
     void tstSetScanningData( TUint aCount, TInt aMinFreq, TInt aFrequencyStepSize );
     void tstDefineAndAttachRadioServerProperties();
-    void tstCreateCRObjects();
+    TInt tstCreateCRObjects();
     
 private:
     RadioEngineWrapper* mEngineWrapper;
--- a/radioapp/radioenginewrapper/tsrc/src/t_radioenginewrapper.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radioenginewrapper/tsrc/src/t_radioenginewrapper.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -29,10 +29,10 @@
 #include "radiologger.h" //Radio::connect
 #include <cradiosettings.h>
 #include "mradioenginesettings.h"
-#include <radiostubmanager.h>
 #include "trace.h"
 #include "RadioClientServer.h"
 #include "radiointernalcrkeys.h"
+#include "radioengineutils.h"
 
 #define STUB  mRadioStubManager
 #define TUNER  mRadioStubManager->iTuner
@@ -42,8 +42,6 @@
 #define REMCONTARGET  mRadioStubManager->iRemConTarget
 
 // Constants
-const uint KTestFrequency1 = 89000000;
-const QString KTestStationName1 = "Radio Noice";
 
 // CONSTANTS
 _LIT_SECURITY_POLICY_PASS(KRadioServerReadPolicy);
@@ -64,6 +62,7 @@
 
     int res = QTest::qExec(&tv, 3, pass);
 
+    INFO_1( "Main, result value %i", res );
     return res;
 }
 
@@ -153,23 +152,22 @@
     QVERIFY2( KErrNone == err, "Setting key KRadioCRTunedFrequency failed!" );
 }
 
-
-void TestRadioEngineWrapper::seekingStarted( Seeking::Direction /* direction */)
-{
-FUNC_LOG;
-mEnteredSlots |= SeekingStarted;
-}
-    
-void TestRadioEngineWrapper::radioStatusChanged( bool /* radioIsOn */)
-{
-FUNC_LOG;
-}
-    
+        
 void TestRadioEngineWrapper::rdsAvailabilityChanged( bool /* available */)
 {
 FUNC_LOG;
 }
     
+void TestRadioEngineWrapper::increaseVolume()
+{
+FUNC_LOG;
+}
+
+void TestRadioEngineWrapper::decreaseVolume()
+{
+FUNC_LOG;
+}
+
 void TestRadioEngineWrapper::volumeChanged( int volume )
 {
 FUNC_LOG;
@@ -183,22 +181,16 @@
 mEnteredSlots |= MuteChanged;
 }
 
+void TestRadioEngineWrapper::antennaStatusChanged( bool /* muted */)
+{
+FUNC_LOG;
+mEnteredSlots |= AntennaChanged;
+}
+
 void TestRadioEngineWrapper::audioRouteChanged( bool /* loudspeaker */)
 {
 FUNC_LOG;
 }
-
-void TestRadioEngineWrapper::scanAndSaveFinished()
-{
-FUNC_LOG;
-}
-
-    
-void TestRadioEngineWrapper::headsetStatusChanged( bool /* connected */)
-{
-FUNC_LOG;
-mEnteredSlots |= HeadsetConnected;
-}
         
 void TestRadioEngineWrapper::skipPrevious()
 {
@@ -269,12 +261,6 @@
     mSchedulerTimer->StartTimer( 1000000, CSchedulerStopAndStartTimer::ETimerIdCreateMUT );
 }
  
-void TestRadioEngineWrapper::testIsEngineConstructed()
-{
-    FUNC_LOG;
-    QVERIFY2(  mEngineWrapper->isEngineConstructed(), "Radio Engine not constructed!" );;
-}
-
 void TestRadioEngineWrapper::testRadioSettingsReference()
 {
     FUNC_LOG;
@@ -306,20 +292,22 @@
 
     TInt err(KErrNone);
     TBool antennaAttached = ETrue;
-    QVERIFY2(KErrNone == err, "Attaching property ERadioServPsAntennaStatus failed!" );
     err = RProperty::Set( KStub_KRadioServerPropertyCategory, ERadioServPsAntennaStatus,  antennaAttached );
     INFO_1("RProperty::Set( KStub_KRadioServerPropertyCategory, ERadioServPsAntennaStatus,  antennaAttached ) err: %d", err);
     QVERIFY2( KErrNone == err, "Setting property ERadioServPsAntennaStatus failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
     QVERIFY2(  mEngineWrapper->isAntennaAttached(), "Headset/Antenna not connected!");
-    QVERIFY2(  mEnteredSlots &= HeadsetConnected, "Headset/Antenna not connected!");
-
-    err = mRadioCR->Set( KRadioCRVisualRadioPowerState, ETrue );
-    QVERIFY2( KErrNone == err, "Setting key KRadioCRVisualRadioPowerState failed!" );
+    ACCESSORYOBSERVER.iObserver->HeadsetConnectedCallbackL();
+    
+    TPckgBuf<TRsSettingsData> playerState;
+    playerState().iError = KErrNone;
+    playerState().iData1 = ETrue;
+    err = RProperty::Set( KStub_KRadioServerPropertyCategory, ERadioServPsPlayerState,  playerState );
+    QVERIFY2( KErrNone == err, "Setting property ERadioServPsPlayerState failed!" );
     
     mSchedulerTimer->StartTimer( 1000000 );
+    QVERIFY2(  mEngineWrapper->isAntennaAttached(), "Headset/Antenna not connected!");
     QVERIFY2(  mEngineWrapper->isRadioOn(), "Radio is not on!" );
-    //QVERIFY2(  !mEngineWrapper->isFrequencyValid( 0 ), "Zero frequency accepted!" );
 }
  
 void TestRadioEngineWrapper::testTuning()
@@ -327,103 +315,129 @@
     FUNC_LOG;
     QVERIFY2( mEngineWrapper->isRadioOn(), "Radio is not on!" );
 
-    mEngineWrapper->tuneFrequency( mEngineWrapper->minFrequency() );
-    mSchedulerTimer->StartTimer( 1000000 );
-    QVERIFY2(  mEngineWrapper->currentFrequency() ==  mEngineWrapper->minFrequency(), "Tuning to minimum frequency failed!");
-
-    uint freq_A = mEngineWrapper->currentFrequency();    
-    mSchedulerTimer->StartTimer( 1000 );
-    tstSetFrequency( freq_A + mEngineWrapper->frequencyStepSize() );   
-    mEngineWrapper->startSeeking( Seeking::Up );
-    QVERIFY2(  mEnteredSlots &= SeekingStarted, "Seeking upwards not started!");
-    mEnteredSlots &= !SeekingStarted;
-    
+    // Tune to minimum frequency
+    mEngineWrapper->setFrequency( mEngineWrapper->minFrequency() );
     TInt err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsFrequency,  tstGetFrequency() );
     QVERIFY2( KErrNone == err, "Setting property ERadioServPsFrequency failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
+    INFO_1("mEngineWrapper->minFrequency() = %i", mEngineWrapper->minFrequency() );
+    INFO_1("mEngineWrapper->currentFrequency() = %i", mEngineWrapper->currentFrequency() );
+    QVERIFY2(  mEngineWrapper->currentFrequency() ==  mEngineWrapper->minFrequency(), "Tuning to minimum frequency failed!");
 
-    QVERIFY2(  mEnteredSlots &= TunedToFrequency, "Not Tuned to next upward frequency!");
+    // Seek upwards
+    uint freq_A = mEngineWrapper->currentFrequency();    
+    //mSchedulerTimer->StartTimer( 1000 );
+    tstSetFrequency( freq_A + mEngineWrapper->frequencyStepSize() );   
+    mEngineWrapper->startSeeking( Seek::Up );    
+    err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsFrequency,  tstGetFrequency() );
+    QVERIFY2( KErrNone == err, "Setting property ERadioServPsFrequency failed!" );
+    mSchedulerTimer->StartTimer( 1000000 );
+    QVERIFY2(  TunedToFrequency == ( mEnteredSlots & TunedToFrequency ), "Not Tuned to next upward frequency!");
     mEnteredSlots &= !TunedToFrequency;
     uint freq_B = mEngineWrapper->currentFrequency();
     QVERIFY2(  (freq_B - mEngineWrapper->frequencyStepSize()) == freq_A, "Seeking upwards failed!");
 
 
+    // Tune to maximum frequency
     tstSetFrequency( mEngineWrapper->maxFrequency() );   
-    mEngineWrapper->tuneFrequency( mEngineWrapper->maxFrequency() );
+    mEngineWrapper->setFrequency( mEngineWrapper->maxFrequency() );
+    err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsFrequency,  tstGetFrequency() );
+    QVERIFY2( KErrNone == err, "Setting property ERadioServPsFrequency failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
+    QVERIFY2(  TunedToFrequency == ( mEnteredSlots & TunedToFrequency ), "Not Tuned to maximum frequency!");
+    mEnteredSlots &= !TunedToFrequency;
     QVERIFY2( mEngineWrapper->currentFrequency() == mEngineWrapper->maxFrequency(), "Current frequency not the maximum one!" );
 
-    mEngineWrapper->startSeeking( Seeking::Down );
-    QVERIFY2(  mEnteredSlots &= SeekingStarted, "Seeking downwards not started!");
-    mEnteredSlots &= !SeekingStarted;
-
+    
+    // Seek downwards
+    mEngineWrapper->startSeeking( Seek::Down );
     tstSetFrequency(  mEngineWrapper->currentFrequency() - (2 * mEngineWrapper->frequencyStepSize()) );   
     err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsFrequency,  tstGetFrequency() );
     QVERIFY2( KErrNone == err, "Setting property ERadioServPsFrequency failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
-
-    QVERIFY2(  mEnteredSlots &= TunedToFrequency, "Not Tuned to next downward frequency!");
+    QVERIFY2(  TunedToFrequency == ( mEnteredSlots & TunedToFrequency ), "Not Tuned to next downward frequency!");
     mEnteredSlots &= !TunedToFrequency;
     QVERIFY2(  mEngineWrapper->currentFrequency() ==  mEngineWrapper->maxFrequency()- (2 * mEngineWrapper->frequencyStepSize()), "Seeking downwards failed!");
 
-    mEngineWrapper->tuneFrequency( (mEngineWrapper->maxFrequency() + mEngineWrapper->minFrequency())/2 );
+    // Tune to avarage frequency
+    uint averageFrequency( mEngineWrapper->maxFrequency() + mEngineWrapper->minFrequency() );
+    averageFrequency /= 2;
+    averageFrequency -= ( averageFrequency % mEngineWrapper->frequencyStepSize() );
+    mEngineWrapper->setFrequency( averageFrequency );
+    err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsFrequency,  tstGetFrequency() );
+    QVERIFY2( KErrNone == err, "Setting property ERadioServPsFrequency failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
-    QVERIFY2(  mEngineWrapper->currentFrequency() ==  (mEngineWrapper->maxFrequency() + mEngineWrapper->minFrequency())/2, "Tuning to average frequency failed!");
+    QVERIFY2(  TunedToFrequency == ( mEnteredSlots & TunedToFrequency ), "Not Tuned to average frequency!");
+    mEnteredSlots &= !TunedToFrequency;
+    QVERIFY2(  mEngineWrapper->currentFrequency() ==  averageFrequency, "Tuning to average frequency failed!");
 
+    // Try to use frequency above maximum
     uint freq_C = mEngineWrapper->currentFrequency();
     TUNER.iSetFrequencyError.SetStubError( KRadioServErrFrequencyOutOfBandRange );
-    mEngineWrapper->tuneFrequency( mEngineWrapper->maxFrequency() + mEngineWrapper->frequencyStepSize() );
-    mSchedulerTimer->StartTimer( 1000000 );
-    
-    // Should be == not != as now. This is to continue after bug
+    mEngineWrapper->setFrequency( mEngineWrapper->maxFrequency() + mEngineWrapper->frequencyStepSize() );
+    mSchedulerTimer->StartTimer( 1000000 );    
+    // Should be == not != as now. This is done in order to complete tests.
     QVERIFY2( mEngineWrapper->currentFrequency() != freq_C, "Tuning over maximum frequency succeeded?");
     QVERIFY2( !mEngineWrapper->isFrequencyValid( mEngineWrapper->currentFrequency() ), "A frequency over maximum accepted?");
 
+    // Try to use frequency below minimum
     uint freq_D = mEngineWrapper->currentFrequency();
     TUNER.iSetFrequencyError.SetStubError( KRadioServErrFrequencyOutOfBandRange );
-    mEngineWrapper->tuneFrequency( mEngineWrapper->minFrequency() - mEngineWrapper->frequencyStepSize() );
+    mEngineWrapper->setFrequency( mEngineWrapper->minFrequency() - mEngineWrapper->frequencyStepSize() );
     mSchedulerTimer->StartTimer( 1000000 );
-    // Should be == not != as now. This is to continue after bug
+    // Should be == not != as now. This is done in order to complete tests.
     QVERIFY2(  mEngineWrapper->currentFrequency() != freq_D, "Tuning below minimum frequency succeeded?");
     QVERIFY2( !mEngineWrapper->isFrequencyValid( mEngineWrapper->currentFrequency() ), "A frequency below minimum accepted?");
     }
 
-void TestRadioEngineWrapper::testTuningWithDelay()
+void TestRadioEngineWrapper::testCancelSeeking()
     {
     FUNC_LOG;
     QVERIFY2( mEngineWrapper->isRadioOn(), "Radio is not on!" );
-    uint freq_A = mEngineWrapper->currentFrequency();
-    uint freq_B = mEngineWrapper->currentFrequency();
-    mEngineWrapper->tuneWithDelay( freq_B );
+
+    mEngineWrapper->startSeeking( Seek::Up, TuneReason::StationScanInitialization );    
     mSchedulerTimer->StartTimer( 1000000 );
-    QVERIFY2(  mEngineWrapper->currentFrequency() == freq_B, "Tuning with delay failed?");
-    mEngineWrapper->tuneWithDelay( freq_A );
+    TInt frequency1( mEngineWrapper->currentFrequency() );
+
+    mEngineWrapper->startSeeking( Seek::Up, TuneReason::StationScan );    
+    tstSetFrequency(  mEngineWrapper->currentFrequency() + mEngineWrapper->frequencyStepSize() );   
+    TInt err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsFrequency,  tstGetFrequency() );
+    QVERIFY2( KErrNone == err, "Setting property ERadioServPsFrequency failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
-    QVERIFY2(  mEngineWrapper->currentFrequency() == freq_A, "Tuning with delay failed?");    
+    QVERIFY2( mEngineWrapper->currentFrequency() > frequency1, "Seeking Upwards failed!" );
+    frequency1 = mEngineWrapper->currentFrequency();
+
+    mEngineWrapper->cancelSeeking();    
     }
 
-void TestRadioEngineWrapper::testMuteToggling()
+/* Mute's callback function CRadioEngine::MrpoMuteChange() is commented in radio engine, so no point to test here.
+void TestRadioEngineWrapper::testMute()
     {
     FUNC_LOG;
     QVERIFY2( mEngineWrapper->isRadioOn(), "Radio is not on!" );
+    // Toggle mute.
     TBool muted_1( mEngineWrapper->isMuted() );
-    mEngineWrapper->toggleMute();
-    
+    INFO_1( "muted_1", muted_1 );
+    mEngineWrapper->setMute( !muted_1 );
+    TInt err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsMuteStatus,  muted_1 ? 0x0 : 0xff );
+    QVERIFY2( KErrNone == err, "Setting property ERadioServPsMuteStatus failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
-    
     TBool muted_2( mEngineWrapper->isMuted() );
     QVERIFY2(  mEnteredSlots &= MuteChanged, "Mute not changed!");
     mEnteredSlots &= !MuteChanged;    
     QVERIFY2( muted_1 != muted_2, "Mute() not working!" );
-    mEngineWrapper->toggleMute();
-    
+
+    // Toggle back to original value
+    mEngineWrapper->setMute( muted_1 );
+    err = mPropertyFrequency.Set( KStub_KRadioServerPropertyCategory, ERadioServPsMuteStatus,  muted_1 );
+    QVERIFY2( KErrNone == err, "Setting property ERadioServPsMuteStatus failed!" );
     mSchedulerTimer->StartTimer( 1000000 );
-    
     TBool muted_3( mEngineWrapper->isMuted() );
     QVERIFY2(  mEnteredSlots &= MuteChanged, "Mute not changed!");
     mEnteredSlots &= !MuteChanged;    
     QVERIFY2( muted_1 == muted_3, "Mute status not changed to original value!") ;
     }
+*/
 
 
 void TestRadioEngineWrapper::testVolumeSetting()
@@ -433,7 +447,7 @@
     //  is missing from test constellation.
     QVERIFY2( mEngineWrapper->isRadioOn(), "Radio is not on!" );
     INFO_1( "mLastRecordedVolume: %i", mLastRecordedVolume );
-    TInt volume_1( 1000 );
+    TInt volume_1( 10 );
     mEngineWrapper->setVolume( volume_1 );
     
     mSchedulerTimer->StartTimer( 1000000 );
@@ -444,13 +458,39 @@
     QVERIFY2( volume_1 == mLastRecordedVolume, "Volume has unexpected value!") ;
 
     volume_1 = mLastRecordedVolume;
-    TInt volume_2( mLastRecordedVolume * 30 );
+    TInt volume_2( (mLastRecordedVolume + 5)%20 );
     mEngineWrapper->setVolume( volume_2 );
     
     mSchedulerTimer->StartTimer( 1000000 );
     
     INFO_1( "mLastRecordedVolume: %i", mLastRecordedVolume );
+    QVERIFY2(  mEnteredSlots &= VolumeChanged, "Volume not changed!");
+    mEnteredSlots &= !VolumeChanged;    
     QVERIFY2( volume_2 == mLastRecordedVolume, "Volume has unexpected value!") ;
+
+    // Increase volume
+    mEngineWrapper->setVolume( volume_1 );
+    mSchedulerTimer->StartTimer( 1000000 );
+    mEngineWrapper->increaseVolume();    
+    mSchedulerTimer->StartTimer( 1000000 );    
+    QVERIFY2(  mEnteredSlots &= VolumeChanged, "Volume not increased!");
+    mEnteredSlots &= !VolumeChanged;    
+    QVERIFY2( volume_1 != mLastRecordedVolume, "Volume has unexpected value, not increased!") ;
+    INFO_1( "mLastRecordedVolume: %i", mLastRecordedVolume );
+ 
+    // Decrease volume
+    mEngineWrapper->setVolume( volume_1 );
+    mSchedulerTimer->StartTimer( 1000000 );
+    mEngineWrapper->decreaseVolume();    
+    mSchedulerTimer->StartTimer( 1000000 );    
+    QVERIFY2(  mEnteredSlots &= VolumeChanged, "Volume not decreased!");
+    mEnteredSlots &= !VolumeChanged;    
+    QVERIFY2( volume_1 != mLastRecordedVolume, "Volume has unexpected value, not decreased!") ;
+    INFO_1( "mLastRecordedVolume: %i", mLastRecordedVolume );
+
+    mEngineWrapper->toggleAudioRoute();
+    mEngineWrapper->toggleAudioRoute();
+
     }
 
 void TestRadioEngineWrapper::testLoudSpeakerUsage()
@@ -461,18 +501,6 @@
     INFO_1( "isLoudSpeakerUsed: %i", isLoudSpeakerUsed );   
     }
 
-void TestRadioEngineWrapper::testScanning()
-    {
-    FUNC_LOG;
-    QVERIFY2( mEngineWrapper->isRadioOn(), "Radio is not on!" );
-    tstSetScanningData( 10, mEngineWrapper->minFrequency(), mEngineWrapper->frequencyStepSize() );
-    QVERIFY2( TUNER.iScanStations.iCount == 10, "Scanning not initialized!" );
-    mEngineWrapper->scanFrequencyBand();
-    mSchedulerTimer->StartTimer( 1000000 );
-    
-    INFO_1( "TUNER.iScanStations.iCount: %i", TUNER.iScanStations.iCount );
-    QVERIFY2( TUNER.iScanStations.iCount == 0, "Scanning not completed!" );
-    }
 
 /*!
  * called after the last testfunction was executed
@@ -480,11 +508,7 @@
 void TestRadioEngineWrapper::cleanupTestCase()
 {
     FUNC_LOG;
-	delete mEngineWrapper;
-	mEngineWrapper = NULL;
-    
-    //mSchedulerTimer->StartTimer( 1000000, CSchedulerStopAndStartTimer::ETimerIdDeleteMUT );
-        
+    DeleteMUT();    
 	delete mScheduler;
 	mScheduler = NULL;
     mRadioStubManagerChunk.Close();
@@ -536,16 +560,23 @@
     {
     FUNC_LOG;
     tstDefineAndAttachRadioServerProperties();
-    tstCreateCRObjects();
     TInt err( KErrNone );
-    TRAP( err, mEngineWrapper = new (ELeave) RadioEngineWrapper( *this, *this ) );
+    err = tstCreateCRObjects();
+    QVERIFY2(  KErrNone == err, "Radio CR not created!" ); 
+    TRAP( err, mEngineWrapper = new (ELeave) RadioEngineWrapper( *this ) );
+    RadioEngineUtils::InitializeL();
+    bool retVal( EFalse );
+    retVal = mEngineWrapper->init();
+    QVERIFY2( EFalse != retVal, "mEngineWrapper->init() failed!");
+    mEngineWrapper->addObserver( this );
     QVERIFY2(  KErrNone == err, "Radio Engine not constructed!" ); 
-    tstSetTunerCababilities();    
+    tstSetTunerCababilities();        
     }
 
 void TestRadioEngineWrapper::DeleteMUT()
     {
     FUNC_LOG;
+    mEngineWrapper->removeObserver( this );
     delete mEngineWrapper;
     mEngineWrapper = NULL;    
     }
@@ -611,11 +642,13 @@
     QVERIFY2(KErrNone == mPropertyBalance.Attach( KStub_KRadioServerPropertyCategory, ERadioServPsBalance ), "Property Attach() failed!");
     }
 
-void TestRadioEngineWrapper::tstCreateCRObjects()
+TInt TestRadioEngineWrapper::tstCreateCRObjects()
     {
+    FUNC_LOG;
     TInt err( KErrNone );
     TRAP( err, mRadioCR = CRepository::NewL(KStub_KRadioCRUid) );
-    QVERIFY2(  KErrNone == err, "Radio Central Repository create/open failed!" ); 
+    INFO_1( "Returning err = %i", err );
+    return err;
     }
 
 
--- a/radioapp/radioenginewrapper/tsrc/t_radioenginewrapper.pro	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radioenginewrapper/tsrc/t_radioenginewrapper.pro	Mon Aug 23 14:17:50 2010 +0300
@@ -1,19 +1,23 @@
+#
 # Copyright (c) 2010 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 file for radiouiengine's unit tests
-# Description:
+#
+# Description: project file for radioenginewrapper's unit tests
+#
 TEMPLATE = app
 TARGET = t_radioenginewrapper
 symbian: { 
     TARGET.CAPABILITY = CAP_GENERAL_DLL
-    TARGET.SID = 0x101FF976  # Tried testUids(0x01000111 and 0x01001005) but failed
+    TARGET.SID = 0x2002EAD8  # Tried  0x101FF976 but failed
     MMP_RULES += SMPSAFE    
 }
 DEPENDPATH += . \
@@ -21,6 +25,7 @@
     src
 INCLUDEPATH += . \
     ../../../inc \
+    ../../../common \
     ../inc \
     ../commoninc \
     ../../../../inc \
@@ -28,19 +33,19 @@
     /sf/app/radio/radioengine/utils/api \
     /sf/app/radio/radioengine/utils/inc \
     /sf/app/radio/radioengine/settings/api \
-    /epoc32/include/internal \
-    /sf/mw/mmmw/mmserv/radioutility/radio_utility/src \
+    /sf/mw/mmmw/inc \
+    /sf/mw/mmmw/mmserv/inc \
     /sf/mw/mmmw/mmserv/radioutility/inc \
-    /sf/mw/mmmw/mmserv/inc \
-    /sf/mw/mmmw/inc \
+    /sf/mw/mmmw/mmserv/radioutility/radio_utility/src \
     /sf/mw/mmmw/mmserv/radioutility/radioserver/inc
 CONFIG += qtestlib
-symbian:LIBS += -lradioenginewrapper_stub
+symbian:LIBS += -lfmradioenginewrapper_stub
+symbian:LIBS += -lfmradioengineutils_stub
 symbian:LIBS += -lRadioSession_Stub
 symbian:LIBS += -leuser
 symbian:LIBS += -lcentralrepository
 symbian:LIBS += -lflogger
 HEADERS += inc/t_radioenginewrapper.h
-HEADERS += inc\t_schedulerstartandstoptimer.h
+HEADERS += inc/t_schedulerstartandstoptimer.h
 SOURCES += src/t_radioenginewrapper.cpp
 SOURCES += src/t_schedulerstartandstoptimer.cpp
\ No newline at end of file
--- a/radioapp/radiouiengine/inc/radiogenrelocalizer.h	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiouiengine/inc/radiogenrelocalizer.h	Mon Aug 23 14:17:50 2010 +0300
@@ -45,73 +45,73 @@
 BEGIN_GENRE_MAP( EuropeanGenres )
                     // Genre code           // Text in Carousel                     // Text in Stations list                            // Text in Homescreen widget
     EUROPEAN_GENRE( RdsNone,                "",                                     "",                                                 "" ),
-    EUROPEAN_GENRE( RdsNews,                "txt_rad_info_news",                    "txt_rad_dblist_l1_mhz_val_news",                   "txt_rad_info_news_hs" ),
-    EUROPEAN_GENRE( RdsCurrentAffairs,      "txt_rad_info_current_affairs",         "txt_rad_dblist_l1_mhz_val_current_affairs",        "txt_rad_info_current_affairs_hs" ),
-    EUROPEAN_GENRE( RdsInformation,         "txt_rad_info_information",             "txt_rad_dblist_l1_mhz_val_information",            "txt_rad_info_information_hs" ),
-    EUROPEAN_GENRE( RdsSport,               "txt_rad_info_sport",                   "txt_rad_dblist_l1_mhz_val_sport",                  "txt_rad_info_sport_hs" ),
-    EUROPEAN_GENRE( RdsEducation,           "txt_rad_info_education",               "txt_rad_dblist_l1_mhz_val_education",              "txt_rad_info_education_hs" ),
-    EUROPEAN_GENRE( RdsDrama,               "txt_rad_info_drama",                   "txt_rad_dblist_l1_mhz_val_drama",                  "txt_rad_info_drama_hs" ),
-    EUROPEAN_GENRE( RdsCulture,             "txt_rad_info_culture",                 "txt_rad_dblist_l1_mhz_val_culture",                "txt_rad_info_culture_hs" ),
-    EUROPEAN_GENRE( RdsScience,             "txt_rad_info_science",                 "txt_rad_dblist_l1_mhz_val_science",                "txt_rad_info_science_hs" ),
-    EUROPEAN_GENRE( RdsVariedSpeech,        "txt_rad_info_varied",                  "txt_rad_dblist_l1_mhz_val_varied",                 "txt_rad_info_varied_hs" ),
-    EUROPEAN_GENRE( RdsPopMusic,            "txt_rad_info_pop_music",               "txt_rad_dblist_l1_mhz_val_pop_music",              "txt_rad_info_pop_music_hs" ),
-    EUROPEAN_GENRE( RdsRockMusic,           "txt_rad_info_rock_music",              "txt_rad_dblist_l1_mhz_val_rock_music",             "txt_rad_info_rock_music_hs" ),
-    EUROPEAN_GENRE( RdsEasyListening,       "txt_rad_info_easy_listening",          "txt_rad_dblist_l1_mhz_val_easy_listening",         "txt_rad_info_easy_listening_hs" ),
-    EUROPEAN_GENRE( RdsLightClassical,      "txt_rad_info_light_classical",         "txt_rad_dblist_l1_mhz_val_light_classical",        "txt_rad_info_light_classical_hs" ),
-    EUROPEAN_GENRE( RdsSeriousClassical,    "txt_rad_info_serious_classical",       "txt_rad_dblist_l1_mhz_val_serious_classical",      "txt_rad_info_serious_classical_hs" ),
-    EUROPEAN_GENRE( RdsOtherMusic,          "txt_rad_info_other_music",             "txt_rad_dblist_l1_mhz_val_other_music",            "txt_rad_info_other_music_hs" ),
-    EUROPEAN_GENRE( RdsWeather,             "txt_rad_info_weather",                 "txt_rad_dblist_l1_mhz_val_weather",                "txt_rad_info_weather_hs" ),
-    EUROPEAN_GENRE( RdsFinance,             "txt_rad_info_finance",                 "txt_rad_dblist_l1_mhz_val_finance",                "txt_rad_info_finance_hs" ),
-    EUROPEAN_GENRE( RdsChildrensProgrammes, "txt_rad_info_childrens_programmes",    "txt_rad_dblist_l1_mhz_val_childrens_programmes",   "txt_rad_info_childrens_programmes_hs" ),
-    EUROPEAN_GENRE( RdsSocialAffairs,       "txt_rad_info_social_affairs",          "txt_rad_dblist_l1_mhz_val_social_affairs",         "txt_rad_info_social_affairs_hs" ),
-    EUROPEAN_GENRE( RdsReligion,            "txt_rad_info_religion",                "txt_rad_dblist_l1_mhz_val_religion",               "txt_rad_info_religion_hs" ),
-    EUROPEAN_GENRE( RdsPhoneIn,             "txt_rad_info_phone_in",                "txt_rad_dblist_l1_mhz_val_phone_in",               "txt_rad_info_phone_in_hs" ),
-    EUROPEAN_GENRE( RdsTravel,              "txt_rad_info_travel",                  "txt_rad_dblist_l1_mhz_val_travel",                 "txt_rad_info_travel_hs" ),
-    EUROPEAN_GENRE( RdsLeisure,             "txt_rad_info_leisure",                 "txt_rad_dblist_l1_mhz_val_leisure",                "txt_rad_info_leisure_hs" ),
-    EUROPEAN_GENRE( RdsJazzMusic,           "txt_rad_info_jazz_music",              "txt_rad_dblist_l1_mhz_val_jazz_music",             "txt_rad_info_jazz_music_hs" ),
-    EUROPEAN_GENRE( RdsCountryMusic,        "txt_rad_info_country_music",           "txt_rad_dblist_l1_mhz_val_country_music",          "txt_rad_info_country_music_hs" ),
-    EUROPEAN_GENRE( RdsNationalMusic,       "txt_rad_info_national_music",          "txt_rad_dblist_l1_mhz_val_national_music",         "txt_rad_info_national_music_hs" ),
-    EUROPEAN_GENRE( RdsOldiesMusic,         "txt_rad_info_oldies_music",            "txt_rad_dblist_l1_mhz_val_oldies_music",           "txt_rad_info_oldies_music_hs" ),
-    EUROPEAN_GENRE( RdsFolkMusic,           "txt_rad_info_folk_music",              "txt_rad_dblist_l1_mhz_val_folk_music",             "txt_rad_info_folk_music_hs" ),
-    EUROPEAN_GENRE( RdsDocumentary,         "txt_rad_info_documentary",             "txt_rad_dblist_l1_mhz_val_documentary",            "txt_rad_info_documentary_hs" ),
-    EUROPEAN_GENRE( RdsAlarmTest,           "txt_rad_info_alarm_test",              "txt_rad_dblist_l1_mhz_val_alarm_test",             "txt_rad_info_alarm_test_hs" ),
-    EUROPEAN_GENRE( RdsAlarm,               "txt_rad_info_alarm",                   "txt_rad_dblist_l1_mhz_val_alarm",                  "txt_rad_info_alarm_hs" )
+    EUROPEAN_GENRE( RdsNews,                "txt_rad_info_news",                    "txt_rad_dblist_l1_mhz_val_news",                   "txt_fmradiohswidget_rad_info_news_hs" ),
+    EUROPEAN_GENRE( RdsCurrentAffairs,      "txt_rad_info_current_affairs",         "txt_rad_dblist_l1_mhz_val_current_affairs",        "txt_fmradiohswidget_rad_info_current_affairs_hs" ),
+    EUROPEAN_GENRE( RdsInformation,         "txt_rad_info_information",             "txt_rad_dblist_l1_mhz_val_information",            "txt_fmradiohswidget_rad_info_information_hs" ),
+    EUROPEAN_GENRE( RdsSport,               "txt_rad_info_sport",                   "txt_rad_dblist_l1_mhz_val_sport",                  "txt_fmradiohswidget_rad_info_sport_hs" ),
+    EUROPEAN_GENRE( RdsEducation,           "txt_rad_info_education",               "txt_rad_dblist_l1_mhz_val_education",              "txt_fmradiohswidget_rad_info_education_hs" ),
+    EUROPEAN_GENRE( RdsDrama,               "txt_rad_info_drama",                   "txt_rad_dblist_l1_mhz_val_drama",                  "txt_fmradiohswidget_rad_info_drama_hs" ),
+    EUROPEAN_GENRE( RdsCulture,             "txt_rad_info_culture",                 "txt_rad_dblist_l1_mhz_val_culture",                "txt_fmradiohswidget_rad_info_culture_hs" ),
+    EUROPEAN_GENRE( RdsScience,             "txt_rad_info_science",                 "txt_rad_dblist_l1_mhz_val_science",                "txt_fmradiohswidget_rad_info_science_hs" ),
+    EUROPEAN_GENRE( RdsVariedSpeech,        "txt_rad_info_varied",                  "txt_rad_dblist_l1_mhz_val_varied",                 "txt_fmradiohswidget_rad_info_varied_hs" ),
+    EUROPEAN_GENRE( RdsPopMusic,            "txt_rad_info_pop_music",               "txt_rad_dblist_l1_mhz_val_pop_music",              "txt_fmradiohswidget_rad_info_pop_music_hs" ),
+    EUROPEAN_GENRE( RdsRockMusic,           "txt_rad_info_rock_music",              "txt_rad_dblist_l1_mhz_val_rock_music",             "txt_fmradiohswidget_rad_info_rock_music_hs" ),
+    EUROPEAN_GENRE( RdsEasyListening,       "txt_rad_info_easy_listening",          "txt_rad_dblist_l1_mhz_val_easy_listening",         "txt_fmradiohswidget_rad_info_easy_listening_hs" ),
+    EUROPEAN_GENRE( RdsLightClassical,      "txt_rad_info_light_classical",         "txt_rad_dblist_l1_mhz_val_light_classical",        "txt_fmradiohswidget_rad_info_light_classical_hs" ),
+    EUROPEAN_GENRE( RdsSeriousClassical,    "txt_rad_info_serious_classical",       "txt_rad_dblist_l1_mhz_val_serious_classical",      "txt_fmradiohswidget_rad_info_serious_classical_hs" ),
+    EUROPEAN_GENRE( RdsOtherMusic,          "txt_rad_info_other_music",             "txt_rad_dblist_l1_mhz_val_other_music",            "txt_fmradiohswidget_rad_info_other_music_hs" ),
+    EUROPEAN_GENRE( RdsWeather,             "txt_rad_info_weather",                 "txt_rad_dblist_l1_mhz_val_weather",                "txt_fmradiohswidget_rad_info_weather_hs" ),
+    EUROPEAN_GENRE( RdsFinance,             "txt_rad_info_finance",                 "txt_rad_dblist_l1_mhz_val_finance",                "txt_fmradiohswidget_rad_info_finance_hs" ),
+    EUROPEAN_GENRE( RdsChildrensProgrammes, "txt_rad_info_childrens_programmes",    "txt_rad_dblist_l1_mhz_val_childrens_programmes",   "txt_fmradiohswidget_rad_info_childrens_programmes_hs" ),
+    EUROPEAN_GENRE( RdsSocialAffairs,       "txt_rad_info_social_affairs",          "txt_rad_dblist_l1_mhz_val_social_affairs",         "txt_fmradiohswidget_rad_info_social_affairs_hs" ),
+    EUROPEAN_GENRE( RdsReligion,            "txt_rad_info_religion",                "txt_rad_dblist_l1_mhz_val_religion",               "txt_fmradiohswidget_rad_info_religion_hs" ),
+    EUROPEAN_GENRE( RdsPhoneIn,             "txt_rad_info_phone_in",                "txt_rad_dblist_l1_mhz_val_phone_in",               "txt_fmradiohswidget_rad_info_phone_in_hs" ),
+    EUROPEAN_GENRE( RdsTravel,              "txt_rad_info_travel",                  "txt_rad_dblist_l1_mhz_val_travel",                 "txt_fmradiohswidget_rad_info_travel_hs" ),
+    EUROPEAN_GENRE( RdsLeisure,             "txt_rad_info_leisure",                 "txt_rad_dblist_l1_mhz_val_leisure",                "txt_fmradiohswidget_rad_info_leisure_hs" ),
+    EUROPEAN_GENRE( RdsJazzMusic,           "txt_rad_info_jazz_music",              "txt_rad_dblist_l1_mhz_val_jazz_music",             "txt_fmradiohswidget_rad_info_jazz_music_hs" ),
+    EUROPEAN_GENRE( RdsCountryMusic,        "txt_rad_info_country_music",           "txt_rad_dblist_l1_mhz_val_country_music",          "txt_fmradiohswidget_rad_info_country_music_hs" ),
+    EUROPEAN_GENRE( RdsNationalMusic,       "txt_rad_info_national_music",          "txt_rad_dblist_l1_mhz_val_national_music",         "txt_fmradiohswidget_rad_info_national_music_hs" ),
+    EUROPEAN_GENRE( RdsOldiesMusic,         "txt_rad_info_oldies_music",            "txt_rad_dblist_l1_mhz_val_oldies_music",           "txt_fmradiohswidget_rad_info_oldies_music_hs" ),
+    EUROPEAN_GENRE( RdsFolkMusic,           "txt_rad_info_folk_music",              "txt_rad_dblist_l1_mhz_val_folk_music",             "txt_fmradiohswidget_rad_info_folk_music_hs" ),
+    EUROPEAN_GENRE( RdsDocumentary,         "txt_rad_info_documentary",             "txt_rad_dblist_l1_mhz_val_documentary",            "txt_fmradiohswidget_rad_info_documentary_hs" ),
+    EUROPEAN_GENRE( RdsAlarmTest,           "txt_rad_info_alarm_test",              "txt_rad_dblist_l1_mhz_val_alarm_test",             "txt_fmradiohswidget_rad_info_alarm_test_hs" ),
+    EUROPEAN_GENRE( RdsAlarm,               "txt_rad_info_alarm",                   "txt_rad_dblist_l1_mhz_val_alarm",                  "txt_fmradiohswidget_rad_info_alarm_hs" )
 END_GENRE_MAP( EuropeanGenres )
 
 BEGIN_GENRE_MAP( AmericanGenres )
                     // Genre code           // Text in Carousel                     // Text in Stations list                            // Text in Homescreen widget
     AMERICAN_GENRE( RbdsNone,               "",                                     "",                                                 "" ),
-    AMERICAN_GENRE( RbdsNews,               "txt_rad_info_news",                    "txt_rad_dblist_l1_mhz_val_news",                   "txt_rad_info_news_hs" ),
-    AMERICAN_GENRE( RbdsInformation,        "txt_rad_info_information",             "txt_rad_dblist_l1_mhz_val_information",            "txt_rad_info_information_hs" ),
-    AMERICAN_GENRE( RbdsSports,             "txt_rad_info_sport",                   "txt_rad_dblist_l1_mhz_val_sport",                  "txt_rad_info_sport_hs" ),
-    AMERICAN_GENRE( RbdsTalk,               "txt_rad_info_talk",                    "txt_rad_dblist_l1_mhz_val_talk",                   "txt_rad_info_talk_hs" ),
-    AMERICAN_GENRE( RbdsRock,               "txt_rad_info_rock_music",              "txt_rad_dblist_l1_mhz_val_rock_music",             "txt_rad_info_rock_music_hs" ),
-    AMERICAN_GENRE( RbdsClassicRock,        "txt_rad_info_classic_rock",            "txt_rad_dblist_l1_mhz_val_classic_rock",           "txt_rad_info_classic_rock_hs" ),
-    AMERICAN_GENRE( RbdsAdultHits,          "txt_rad_info_adult_hits",              "txt_rad_dblist_l1_mhz_val_adult_hits",             "txt_rad_info_adult_hits_hs" ),
-    AMERICAN_GENRE( RbdsSoftRock,           "txt_rad_info_soft_rock",               "txt_rad_dblist_l1_mhz_val_soft_rock",              "txt_rad_info_soft_rock_hs" ),
-    AMERICAN_GENRE( RbdsTop40,              "txt_rad_info_top_40",                  "txt_rad_dblist_l1_mhz_val_top_40",                 "txt_rad_info_top_40_hs" ),
-    AMERICAN_GENRE( RbdsCountry,            "txt_rad_info_country_music",           "txt_rad_dblist_l1_mhz_val_country_music",          "txt_rad_info_country_music_hs" ),
-    AMERICAN_GENRE( RbdsOldies,             "txt_rad_info_oldies_music",            "txt_rad_dblist_l1_mhz_val_oldies_music",           "txt_rad_info_oldies_music_hs" ),
-    AMERICAN_GENRE( RbdsSoft,               "txt_rad_info_soft",                    "txt_rad_dblist_l1_mhz_val_soft",                   "txt_rad_info_soft_hs" ),
-    AMERICAN_GENRE( RbdsNostalgia,          "txt_rad_info_nostalgia",               "txt_rad_dblist_l1_mhz_val_nostalgia",              "txt_rad_info_nostalgia_hs" ),
-    AMERICAN_GENRE( RbdsJazz,               "txt_rad_info_jazz_music",              "txt_rad_dblist_l1_mhz_val_jazz_music",             "txt_rad_info_jazz_music_hs" ),
-    AMERICAN_GENRE( RbdsClassical,          "txt_rad_info_classical",               "txt_rad_dblist_l1_mhz_val_classical",              "txt_rad_info_classical_hs" ),
-    AMERICAN_GENRE( RbdsRhythmAndBlues,     "txt_rad_info_rhythm_and_blues",        "txt_rad_dblist_l1_mhz_val_rhythm_and_blues",       "txt_rad_info_rhythm_and_blues_hs" ),
-    AMERICAN_GENRE( RbdsSoftRhythmAndBlues, "txt_rad_info_soft_rhythm_and_blues",   "txt_rad_dblist_l1_mhz_val_soft_rhythm_and_blues",  "txt_rad_info_soft_rhythm_and_blues_hs" ),
-    AMERICAN_GENRE( RbdsLanguage,           "txt_rad_info_language",                "txt_rad_dblist_l1_mhz_val_language",               "txt_rad_info_language_hs" ),
-    AMERICAN_GENRE( RbdsReligiousMusic,     "txt_rad_info_religious_music",         "txt_rad_dblist_l1_mhz_val_religious_music",        "txt_rad_info_religious_music_hs" ),
-    AMERICAN_GENRE( RbdsReligiousTalk,      "txt_rad_info_religious_talk",          "txt_rad_dblist_l1_mhz_val_religious_talk",         "txt_rad_info_religious_talk_hs" ),
-    AMERICAN_GENRE( RbdsPersonality,        "txt_rad_info_personality",             "txt_rad_dblist_l1_mhz_val_personality",            "txt_rad_info_personality_hs" ),
-    AMERICAN_GENRE( RbdsPublic,             "txt_rad_info_public",                  "txt_rad_dblist_l1_mhz_val_public",                 "txt_rad_info_public_hs" ),
-    AMERICAN_GENRE( RbdsCollege,            "txt_rad_info_college",                 "txt_rad_dblist_l1_mhz_val_college",                "txt_rad_info_college_hs" ),
+    AMERICAN_GENRE( RbdsNews,               "txt_rad_info_news",                    "txt_rad_dblist_l1_mhz_val_news",                   "txt_fmradiohswidget_rad_info_news_hs" ),
+    AMERICAN_GENRE( RbdsInformation,        "txt_rad_info_information",             "txt_rad_dblist_l1_mhz_val_information",            "txt_fmradiohswidget_rad_info_information_hs" ),
+    AMERICAN_GENRE( RbdsSports,             "txt_rad_info_sport",                   "txt_rad_dblist_l1_mhz_val_sport",                  "txt_fmradiohswidget_rad_info_sport_hs" ),
+    AMERICAN_GENRE( RbdsTalk,               "txt_rad_info_talk",                    "txt_rad_dblist_l1_mhz_val_talk",                   "txt_fmradiohswidget_rad_info_talk_hs" ),
+    AMERICAN_GENRE( RbdsRock,               "txt_rad_info_rock_music",              "txt_rad_dblist_l1_mhz_val_rock_music",             "txt_fmradiohswidget_rad_info_rock_music_hs" ),
+    AMERICAN_GENRE( RbdsClassicRock,        "txt_rad_info_classic_rock",            "txt_rad_dblist_l1_mhz_val_classic_rock",           "txt_fmradiohswidget_rad_info_classic_rock_hs" ),
+    AMERICAN_GENRE( RbdsAdultHits,          "txt_rad_info_adult_hits",              "txt_rad_dblist_l1_mhz_val_adult_hits",             "txt_fmradiohswidget_rad_info_adult_hits_hs" ),
+    AMERICAN_GENRE( RbdsSoftRock,           "txt_rad_info_soft_rock",               "txt_rad_dblist_l1_mhz_val_soft_rock",              "txt_fmradiohswidget_rad_info_soft_rock_hs" ),
+    AMERICAN_GENRE( RbdsTop40,              "txt_rad_info_top_40",                  "txt_rad_dblist_l1_mhz_val_top_40",                 "txt_fmradiohswidget_rad_info_top_40_hs" ),
+    AMERICAN_GENRE( RbdsCountry,            "txt_rad_info_country_music",           "txt_rad_dblist_l1_mhz_val_country_music",          "txt_fmradiohswidget_rad_info_country_music_hs" ),
+    AMERICAN_GENRE( RbdsOldies,             "txt_rad_info_oldies_music",            "txt_rad_dblist_l1_mhz_val_oldies_music",           "txt_fmradiohswidget_rad_info_oldies_music_hs" ),
+    AMERICAN_GENRE( RbdsSoft,               "txt_rad_info_soft",                    "txt_rad_dblist_l1_mhz_val_soft",                   "txt_fmradiohswidget_rad_info_soft_hs" ),
+    AMERICAN_GENRE( RbdsNostalgia,          "txt_rad_info_nostalgia",               "txt_rad_dblist_l1_mhz_val_nostalgia",              "txt_fmradiohswidget_rad_info_nostalgia_hs" ),
+    AMERICAN_GENRE( RbdsJazz,               "txt_rad_info_jazz_music",              "txt_rad_dblist_l1_mhz_val_jazz_music",             "txt_fmradiohswidget_rad_info_jazz_music_hs" ),
+    AMERICAN_GENRE( RbdsClassical,          "txt_rad_info_classical",               "txt_rad_dblist_l1_mhz_val_classical",              "txt_fmradiohswidget_rad_info_classical_hs" ),
+    AMERICAN_GENRE( RbdsRhythmAndBlues,     "txt_rad_info_rhythm_and_blues",        "txt_rad_dblist_l1_mhz_val_rhythm_and_blues",       "txt_fmradiohswidget_rad_info_rhythm_and_blues_hs" ),
+    AMERICAN_GENRE( RbdsSoftRhythmAndBlues, "txt_rad_info_soft_rhythm_and_blues",   "txt_rad_dblist_l1_mhz_val_soft_rhythm_and_blues",  "txt_fmradiohswidget_rad_info_soft_rhythm_and_blues_hs" ),
+    AMERICAN_GENRE( RbdsLanguage,           "txt_rad_info_language",                "txt_rad_dblist_l1_mhz_val_language",               "txt_fmradiohswidget_rad_info_language_hs" ),
+    AMERICAN_GENRE( RbdsReligiousMusic,     "txt_rad_info_religious_music",         "txt_rad_dblist_l1_mhz_val_religious_music",        "txt_fmradiohswidget_rad_info_religious_music_hs" ),
+    AMERICAN_GENRE( RbdsReligiousTalk,      "txt_rad_info_religious_talk",          "txt_rad_dblist_l1_mhz_val_religious_talk",         "txt_fmradiohswidget_rad_info_religious_talk_hs" ),
+    AMERICAN_GENRE( RbdsPersonality,        "txt_rad_info_personality",             "txt_rad_dblist_l1_mhz_val_personality",            "txt_fmradiohswidget_rad_info_personality_hs" ),
+    AMERICAN_GENRE( RbdsPublic,             "txt_rad_info_public",                  "txt_rad_dblist_l1_mhz_val_public",                 "txt_fmradiohswidget_rad_info_public_hs" ),
+    AMERICAN_GENRE( RbdsCollege,            "txt_rad_info_college",                 "txt_rad_dblist_l1_mhz_val_college",                "txt_fmradiohswidget_rad_info_college_hs" ),
     AMERICAN_GENRE( RbdsUnassigned1,        "",                                     "",                                                 "" ),
     AMERICAN_GENRE( RbdsUnassigned2,        "",                                     "",                                                 "" ),
     AMERICAN_GENRE( RbdsUnassigned3,        "",                                     "",                                                 "" ),
     AMERICAN_GENRE( RbdsUnassigned4,        "",                                     "",                                                 "" ),
     AMERICAN_GENRE( RbdsUnassigned5,        "",                                     "",                                                 "" ),
-    AMERICAN_GENRE( RbdsWeather,            "txt_rad_info_weather",                 "txt_rad_dblist_l1_mhz_val_weather",                "txt_rad_info_weather_hs" ),
-    AMERICAN_GENRE( RbdsEmergencyTest,      "txt_rad_info_alarm_test",              "txt_rad_dblist_l1_mhz_val_alarm_test",             "txt_rad_info_alarm_test_hs" ),
-    AMERICAN_GENRE( RbdsEmergency,          "txt_rad_info_alarm",                   "txt_rad_dblist_l1_mhz_val_alarm",                  "txt_rad_info_alarm_hs" ),
+    AMERICAN_GENRE( RbdsWeather,            "txt_rad_info_weather",                 "txt_rad_dblist_l1_mhz_val_weather",                "txt_fmradiohswidget_rad_info_weather_hs" ),
+    AMERICAN_GENRE( RbdsEmergencyTest,      "txt_rad_info_alarm_test",              "txt_rad_dblist_l1_mhz_val_alarm_test",             "txt_fmradiohswidget_rad_info_alarm_test_hs" ),
+    AMERICAN_GENRE( RbdsEmergency,          "txt_rad_info_alarm",                   "txt_rad_dblist_l1_mhz_val_alarm",                  "txt_fmradiohswidget_rad_info_alarm_hs" ),
 END_GENRE_MAP( AmericanGenres )
 
 /*!
--- a/radioapp/radiowidgets/inc/radiomainview.h	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/inc/radiomainview.h	Mon Aug 23 14:17:50 2010 +0300
@@ -56,6 +56,7 @@
     void setFrequencyFromEngine( uint frequency, int reason );
     void skip( int skipMode );
     void openStationsView();
+    void startFirstTimeScanning();
     void toggleScanning();
     void toggleFavorite();
     void seekingStarted();
@@ -65,9 +66,6 @@
     void handleFavoriteChange( const RadioStation& station );
     void saveActivity();
 
-    void toggleSkippingMode();  //TODO: Remove. Temporary test code
-    void resetFirstTimeCount(); //TODO: Remove. Temporary test code
-
 private:
 
 // from base class RadioViewBase
--- a/radioapp/radiowidgets/inc/radiostationcarousel.h	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/inc/radiostationcarousel.h	Mon Aug 23 14:17:50 2010 +0300
@@ -116,8 +116,6 @@
 
     void setLandscape( bool landscape );
 
-    void setAlternateSkippingMode( bool alternateSkipping ); //TODO: Remove this! This is test code
-
 signals:
 
     void frequencyChanged( uint frequency, int reason, int direction );
@@ -225,8 +223,6 @@
 
     bool                                mManualSeekMode;
 
-    bool                                mAlternateSkipping;
-
 #ifdef USE_DEBUGGING_CONTROLS
     RadioFadingLabel*                   mRdsLabel;
 #endif
--- a/radioapp/radiowidgets/radiowidgets.pro	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/radiowidgets.pro	Mon Aug 23 14:17:50 2010 +0300
@@ -72,4 +72,5 @@
 SOURCES     += radiocarouselanimator.cpp
 SOURCES     += radiohistoryview.cpp
 
+DOCML       += res/layout/stationsview.docml res/layout/mainview.docml res/layout/historyview.docml
 RESOURCES   += res/fmradioui.qrc
--- a/radioapp/radiowidgets/res/fmradioui.qrc	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/res/fmradioui.qrc	Mon Aug 23 14:17:50 2010 +0300
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <RCC>
     <qresource>
-        <file>layout/mainview.docml</file>
-        <file>layout/stationsview.docml</file>
-        <file>layout/historyview.docml</file>
+        <file alias="layout/mainview.docml">layout/mainview.docml.bin</file>
+        <file alias="layout/stationsview.docml">layout/stationsview.docml.bin</file>
+        <file alias="layout/historyview.docml">layout/historyview.docml.bin</file>
         <file>layout/radiocarouselitem.css</file>
         <file>layout/radiocarouselitem.widgetml</file>
     </qresource>
--- a/radioapp/radiowidgets/src/radiofrequencystripbase.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/src/radiofrequencystripbase.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -287,7 +287,7 @@
  */
 void RadioFrequencyStripBase::handleLeftButton()
 {
-    skipToPreviousFavorite();
+    skipToPrevious();
 }
 
 /*!
@@ -295,7 +295,7 @@
  */
 void RadioFrequencyStripBase::handleRightButton()
 {
-    skipToNextFavorite();
+    skipToNext();
 }
 
 /*!
@@ -455,7 +455,7 @@
     RadioStripBase::mouseReleaseEvent( event );
 
     mManualSeekTimer->stop();
-    if ( mManualSeekMode && !isScrolling() ) {
+    if ( mManualSeekMode ) {
         mManualSeekTimer->start( FrequencyStrip::MANUALSEEK_END_TIMEOUT );
     }
 }
--- a/radioapp/radiowidgets/src/radiomainview.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/src/radiomainview.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -171,11 +171,6 @@
     // "Play history" menu item
     connectViewChangeMenuItem( DOCML::MV_NAME_HISTORYVIEW_ACTION, SLOT(activateHistoryView()) );
 
-    //TODO: REMOVE. THIS IS TEMPORARY TEST CODE
-    toggleSkippingMode();
-    menu()->addAction( "-- Reset start count", this, SLOT(resetFirstTimeCount()) );
-    // END TEMPORARY TEST CODE
-
     updateAudioRoute( mUiEngine->isUsingLoudspeaker() );
 
     // Add "back" navigation action to put the application to background
@@ -191,9 +186,11 @@
 
     const bool firsTimeStart = mUiEngine->isFirstTimeStart();
     const int rowCount = mUiEngine->stationModel().rowCount();
-    if ( firsTimeStart && rowCount == 0 ){
-        QTimer::singleShot( 100, this, SLOT(toggleScanning()) );
-    }
+
+   if ( firsTimeStart && rowCount == 0 ){
+            QTimer::singleShot( 4500, this, SLOT(startFirstTimeScanning()) );
+        }
+
 
     Radio::connect( static_cast<HbApplication*>( qApp ),    SIGNAL(aboutToQuit()),
                     this,                                   SLOT(saveActivity()) );
@@ -329,6 +326,16 @@
 /*!
  * Private slot
  */
+void RadioMainView::startFirstTimeScanning()
+{
+    if ( mUiEngine->isAntennaAttached() ){
+        QTimer::singleShot( 100, this, SLOT(toggleScanning()) );
+    }
+}
+
+/*!
+ * Private slot
+ */
 void RadioMainView::toggleScanning()
 {
     mFrequencyStrip->cancelManualSeek();
@@ -378,6 +385,11 @@
     HbAction* scanAction = mUiLoader->findObject<HbAction>( DOCML::MV_NAME_SCAN_ACTION );
     scanAction->setEnabled( connected );
     mCarousel->updateAntennaStatus( connected );
+    const bool firsTimeStart = mUiEngine->isFirstTimeStart();
+    const int rowCount = mUiEngine->stationModel().rowCount();
+    if ( firsTimeStart && rowCount == 0 && connected ){
+            QTimer::singleShot( 100, this, SLOT(toggleScanning()) );
+        }
 }
 
 /*!
@@ -461,32 +473,6 @@
 }
 
 /*!
- * Private slot
- */
-void RadioMainView::toggleSkippingMode()
-{
-    if ( !mSkippingAction ) {
-        mSkippingAction = menu()->addAction( "", this, SLOT(toggleSkippingMode()) );
-    }
-
-    mAlternateSkipping = !mAlternateSkipping;
-    mCarousel->setAlternateSkippingMode( mAlternateSkipping );
-    if ( mAlternateSkipping ) {
-        mSkippingAction->setText( "-- Normal skipping mode" );
-    } else {
-        mSkippingAction->setText( "-- Alternate skipping mode" );
-    }
-}
-
-/*!
- * Private slot
- */
-void RadioMainView::resetFirstTimeCount()
-{
-    mUiEngine->setFirstTimeStartPerformed( false );
-}
-
-/*!
  *
  */
 void RadioMainView::updateFavoriteButton()
--- a/radioapp/radiowidgets/src/radiostationcarousel.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/src/radiostationcarousel.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -82,8 +82,7 @@
     mModel( NULL ),
     mPosAdjustmentDisabled( false ),
     mScrollDirection( Scroll::Shortest ),
-    mManualSeekMode( false ),
-    mAlternateSkipping( false )
+    mManualSeekMode( false )
 #ifdef USE_DEBUGGING_CONTROLS
     ,mRdsLabel( new RadioFadingLabel( this ) )
 #endif // USE_DEBUGGING_CONTROLS
@@ -389,9 +388,6 @@
         cleanRdsData();
         mInfoText->setAlignment( Qt::AlignBottom | Qt::AlignHCenter );
         mInfoText->setPlainText( hbTrId( "txt_rad_list_searching_all_available_stations_ple" ) );
-    } else if ( type == CarouselInfoText::ManualSeek ) {
-        mInfoText->setAlignment( Qt::AlignBottom | Qt::AlignHCenter );
-        mInfoText->setPlainText( "Manual Seek Mode" );
     }
 
     mInfoText->setVisible( true );
@@ -424,9 +420,7 @@
     setEnabled( !manualSeekActive );
 
     mItems[CenterItem]->setSeekLayout( manualSeekActive );
-    if ( manualSeekActive ) {
-        setInfoText( CarouselInfoText::ManualSeek );
-    } else {
+    if ( !manualSeekActive ) {
         clearInfoText();
         setFrequency( mUiEngine->currentFrequency(), TuneReason::Unspecified );
     }
@@ -449,14 +443,6 @@
 }
 
 /*!
- * TODO: Remove this! This is test code
- */
-void RadioStationCarousel::setAlternateSkippingMode( bool alternateSkipping )
-{
-    mAlternateSkipping = alternateSkipping;
-}
-
-/*!
  * Private slot
  *
  */
@@ -807,11 +793,7 @@
         if ( mode.testFlag( NoAnim ) ) {
             scrollTime = 0;
         } else if ( mode.testFlag( FromPanGesture ) ) {
-            if ( mAlternateSkipping ) { //TODO: Remove this! This is test code
-                scrollTime = 500;
-            } else {
-                scrollTime = 300;
-            }
+            scrollTime = 500;
         } else if ( mode.testFlag( FromSwipeGesture ) ) {
             scrollTime = 100;
         }
@@ -884,35 +866,24 @@
             newPos = 0;
             mScrollDirection = Scroll::Right;
             if ( !mIsCustomFreq ) {
-
-                if ( mAlternateSkipping ) { //TODO: Remove this! This is test code
-                    const uint newFreq = mModel->findClosest( mItems[CenterItem]->frequency(), StationSkip::PreviousFavorite ).frequency();
-                    if ( newFreq > 0 ) {
-                        newIndex = mModel->indexFromFrequency( newFreq );
-                    } else {
-                        needsToScroll = false;
-                        newPos = mMidScrollPos;
-                    } // End test code
-
+                const uint newFreq = mModel->findClosest( mItems[CenterItem]->frequency(), StationSkip::PreviousFavorite ).frequency();
+                if ( newFreq > 0 ) {
+                    newIndex = mModel->indexFromFrequency( newFreq );
                 } else {
-                    --newIndex;
+                    needsToScroll = false;
+                    newPos = mMidScrollPos;
                 }
             }
         } else {
             mScrollDirection = Scroll::Left;
             newPos = mMaxScrollPos;
 
-            if ( mAlternateSkipping ) { //TODO: Remove this! This is test code
-                const uint newFreq = mModel->findClosest( mItems[CenterItem]->frequency(), StationSkip::NextFavorite ).frequency();
-                if ( newFreq > 0 ) {
-                    newIndex = mModel->indexFromFrequency( newFreq );
-                } else {
-                    needsToScroll = false;
-                    newPos = mMidScrollPos;
-                } // End test code
-
+            const uint newFreq = mModel->findClosest( mItems[CenterItem]->frequency(), StationSkip::NextFavorite ).frequency();
+            if ( newFreq > 0 ) {
+                newIndex = mModel->indexFromFrequency( newFreq );
             } else {
-                ++newIndex;
+                needsToScroll = false;
+                newPos = mMidScrollPos;
             }
         }
     }
--- a/radioapp/radiowidgets/src/radiostationsview.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioapp/radiowidgets/src/radiostationsview.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -271,7 +271,7 @@
 void RadioStationsView::deleteStation()
 {
     mCurrentQuestion = DeleteStation;
-    askQuestion( hbTrId( "txt_rad_menu_delete_station" ) );
+    askQuestion( hbTrId( "txt_rad_info_delete_station" ) );
 }
 
 /*!
--- a/radioengine/engine/src/cradioengineimp.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/engine/src/cradioengineimp.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -833,7 +833,7 @@
             TInt min = iSettings->EngineSettings().DefaultMinVolumeLevel();
             if ( --volume < min )
                 {
-                volume = min;
+                volume = 0;
                 }
             }
         else if ( aDirection == RadioEngine::ERadioIncVolume )
@@ -868,18 +868,17 @@
 
         if ( aVolume == 0 )
             {
+            iSettings->RadioSetter().SetVolume( aVolume );
+            NotifyRadioEvent( ERadioEventVolume, KErrNone );
             SetVolumeMuted( ETrue );
             }
         else
             {
-            if ( iSettings->EngineSettings().IsVolMuted() )
-                {
-                SetVolumeMuted( EFalse );
-                }
-            else if ( iPlayerUtility->SetVolume( TunerVolumeForUiVolume( aVolume ) ) == KErrNone )
+            if ( iPlayerUtility->SetVolume( TunerVolumeForUiVolume( aVolume ) ) == KErrNone )
                 {
                 iSettings->RadioSetter().SetVolume( aVolume );
                 NotifyRadioEvent( ERadioEventVolume, KErrNone );
+                SetVolumeMuted( EFalse );
                 }
             }
         }
@@ -1132,6 +1131,7 @@
 
         case ERadioCallDeactivated:
             {
+            iPlayerUtility->Play();
             SwitchPower( ETrue );
             }
             break;
--- a/radioengine/engine/stub/group/bld.inf	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/engine/stub/group/bld.inf	Mon Aug 23 14:17:50 2010 +0300
@@ -2,7 +2,7 @@
 * 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 the License "Eclipse Public License v1.0"
+* 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".
 *
@@ -17,11 +17,7 @@
 
 #include "../../../group/buildflags.hrh"
 
-#ifdef COMPILE_IN_WK48_ENV
-#   include <domain/osextensions/platform_paths.hrh>
-#else
-#   include <platform_paths.hrh>
-#endif // COMPILE_IN_WK48_ENV
+#include <platform_paths.hrh>
 
 PRJ_PLATFORMS
 WINSCW ARMV5
--- a/radioengine/engine/stub/group/radioengine_stub.mmp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/engine/stub/group/radioengine_stub.mmp	Mon Aug 23 14:17:50 2010 +0300
@@ -17,11 +17,7 @@
 
 #include "../../../group/buildflags.hrh"
 
-#ifdef COMPILE_IN_IVALO
-#   include <domain/osextensions/platform_paths.hrh>
-#else
-#   include <platform_paths.hrh>
-#endif // COMPILE_IN_IVALO
+#include <platform_paths.hrh>
 
 #include <data_caging_paths.hrh>
 
--- a/radioengine/settings/stub/group/bld.inf	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/settings/stub/group/bld.inf	Mon Aug 23 14:17:50 2010 +0300
@@ -2,7 +2,7 @@
 * 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 the License "Eclipse Public License v1.0"
+* 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".
 *
@@ -17,20 +17,13 @@
 
 #include "../../../group/buildflags.hrh"
 
-#ifdef COMPILE_IN_WK48_ENV
-#   include <domain/osextensions/platform_paths.hrh>
-#else
-#   include <platform_paths.hrh>
-#endif // COMPILE_IN_WK48_ENV
+#include <platform_paths.hrh>
 
 PRJ_PLATFORMS
 WINSCW ARMV5
 
 PRJ_EXPORTS
-//../../include/vrinternalpskeys.h internal/vrinternalpskeys.h
-//../../include/vrinternalcrkeys.h internal/vrinternalcrkeys.h
 
-//../../sis/visualradiostub.sis /epoc32/data/z/system/install/visualradio.sis
 ../../group/backup_registration.xml /epoc32/data/z/private/101ff976/backup_registration.xml
 
 ../../cenrep/2002FF52.txt  /epoc32/data/z/private/10202be9/2002FF52.txt
--- a/radioengine/settings/stub/group/radioenginesettings_stub.mmp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/settings/stub/group/radioenginesettings_stub.mmp	Mon Aug 23 14:17:50 2010 +0300
@@ -2,7 +2,7 @@
 * 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 the License "Eclipse Public License v1.0"
+* 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".
 *
@@ -18,16 +18,10 @@
 
 #include "../../../group/buildflags.hrh"
 
-#ifdef COMPILE_IN_WK48_ENV
-#   include <domain/osextensions/platform_paths.hrh>
-#else
-#   include <platform_paths.hrh>
-#endif // COMPILE_IN_WK48_ENV
+#include <platform_paths.hrh>
 
 #include <data_caging_paths.hrh>
 
-#include                <data_caging_paths.hrh>
-
 TARGET                  fmradioenginesettings_stub.dll
 TARGETTYPE              DLL
 UID                     0x1000008D 0x01000012
--- a/radioengine/settings/tsrc/group/RestoreOrigCenrep.cmd	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/settings/tsrc/group/RestoreOrigCenrep.cmd	Mon Aug 23 14:17:50 2010 +0300
@@ -1,3 +1,19 @@
+@REM
+@REM Copyright (c) 2002-2004 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:  Wins Command file for Settings Test Module
+@REM
+@REM
 @echo Original environment restoration by settingstestmodule...
 del \epoc32\winscw\c\TestFramework\SettingsTestModule.cfg
 del \epoc32\wins\c\TestFramework\TestFramework.ini
--- a/radioengine/settings/tsrc/group/TestEnvInit.cmd	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/settings/tsrc/group/TestEnvInit.cmd	Mon Aug 23 14:17:50 2010 +0300
@@ -1,3 +1,19 @@
+@REM
+@REM Copyright (c) 2002-2004 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:  Wins Command file for Settings Test Module
+@REM
+@REM
 @echo Initializing test environment for settingstestmodule...
 copy ..\conf\SettingsTestModule.cfg \epoc32\wins\c\TestFramework\SettingsTestModule.cfg
 copy ..\conf\SettingsTestModule.cfg \epoc32\winscw\c\TestFramework\SettingsTestModule.cfg
--- a/radioengine/settings/tsrc/inc/trace.h	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/settings/tsrc/inc/trace.h	Mon Aug 23 14:17:50 2010 +0300
@@ -2,9 +2,9 @@
 * 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 the License "Symbian Foundation License v1.0"
+* under the terms of "Eclipse Public License v1.0"
 * which accompanies this distribution, and is available
-* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
 *
 * Initial Contributors:
 * Nokia Corporation - initial contribution.
--- a/radioengine/settings/tsrc/inc/traceconfiguration.hrh	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/settings/tsrc/inc/traceconfiguration.hrh	Mon Aug 23 14:17:50 2010 +0300
@@ -1,13 +1,13 @@
 /*
-* 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 The License "Symbian Foundation License V1.0"
-* Which Accompanies This Distribution, And Is Available
-* At The Url "Http://Www.Symbianfoundation.Org/Legal/Sfl-V10.Html".
+* 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.
+* Nokia Corporation - initial contribution.
 *
 * Contributors:
 *
--- a/radioengine/settings/tsrc/rom/settingstestmodule.iby	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/settings/tsrc/rom/settingstestmodule.iby	Mon Aug 23 14:17:50 2010 +0300
@@ -1,3 +1,19 @@
+/*
+* 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:  IBY file for the SettingsTestModule
+*
+*/
 
 #ifndef __SETTINGSTESTMODULE_IBY__
 #define __SETTINGSTESTMODULE_IBY__
--- a/radioengine/utils/stub/group/bld.inf	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/utils/stub/group/bld.inf	Mon Aug 23 14:17:50 2010 +0300
@@ -2,7 +2,7 @@
 * 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 the License "Eclipse Public License v1.0"
+* 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".
 *
--- a/radioengine/utils/stub/group/radioengineutils_stub.mmp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/utils/stub/group/radioengineutils_stub.mmp	Mon Aug 23 14:17:50 2010 +0300
@@ -2,7 +2,7 @@
 * 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 the License "Eclipse Public License v1.0"
+* 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".
 *
@@ -50,9 +50,9 @@
 SOURCE                  cradioaudiorouter.cpp
 SOURCE                  cradiopropertyobserver.cpp
 SOURCE                  cradioremcontarget.cpp
+SOURCE                  cradiosystemeventdetector.cpp
 SOURCE                  cradiosystemeventcollector.cpp
 SOURCE                  cradiosystemeventcollectorimp.cpp
-SOURCE                  cradiosystemeventdetector.cpp
 SOURCE                  cradioenginelogger.cpp
 
 SOURCEPATH              ../src
@@ -63,7 +63,7 @@
 LIBRARY                 accclient.lib
 LIBRARY                 accpolicy.lib
 LIBRARY                 centralrepository.lib
-LIBRARY                 commonengine.lib
+LIBRARY                 CommonEngine.lib
 LIBRARY                 efsrv.lib
 LIBRARY                 euser.lib
 LIBRARY                 cone.lib
--- a/radioengine/utils/stub/src/cradioremcontargetimp_stub.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radioengine/utils/stub/src/cradioremcontargetimp_stub.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -137,7 +137,6 @@
     {
     LOG_FORMAT( "aOperationId = %d, aButtonAct = %d", aOperationId, aButtonAct );
     LOG_METHOD_AUTO;
-    //TODO: Refactor
     if ( iObserver )
         {
         switch ( aOperationId )
Binary file radiohswidget/locales/fmradiohswidget.qm has changed
--- a/radiohswidget/locales/fmradiohswidget.ts	Fri Aug 06 09:29:48 2010 +0300
+++ b/radiohswidget/locales/fmradiohswidget.ts	Mon Aug 23 14:17:50 2010 +0300
@@ -1,498 +1,498 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE TS>
-<TS version="3.0" sourcelanguage="en_GB">
+<TS version="3.0" language="en_GB" sourcelanguage="en_GB">
 <context>
-<message numerus="no" id="txt_rad_info_country_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_country_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Country Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_social_affairs_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_social_affairs_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Social Affairs</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_weather_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_weather_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Weather</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_personality_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_personality_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Personality</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_soft_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_soft_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Soft</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_rhythm_and_blues_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_rhythm_and_blues_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Rhythm and blues</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_information_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_information_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Information</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_phone_in_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_phone_in_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Phone In</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_current_affairs_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_current_affairs_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Current affairs</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_alarm_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_alarm_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Alarm</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_leisure_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_leisure_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Leisure</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_childrens_programmes_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_childrens_programmes_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Children’s programmes</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_light_classical_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_light_classical_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Light classical</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_alarm_test_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_alarm_test_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Alarm Test</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_religious_talk_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_religious_talk_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Religious talk</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_list_fm_radio">
+<message numerus="no" id="txt_fmradiohswidget_rad_list_fm_radio">
     <comment>Text in a home screen widget information area. Displayed when no station is tuned.</comment>        
     <source>FM Radio</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_list_fm_radio</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_list_fm_radio</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>list</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_news_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_news_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area. Custom layout parent string.</comment>        
     <source>News</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_easy_listening_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_easy_listening_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Easy Listening</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_top_40_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_top_40_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Top 40</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_public_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_public_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Public</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_varied_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_varied_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Varied</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_nostalgia_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_nostalgia_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Nostalgia</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_classical_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_classical_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Classical</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_national_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_national_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>National Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_science_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_science_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Science</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_jazz_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_jazz_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Jazz Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_religious_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_religious_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Religious music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_other_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_other_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Other Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_folk_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_folk_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Folk Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_religion_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_religion_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Religion</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_soft_rock_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_soft_rock_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Soft rock</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_adult_hits_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_adult_hits_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Adult hits</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_drama_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_drama_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Drama</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_rock_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_rock_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Rock Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_serious_classical_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_serious_classical_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Serious classical</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_college_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_college_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>College</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_connect_wired_headset">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_connect_wired_headset">
     <comment>Notification text which is displayed in home screen widget, when the headset antenna is not connected.</comment>        
     <source>Connect wired headset.</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_oldies_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_oldies_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Oldies Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_documentary_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_documentary_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Documentary</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_education_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_education_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Education</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_sport_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_sport_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Sport</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_pop_music_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_pop_music_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Pop Music</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_language_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_language_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Language</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_classic_rock_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_classic_rock_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Classic rock</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_list_l1_mhz">
+<message numerus="no" id="txt_fmradiohswidget_rad_list_l1_mhz">
     <comment>Text in a home screen widget information area. %L1 is the radio station&apos;s frequency.</comment>        
     <source>%L1 Mhz</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_list_l1_mhz</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_list_l1_mhz</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>list</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_soft_rhythm_and_blues_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_soft_rhythm_and_blues_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Soft rhythm and blues</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_culture_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_culture_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Culture</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_talk_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_talk_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Talk</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_finance_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_finance_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Finance</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_activate_radio_in_offline_mode_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_activate_radio_in_offline_mode_hs">
     <comment>Confirmation query which is displayed when the FM Radio is launched from the FM Radio home screen widget while the device is in offline mode. (Note that same text is also in FM radio textmap.)</comment>        
     <source>Activate Fm Radio in off-line mode?</source>
     <translation variants="no" type="unfinished"></translation>
@@ -502,15 +502,33 @@
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_rad_info_travel_hs">
+<message numerus="no" id="txt_fmradiohswidget_rad_info_travel_hs">
     <comment>Displayed in FM Radio home screen widget&apos;s information area.</comment>        
     <source>Travel</source>
     <translation variants="no" type="unfinished"></translation>
-    <extra-loc-layout_id>txt_rad_info_news_hs</extra-loc-layout_id>    
+    <extra-loc-layout_id>txt_fmradiohswidget_rad_info_news_hs</extra-loc-layout_id>    
     <extra-loc-viewid>rad_05</extra-loc-viewid>
     <extra-loc-positionid>info</extra-loc-positionid>
     <extra-loc-feature>rad</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_fmradiohswidget_list_quick_access_for_fm_radio_in_your">
+    <source>Quick access for FM radio in your homescreen.</source>
+    <translation variants="no">Quick access for FM radio in your homescreen.</translation>
+    <extra-loc-layout_id></extra-loc-layout_id>    
+    <extra-loc-viewid>radiohswidgetplugin</extra-loc-viewid>
+    <extra-loc-positionid>dblist_1_val</extra-loc-positionid>
+    <extra-loc-feature>lo</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_fmradiohswidget_list_fm_radio_homescreen_widget">
+    <source>FM Radio homescreen widget</source>
+    <translation variants="no">FM Radio homescreen widget</translation>
+    <extra-loc-layout_id></extra-loc-layout_id>    
+    <extra-loc-viewid>radiohswidgetplugin</extra-loc-viewid>
+    <extra-loc-positionid>dblist_1</extra-loc-positionid>
+    <extra-loc-feature>lo</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 </context>
 </TS>
--- a/radiohswidget/qmakepluginstubs/fmradiohswidget.qtplugin	Fri Aug 06 09:29:48 2010 +0300
+++ b/radiohswidget/qmakepluginstubs/fmradiohswidget.qtplugin	Mon Aug 23 14:17:50 2010 +0300
@@ -1,1 +1,1 @@
-This file is a Qt plugin stub file. The real Qt plugin is located in /sys/bin. Created:2010-06-22T09:54:17
+This file is a Qt plugin stub file. The real Qt plugin is located in /sys/bin. Created:2010-08-06T11:23:58
--- a/radiohswidget/radiohswidget.pro	Fri Aug 06 09:29:48 2010 +0300
+++ b/radiohswidget/radiohswidget.pro	Mon Aug 23 14:17:50 2010 +0300
@@ -36,7 +36,7 @@
 
 UID = 2002E6D6
 
-RESOURCES = resources.qrc
+RESOURCES += resources.qrc
 
 symbian: {
 
--- a/radiohswidget/src/radiohswidget.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radiohswidget/src/radiohswidget.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -704,8 +704,8 @@
                         POWER_BUTTON_ICON_ON,
                         CONTROL_BUTTON_ICON_COLOR_NORMAL);
                     // Connect the button's clicked signal.
-                    Radio::connect(mPowerButton, SIGNAL(clicked()), this,
-                        SLOT(toggleRadioPower()));
+                    Radio::connect(mPowerButton, SIGNAL(clicked()),
+                                   this,         SLOT(toggleRadioPower()));
                 }
 
                 // Find previous button.
@@ -718,8 +718,8 @@
                         PREVIOUS_BUTTON_SUFFIX, NULL,
                         CONTROL_BUTTON_ICON_COLOR_DISABLED);
                     // Connect the button's clicked signal.
-                    Radio::connect(mPreviousButton, SIGNAL(clicked()), this,
-                        SLOT(changeToPreviousStation()));
+                    Radio::connect(mPreviousButton, SIGNAL(clicked()),
+                                   this,            SLOT(changeToPreviousStation()));
                 }
 
                 // Find next button.
@@ -732,8 +732,8 @@
                         CONTROL_BUTTON_GRAPHICS_DISABLED, NEXT_BUTTON_SUFFIX,
                         NULL, CONTROL_BUTTON_ICON_COLOR_DISABLED);
                     // Connect the button's clicked signal.
-                    Radio::connect(mNextButton, SIGNAL(clicked()), this,
-                        SLOT(changeToNextStation()));
+                    Radio::connect(mNextButton, SIGNAL(clicked()),
+                                   this,        SLOT(changeToNextStation()));
                 }
             }
         }
--- a/radiohswidget/src/radiohswidgetplugin.cpp	Fri Aug 06 09:29:48 2010 +0300
+++ b/radiohswidget/src/radiohswidgetplugin.cpp	Mon Aug 23 14:17:50 2010 +0300
@@ -62,4 +62,4 @@
     }
 }
 
-Q_EXPORT_PLUGIN2(fmradiohswidget, RadioHsWidgetPlugin)
+Q_EXPORT_PLUGIN2(radiohswidgetplugin, RadioHsWidgetPlugin)